Modello di simulazione

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

La determinazione dei margini di regolarità nelle specifiche di orario
2. Introduzione alla probabilità
Gestione della memoria centrale
Classe III A A.s – 2011 Sistemi di Elaborazione e Trasmissione dell’Informazione 4 ore settimanali (2 laboratorio) Docenti Prof. Alberto Ferrari.
Procedure e funzioni A. Ferrari.
Proprietà degli stimatori
Il Sistema Operativo.
Laboratorio Processi Stocastici
Elaboratore e Sistemi Operativo
Algoritmi e Programmazione
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Tesi di Laurea Triennale in Ingegneria Elettronica Applicata
Realizzazione di algoritmi video su FPGA
1. Classificazione dei sistemi e dei modelli
1 2. Introduzione alla probabilità Definizioni preliminari: Prova: è un esperimento il cui esito è aleatorio Spazio degli eventi elementari : è linsieme.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
Scheduling della CPU Concetti fondamentali Criteri di scheduling
Scheduling della CPU Concetti di base Criteri di scheduling
4. Automi temporizzati Il comportamento dei sistemi ad eventi temporizzati non è definito semplicemente da una sequenza di eventi o di valori dello stato,
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
23/01/01Alberto Masoni – GR1 - Roma1 I MODELLI DI CENTRI REGIONALI POSIZIONE DI ALICE ITALIA CENTRO ITALIANO: CPU 450 KSI95, DISCO 400 TB (INSIEME TIER-1.
Inferenza statistica per un singolo campione
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
7. Teoria delle Code Una coda è costituita da 3 componenti fondamentali: i serventi i clienti uno spazio in cui i clienti attendono di essere serviti.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
Introduzione agli stream e alle classi
Modelli e Algoritmi per la Logistica Branch & Bound Prof. Carlo Mannino Prof. Antonio Sassano Dipartimento di Informatica e Sistemistica Università di.
Il linguaggio Fortran 90: 4. Array: Vettori e Matrici
L. Servoli - Corso Fisica dei Dispositivi Elettronici 1 Uno scheduler deve avere implementate almeno le seguenti funzionalità: 1) Inizializzatore: preparazione.
Il Linguaggio Macchina
Com’è fatto un elaboratore?
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
nome: sequenza di caratteri usata per denotare un oggetto
memoria gestita staticamente:
2) Trattamento dell'informazione. Lab.Calc. I AA 2002/03 - cap.22 Esempio Supponiamo di volere calcolare X, per uno o più possibili valori di Y, in base.
Sistemi Operativi SCHEDULING DELLA CPU.
“Ricordare” da un punto di vista psicologico
Espressioni condizionali
AN FI Un denominatoe comune Linguaggi di programmazione Un denominatore comune.
INPUT / OUTPUT. Connessione tra componenti CPU RAM DischiMonitor StampanteTastieraMouse BUS = Interfacce o Controller.
Perfect sampling di processi di coda UNIVERSITÀ DEGLI STUDI DI ROMA TOR VERGATA Corso di laurea in Ingegneria dei Modelli e dei Sistemi Studente: Paolo.
Analisi dell’output di una simulazione
L'ambiente informatico: Hardware e Software
Architettura degli elaboratori
Statistica economica (6 CFU) Corso di Laurea in Economia e Commercio a.a Docente: Lucia Buzzigoli Lezione 5 1.
Il Sistema Operativo (1)
CTRH MONZA DISAGI E DISTURBI SPECIFICI DELL’APPRENDIMENTO COSA PUO’ FARE LA SCUOLA? Percorso di formazione e aggiornamento per la SCUOLA DELL’INFANZIA.
Reti di TLC Esercitazione 3
STRUTTURA DI UN COMPUTER
Sistema Operativo (Software di base)
Rete di Hopfield applicata al problema del TSP Federica Bazzano
1 Gestione del Processore (Scheduling). 2 Scheduling dei processi È l’attività mediante la quale il sistema operativo effettua delle scelte tra i processi,
Gestione del Processore (Scheduling)
Arch. Elab. - S. Orlando 1 Progetto del processore e supporto del processore al SO (interruzioni – eccezioni) Salvatore Orlando.
Il nucleo del Sistema Operativo
1 Esercitazione Sistemi distribuiti: sistemi che risisedono su più calcolatori interconnessi da una rete di comunicazione Algoritmi distribuiti: programmi.
Gestione del processore (Scheduler)
Paola Disisto, Erika Griffini, Yris Noriega.  Insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce.
Calcolatori Elettronici Valutazione delle Prestazioni Francesco Lo Presti Rielaborate da Salvatore Tucci.
La valutazione dell’apprendimento degli studenti Clusone, 17 marzo 2015.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Informatica Generale Marzia Buscemi
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
I modelli di offerta per i sistemi di trasporto Corso di Progettazione dei Sistemi di Trasporto Prof. B. Montella a. a. 2015/16.
Transcript della presentazione:

Modello di simulazione La definizione di un modello di simulazione include processo stocastico da studiare parametri e caratteristiche operative eventi variabili di stato dipendenti dagli eventi variabili endogene e regole di generazione regole di trasformazione di stato regole di trasformazione delle variabili endogene Il programma di simulazione include la lista degli eventi E={(e1, t1), (e2, t2), (e3, t3), ...} ti≤ti+1, i≥1 un meccanismo di manipolazione degli eventi generatori di numeri pseudocasuali routine per l'analisi statistica dei risultati S. Balsamo - A.A. 2006-2007 Simulazione

Esempio Consideriamo un sistema di elaborazione uniprocessore rappresentato come un sistema di congestione aperto formato da due centri di servizio corrispondenti, rispettivamente, alla CPU e ad una unità periferica I programmi arrivano dall'esterno. Ogni programma (job) richiede - un 'servizio' alla CPU (elaborazione di un segmento di programma) - ed uno alla periferica (operazioni di I/O) e quindi lascia il sistema Scopo dello studio è la valutazione delle prestazioni del sistema, in termini di analisi statistica del numero di job presenti in ogni componente del sistema e di altri indici, quali il - tempo di elaborazione complessiva di un programma, - l'utilizzazione del sistema e delle sue componenti S. Balsamo - A.A. 2006-2007 Simulazione

Esempio Definiamo le variabili di stato, ad un istante t≥0 ni(t) numero di job nel centro di servizio i al tempo t ai(t) numero di job arrivati al centro i fino al tempo t ui(t) numero di job serviti dal centro i fino al tempo t si(t) stato del servente del centro i al tempo t (si(t)=0 per servente libero, si(t)=1 occupato) dove ni(t),ai(t),ui(t)≥0, i=1,2. - Processo stocastico da studiare P(t) = {n1(t), n2(t), s1(t), s2(t) | t>0} - Parametri e caratteristiche operative A distribuzione degli arrivi esterni al centro 1, di media E[ta], varianza Var[ta] Si distribuzione del tempo di servizio nel centro i, di media E[tsi], varianza Var[tsi], i=1,2 discipline di servizio ai centri p.es. : arrivi Poissoniani, A=esponenziale di media E[ta]=10seC, tempo di elab. alla CPU S1=esponenziale, E[ts1]=50 ms, tempo di elab. ai dischi S2=esponenziale, E[ts2]=100 ms, discipline di servizio FIFO S. Balsamo - A.A. 2006-2007 Simulazione

Esempio Eventi (scelta del livello di astrazione del modello) ei : fine servizio al centro i, i=1,2 e3 : arrivo di un job dall'esterno alla CPU e4 : fine simulazione Variabili di stato ti : tempo di occorrenza dell'evento ei , 1≤i≤4 clock : tempo simulato Il modello di simulazione include la lista degli eventi, lista astratta delle coppie (ei, ti) in ordine cronologico (ti≤ti+1). Considerando un tempo iniziale t=0, associamo ad ogni evento un numero d'ordine di occorrenza h=1,2,... p.es. h=1 evento di tipo e3 arrivo di un job, h=2 evento di tipo e3 arrivo di un altro job, h=3 evento di tipo e1 servizio alla CPU , etc. x(h) denota il valore della variabile x dopo l'occorrenza dell'h-simo evento S. Balsamo - A.A. 2006-2007 Simulazione

Esempio Variabili endogene sequenza di numeri generati secondo la distribuzione A <X1,X2,...> sequenza di numeri generati secondo la distribuzione Si <Y1i,Y2i,...> Regole di generazione: Xh = f (Xh-1, A) h>1 Yhi = f (Yh-1i, Si) h>1 , i=1,2 Regole di trasformazione di stato e delle variabili endogene 1) selezione dell'evento successivo 2) aggiornamento delle variabili di stato S. Balsamo - A.A. 2006-2007 Simulazione

Esempio 1) selezione dell'evento successivo avanzamento per eventi: e(h+1) = e | (e,t) ÎE, t=mini ti , t>clock(h) clock(h+1) ¬ t tempo futuro più vicino al tempo attuale criterio di gestione di eventi simultanei avanzamento per intervalli fissi: clock(h+1) ¬ clock(h) + D e(h+1) = e | (e,t) Î E, clock(h)<t≤clock(h+1) Se non esiste alcun evento e si itera il procedimento di avanzamento del tempo, altrimenti si trattano tutti gli eventi occorsi 2) aggiornamento delle variabili di stato in base al tipo di evento ei 1≤i≤4: S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - trasformazione di stato ei fine servizio al centro i = 1,2 ni(h+1) ¬ ni(h) - 1 se i=2 n1(h+1) = n1(h) se i=1 n2(h+1) ¬ n2(h)+1 se i=2 aj(h+1) = aj(h) j=1,2, se i=1 a1(h+1) = a1(h) ; a2(h+1) ¬ a2(h)+1 ui(h+1) ¬ ui(h) + 1 uj(h+1) = uj(h) j≠i si(h+1) = 1 se ni(h)>1, si(h+1) = si(h) altrimenti sj(h+1) = sj(h) j≠i se i=2; s2(h+1) =1 se i=1 clock(h+1) ¬ ti ti ¬ clock(h+1) +Yiui(h+1) S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - trasformazione di stato e3 : arrivo di un job dall'esterno alla CPU n1(h+1) ¬ n1(h) + 1 n2(h+1) = n2(h) a1(h+1) ¬ a1(h) + 1 a2(h+1) = a2(h) uj(h+1) = uj(h) j=1,2 s1(h+1) = 1 s2(h+1) = s2(h) clock(h+1) ¬ t3 t3 ¬ clock(h+1) +Xa1(h+1) e4 : fine simulazione specifica del calcolo delle statistiche per l'analisi dei risultati e la produzione delle variabili endogene. Le regole di trasformazione per ogni evento includono le istruzioni necessarie per tali analisi statistiche. Variabili endogene: lunghezza di coda al centro i, tempo di risposta, utilizzazione, throughput S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - struttura simulatore Struttura del simulatore per sequenziamento di eventi : lista deli eventi ad ogni evento è associato il tipo (ei, 1≤i≤4) e il tempo di occorenza una routine per ogni tipo di evento che viene attivata quando occorre un evento di quel tipo clock programma di controllo seleziona il prossimo evento nella lista aggiorna il clock trasferisce il controllo alla routine relativa all'evento selezionato La lista degli eventi è accessibile in lettura da tutte le routine, ma in scrittura solo dalla routine di controllo. Per fini statistici, una routine di "osservazione" viene attivata periodicamente (introdurre un evento "osservazione") S. Balsamo - A.A. 2006-2007 Simulazione

Schema INIZIO INIZIALIZZAZIONE DEL MODELLO Poni clock=0 Determina il prossimo evento Gestione arrivo evento FINE SIM. Poni clock=0 FINE Aggiorna il clock Passa il controllo alla procedura relativa all'evento selezionato servizio CPU INIZIALIZZAZIONE DEL MODELLO Routine di controllo DISK Routine osserv. S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - struttura simulatore Dichiarazione variabili e strutture dati <variabili di stato> <variabili esogene> <lista eventi> <code> <clock> Definizione delle procedure di evento Programma di controllo begin <inizializzazione> <prevedi il primo evento di arrivo> while clock<t4 do <seleziona prossimo evento e con tempo t > <clock t > <esegui la procedura relativa all'evento e> end; <esegui la procedura di fine simulazione> S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - struttura simulatore Dichiarazione variabili e strutture dati <variabili di stato> <variabili esogene> <lista eventi> <code> <clock> Definizione delle procedure di evento Programma di controllo begin <inizializzazione> <prevedi il primo evento di arrivo> while clock<t4 do <seleziona prossimo evento e con tempo t > <clock ¬ t > <esegui la procedura relativa all'evento e> end; <esegui la procedura di fine simulazione> S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - struttura simulatore a processi Struttura del simulatore orientato ad interazioni fra processi : Entità « processo Processo utente Processo servente CPU Processo servente Disk S. Balsamo - A.A. 2006-2007 Simulazione

Esempio - struttura simulatore a processi aspetta un arrivo di utente in coda determina il tempo del successivo utente determina il prossimo arrivo poni l'utente in coda alla CPU aspetta il completamento di servizio alla CPU in coda a Disk completamento di servizio Disk distruggi le tue strutture dati FINE utente coda vuota ? seleziona l'utente rimuovi l'utente dalla coda determina il tempo di servizio di servizio servente i Sì No S. Balsamo - A.A. 2006-2007 Simulazione