Valutazione delle prestazioni

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Valutazione delle prestazioni"

Transcript

1 Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Cristina Silvano pag 1

2 Valutazione delle prestazioni Misura/valutazione di un insieme di parametri quantitativi per: quantificare le caratteristiche di una macchina (velocità, ecc.) fare scelte intelligenti (es. miglioramento dell hardware vs installazione nuovo software) orientarsi nell acquisto del calcolatore più adatto per l applicazione data Cristina Silvano pag 2

3 Tempo di risposta (o tempo di esecuzione o latenza) definito come il tempo tra l'inizio e il completamento di un lavoro o compito elaborativo. Esempi: Durata dell esecuzione del mio programma Attesa per l accesso ad un sito web Throughput definito come ammontare complessivo di lavoro svolto in un dato tempo. Esempi: Numero di programmi eseguiti nell unità di tempo Numero di lavori (job, transazioni, interrogazioni a basi di dati) svolti nell unità di tempo. Numero di programmi eseguibili da una macchina contemporaneamente Cristina Silvano pag 3

4 Relazione tra le prestazioni di due macchine X ed Y La frase X è più veloce di Y è usata per indicare che il tempo di risposta o di esecuzione, per un dato lavoro, è più basso in X che in Y. X è n% più veloce di Y Tempo di esecuzione Y Tempo di esecuzione X = 1 + n 100 Tempo di esecuzione = reciproco della prestazione, quindi: 1 + n 100 = Tempo di esecuzione Y Tempo di esecuzione X = n = Prestazione Y 1 = prestazione X Prestazione X Prestazione Y Prestazione Y Prestazione X Prestazione Y Cristina Silvano pag 4

5 Miglioramento delle prestazioni Si parla di miglioramento della prestazione o di miglioramento del tempo di esecuzione per esprimere: incremento della prestazione diminuzione del tempo di esecuzione. Cristina Silvano pag 5

6 Esempio Se la macchina A esegue un programma in 10 secondi e la macchina B esegue lo stesso programma in 15 secondi, quale delle seguenti affermazione è vera? A è il 50% più veloce di B. A è il 33% più veloce di B. Risposta L'affermazione che la macchina A è n% più veloce della macchina B può essere espressa come Tempo di esecuzione B Tempo di esecuzione A = 1 + n 100 n = Tempo di esecuzione B Tempo di esecuzione A Tempo di esecuzione A * * 100 = 50 A è perciò il 50% più veloce di B. Cristina Silvano pag 6

7 Cicli di clock Durata del periodo di un oscillazione completa del segnale di sincronizzazione (clock) Gli impulsi del clock indicano quando cominciare le attività Sostituisce spesso i secondi come unità di misura del tempo di CPU (tempo speso dalla CPU per eseguire il programma assegnato) Secondi = Cicli di clock * Secondi Ciclo di clock Cristina Silvano pag 7

8 Cicli di clock T = Periodo o Durata del ciclo di clock = Tempo tra due impulsi consecutivi Secondi per ciclo f = Frequenza di clock = cicli di clock per secondo = 1 / T 1 Hz = 1 / sec Esempio: Un calcolatore con frequenza di clock pari a 500 MHz possiede un ciclo di durata: * 10 6 = 2 * 10 9 = 2 nanosecondi Cristina Silvano pag 8

9 Migliorare le prestazioni = Migliorare il tempo di esecuzione Secondi Programma = Cicli di clock Programma * Secondi Ciclo di clock = Tempo di esecuzione Per migliorare le prestazioni, a parità di tutto il resto, occorre: ridurre il numero di cicli richiesti per un programma ridurre la durata del ciclo di clock aumentare la frequenza di clock Cristina Silvano pag 9

10 Principi quantitativi di progettazione dei calcolatori Rendere veloce il caso più comune si deve favorire il caso più frequente a discapito del più raro il caso più frequente è spesso il più semplice e può essere reso più veloce del caso infrequente Legge di Amdahl il miglioramento di prestazione che può essere ottenuto usando alcune modalità di esecuzione più veloci è limitato dalla frazione di tempo nella quale tali modalità possono venire impiegate Cristina Silvano pag 10

11 Speedup o Accelerazione Speedup = Prestazione per l'intero lavoro usando quando possibile il miglioramento Prestazione per l'intero lavoro senza usare la miglioria oppure Speedup = Tempo di esecuzione per l'intero lavoro senza uso del miglioramento Tempo di esecuzione per l'intero lavoro usando quando possibile il miglioramento Lo speedup fornisce informazioni su quanto più velocemente un lavoro verrà eseguito usando la macchina con la miglioria rispetto alla macchina originale. Cristina Silvano pag 11

12 Esempio Si consideri un calcolatore (CALC1) che possiede un unità aritmetico logica intera (INT_ALU) e un unità aritmetico-logica in virgola mobile (FP_ALU). CALC1 esegue un applicazioni software che tipicamente prevede il 90% di istruzioni in aritmetica intera e il 10% in virgola mobile. Si consideri un nuovo calcolatore (CALC2) che possiede una INT_ALU ottimizzata che gli permette di raggiungere un miglioramento pari a 2x nell esecuzione delle istruzioni intere. Si valuti il miglioramento globale ottenuto utilizzando CALC2 per l applicazione software data. Infine si consideri un terzo calcolatore (CALC3) che possiede una FP_ALU ottimizzata che gli permette di raggiungere un miglioramento pari a 2x nell esecuzione delle istruzioni in virgola mobile e si valuti il miglioramento rispetto al calcolatore iniziale. Cristina Silvano pag 12

13 Risposta ISTRUZIONI INTERE ISTRUZIONI TOTALI Calcolatore T_ESEC Speedup_m T_ESEC Speedup CALC CALC CALC Cristina Silvano pag 13

14 La legge di Amdahl 1. Frazione migliorato ( 1), ovvero la frazione del tempo di calcolo della macchina originale che può essere modificato per avvantaggiarsi dei miglioramenti. Nell'esempio precedente la frazione è Speedup migliorato ( 1), ovvero il miglioramento ottenuto dal modo di esecuzione più veloce. Nel precedente esempio questo valore viene fornito nella colonna chiamata Speedup_m (pari a 2) Tempo di esecuzione nuovo = Tempo di esecuzione vecchio * (1 Frazione migliorato ) + Frazione migliorato Speedup globale = Tempo di esecuzione vecchio Tempo di esecuzione nuovo = 1 Speedup migliorato (1 Frazione migliorato ) + Frazione migliorato Speedup migliorato Cristina Silvano pag 14

15 Nell esempio precedente(ultima colonna) CALC2: Speedup globale = = 1 (1 0.9) = CALC3: Speedup globale = = 1 (1 0.1) = Cristina Silvano pag 15

16 Corollario Se un miglioramento è utilizzabile solo per una frazione del lavoro complessivo, allora non è possibile accelerare il lavoro più del reciproco di uno meno tale frazione: Speedup globale = 1 1 (1 Frazione migliorato ) + Frazione migliorato (1 Frazione migliorato ) Speedup migliorato Cristina Silvano pag 16

17 Esempio Si consideri un miglioramento che consente un funzionamento 10 volte più veloce rispetto alla macchina originaria, ma che sia utilizzabile solo per il 40% del tempo. Qual è il guadagno complessivo che si ottiene incorporando detto miglioramento? Risposta Frazione migliorato = 0.4 Speedup migliorato = 10 Speedup globale = = Cristina Silvano pag 17

18 Esempio Supponiamo di potere aumentare la velocità della CPU della nostra macchina di un fattore 5 (senza influenzare le prestazioni di I/O) con un costo 5 volte superiore. Assumiamo inoltre che la CPU sia utilizzata per il 50% del tempo ed il rimanente sia destinato ad attesa per operazioni di I/O. Se la CPU è un terzo del costo totale del computer è un buon investimento da un punto di vista costo/prestazioni, aumentare di un fattore cinque la velocità della CPU? Speedup globale = = = 1.67 Incremento di costo = = 2.33 L'incremento di costo è quindi più grande del miglioramento di prestazioni: la modifica non migliora il rapporto costo/prestazioni. Cristina Silvano pag 18

19 Località del riferimento I programmi riutilizzano dati e istruzioni che hanno usato di recente. Regola pratica: un programma spende circa il 90% del suo tempo di esecuzione per solo il 10% del suo codice. Basandosi sul passato recente del programma, è possibile predire con ragionevole accuratezza quali dati e istruzioni userà nel prossimo futuro. località temporale elementi ai quali si è fatto riferimento di recente saranno utilizzati ancora nel prossimo futuro. località spaziale elementi i cui indirizzi sono vicini, tendono ad essere referenziati in tempi molto ravvicinati. Cristina Silvano pag 19

20 Esempio Supponiamo che una cache sia 5 volte più veloce della memoria principale ed inoltre che la cache possa venire usata per il 90% del tempo. Qual è il guadagno in velocità dovuto all'uso della cache? Risposta Speedup = (1 % tempo di uso cache)+ 1 % tempo di uso cache = Speedup usando la cache 1 (1 0.9) = Otteniamo quindi una velocità 3.6 volte superiore usando la cache. Cristina Silvano pag 20

21 Il tempo è la misura delle prestazioni di un computer: il computer che svolge la stessa quantità di lavoro nel minore tempo è il più veloce. tempo di risposta rappresenta la latenza per il completamento di un lavoro includendo accessi a disco, accessi a memoria, attività di I/O,... tempo di CPU rappresenta il tempo speso dalla CPU per eseguire il programma dato: non include il tempo di attesa per I/O o per l'esecuzione di altri programmi. Comprende il tempo utente di CPU (tempo speso dalla CPU per eseguire le linee di codice che stanno nel nostro programma) + tempo di CPU di sistema (speso dal sistema operativo per eseguire i compiti richiesti dal programma) tempo di CPU = cicli di clock della CPU per un programma * tempo di un ciclo di clock tempo di CPU = cicli di clock della CPU per un programma frequenza di clock Cristina Silvano pag 21

22 Durata diversa delle diverse istruzioni In genere, istruzioni di tipo diverso richiedono quantità diverse di tempo. Esempi: la moltiplicazione richiede più tempo dell addizione l accesso alla memoria richiede più tempo dell accesso ai registri Fissata la durata del ciclo di clock, varia il numero di cicli di clock richiesti dalle diverse istruzioni Si può calcolare il numero medio di cicli di clock per istruzione di un dato programma. Cristina Silvano pag 22

23 Cicli di clock per istruzione (CPI) CPI = cicli di clock della CPU per un programma numero istruzioni T CPU = numero istruzioni * CPI * durata del ciclo di clock = numero istruzioni * CPI Frequenza di Clock T CPU = CI * CPI * T CLOCK = CI * CPI f CLOCK Introducendo nella prima formula le unità di misura, si può notare in che relazione stiano i vari componenti: Istruzioni cicli di clock Programma * Istruzione * Secondi ciclo di clock = Secondi Programma = tempo di CPU Cristina Silvano pag 23

24 Numero totale di cicli di clock n cicli di clock della CPU = (CPIi * Ii) i=1 Ii = numero di volte che l'istruzione di tipo i viene eseguita in un programma CPIi = numero di cicli di clock per l istruzione di tipo i. Questa formula può essere usata per esprimere il tempo di CPU come n T CPU = (CPIi * Ii) * T CLOCK i=1 Cristina Silvano pag 24

25 Nuova espressione di CPI CPI = n (CPIi * Ii) n i=1 numero istruzioni = i=1 (CPIi * Ii numero istruzioni ) Ogni singolo CPIi viene moltiplicato per la frazione delle occorrenze nel programma: n CPI = (CPIi * fi) i=1 Cristina Silvano pag 25

26 Esempio Si consideri un calcolatore in grado di eseguire le istruzioni riportate in tabella. Calcolare CPI e il tempo di CPU per eseguire un programma composto da 100 istruzioni supponendo di usare una frequenza di clock pari a 500 MHz. Frequenza cicli di clock ALU 43% 1 Load 21% 4 Store 12% 4 Branch 12% 2 Jump 12% 2 Risposta CPI = 0.43 * * * * * 2 = 2.23 T CPU = CI * CPI * T clock = 100 * 2.23 * 2 ns = 446 ns Cristina Silvano pag 26

27 MIPS = milioni di istruzioni per secondo MIPS = numero istruzioni tempo di esecuzione * 10 6 Essendo: tempo di esecuzione = numero istruzioni * CPI frequenza di clock MIPS = frequenza di clock CPI * 10 6 Poiché i MIPS sono la frequenza delle operazioni per unità temporale, le prestazioni per le macchine più veloci che hanno elevati valori di MIPS, possono venire specificate come l'inverso del tempo di esecuzione. La caratteristica positiva del MIPS è che risulta semplice da comprendere infatti le macchine più veloci hanno valori di MIPS più elevati. Cristina Silvano pag 27

28 MIPS: problemi dipende dall'insieme di istruzioni, quindi è difficile confrontare computer con diversi insiemi di istruzioni; varia a seconda del programma considerato; può variare in modo inversamente proporzionale alle prestazioni! Esempio: macchina con hardware opzionale per virgola mobile. Le istruzioni in virgola mobile richiedono più cicli di clock rispetto a quelle che lavorano con interi, quindi i programmi che usano l'hardware opzionale per la virgola mobile in luogo delle routine software per tali operazioni impiegano meno tempo ma hanno un MIPS più basso. L'implementazione software delle istruzioni in virgola mobile esegue semplici istruzioni, con il risultato di avere un elevato MIPS, ma ne esegue talmente tante da avere un più elevato tempo di esecuzione. Cristina Silvano pag 28

29 MIPS relativo MIPS relativo = tempo CPU di riferimento tempo CPU da valutare * MIPS CPU di riferimento Tempo CPU di riferimento = tempo di esecuzione di un programma sulla macchina di riferimento Tempo CPU da valutare = tempo di esecuzione dello stesso programma sulla macchina da valutare MIPS CPU di riferimento = MIPS accertato per la macchina di riferimento Negli anni ottanta la principale macchina di riferimento è stata il VAX 11/780, detta la macchina da 1 MIPS. Il vantaggio del MIPS relativo è piccolo: bisogna conoscere il tempo di esecuzione, il programma ed i suoi dati di ingresso per avere informazioni significative. Cristina Silvano pag 29

30 Benchmark = Programmi per valutare le prestazioni 1. Programmi reali Pur non sapendo il venditore quale frazione del tempo sarà dedicata a questi programmi, egli sa che alcuni utenti li useranno per risolvere problemi reali. Le prestazioni sono valutate meglio eseguendo un applicazione reale che rappresenti un tipico carico di lavoro. 2. Benchmark ridotti Tentativi di circoscrivere piccoli pezzi chiave dai programmi. 3. Benchmark sintetici Cercano di simulare la frequenza media degli operandi e delle operazioni di un vasto insieme di programmi. SPEC (System Performance Evaluation Cooperative) Cristina Silvano pag 30

31 Media aritmetica dei tempi di esecuzione Una media dei tempi di esecuzione che rispetta il tempo di esecuzione totale è la media aritmetica (arithmetic mean) 1 n n Tempoi i=1 tempo i è il tempo per il programma i-esimo degli n programmi che costituiscono il carico di lavoro. Cristina Silvano pag 31

32 Media aritmetica pesata dei tempi di esecuzione Se il carico di lavoro è composto da un insieme di programmi non eseguiti tutto lo stesso numero di volte, si assegna un peso wi ad ognuno di essi per indicare la frequenza relativa del programma entro il carico di lavoro. Si usa quindi una media aritmetica pesata (weighted arithmetic mean): n (Peso i * Tempo i ) i=1 dove Peso i rappresenta la frequenza del programma i-esimo entro il carico di lavoro e Tempo i è il tempo di esecuzione di tale programma. Cristina Silvano pag 32

33 Esercizio (1) (1) Un programma resta in esecuzione per 1 sec, su un processore dotato di ciclo di clock di 50 nsec, con Throughput 1 = 15 MIPS. Quanto vale il CPI, per il programma in questione? (2) Si supponga ora che, grazie a una qualche tecnica di ottimizzazione, il throughput del programma venga aumentato. Nella nuova situazione, il 40% delle istruzioni del programma viene eseguito con CPI = 1, mentre la frazione di istruzioni rimanente (ovvero il 60%) viene eseguito con CPI invariato. Quanto vale lo SpeedUp (accelerazione) passando dal caso (1) al caso (2)? Quanto vale il Throughput 2 in MIPS? Cristina Silvano pag 33

34 Esercizio (2) (1) Un programma resta in esecuzione per 1 sec, su un processore dotato di ciclo di clock di 100 nsec, con CPI 1 = 1,5. Quanto vale il Throughput (o frequenza di operazione), misurato in MIPS? (2) Si supponga ora che, grazie a una qualche tecnica di ottimizzazione, il 30% delle istruzioni del programma venga eseguito con CPI = 1 e che la frazione di istruzioni rimanente (ovvero il 70%) venga eseguito con CPI invariato. Quanto vale il Throughput misurato in MIPS? Quanto vale lo SpeedUp (accelerazione) passando dal caso (1) al caso (2)? Cristina Silvano pag 34

35 Esercizio (3) (1) Un programma resta in esecuzione per 1 sec, su un processore dotato di ciclo di clock di 50 nsec, con Throughput 1 = 10 MIPS. Quanto vale il CPI per il programma in questione? (2) Si supponga ora che, grazie all'aggiunta di superscalarità, il Throughput del programma venga aumentato. Nella nuova situazione, il 50% delle istruzioni del programma viene eseguito con grado superscalarità 3, mentre la frazione di istruzioni rimanente viene eseguita con grado di superscalarità 1. Quanto vale lo SpeedUp (accelerazione) passando dal caso (1) al caso (2)? Quanto vale il Throughput 2 in MIPS? Cristina Silvano pag 35

36 Prestazioni della gerarchia di memoria HIT MISS HIT RATE successo del tentativo di accesso al livello superiore della gerarchia fallimento del tentativo di accesso al livello superiore della gerarchia l'indirizzo deve essere cercato nel livello inferiore percentuale dei tentativi di accesso al livello superiore della gerarchia che hanno avuto successo # successi HIT RATE = # accessi a memoria MISS RATE percentuale dei tentativi di accesso al livello superiore della gerarchia che sono falliti # fallimenti MISS RATE = # accessi a memoria HIT RATE + MISS RATE = 1 Cristina Silvano pag 36

37 Prestazioni della gerarchia di memoria (cont.) Obiettivo principale della gerarchia di memoria = Incrementare le prestazioni Importante la velocità di accesso sia in caso di hit sia in caso di miss. HIT TIME tempo di accesso al livello superiore (che comprende anche il tempo necessario per determinare se l'accesso ha successo oppure fallisce) MISS PENALTY o PENALIZZAZIONE DI FALLIMENTO composto da: TEMPO DI ACCESSO per accedere alla prima parola del blocco dopo che è stato rilevato il fallimento TEMPO DI TRASFERIMENTO per trasferire le altre parole del blocco MISS TIME = HIT TIME + MISS PENALTY Cristina Silvano pag 37

38 Prestazioni della gerarchia di memoria (cont.) Il TEMPO DI ACCESSO è legato al tempo di latenza del livello inferiore, mentre il TEMPO DI TRASFERIMENTO è legato alla larghezza di banda del canale tra i due livelli di memoria. Il TEMPO MEDIO DI ACCESSO ALLA MEMORIA risulta: T m = HIT RATE HIT TIME + MISS RATE MISS TIME dove: MISS TIME = HIT TIME + MISS PENALTY HIT RATE + MISS RATE = 1 Tm = HIT TIME + MISS RATE MISS PENALTY Cristina Silvano pag 38

39 Impatto delle prestazioni della cache sul tempo di CPU Il tempo di CPU è composto da cicli che la CPU spende eseguendo il programma e da cicli che la CPU trascorre in attesa di risposta dal sottosistema di memoria. T CPU = (cicli di clock della CPU in esecuzione + cicli di clock stallo di memoria) T CLOCK dove T CLOCK = durata del ciclo di clock Hp) Tutti gli stalli di memoria sono dovuti a fallimenti di accesso alla cache; Hp) I cicli di clock utilizzati per un accesso alla cache riuscito (HIT) sono inclusi nei cicli di clock della CPU in esecuzione; Cristina Silvano pag 39

40 Impatto delle prestazioni della cache sul tempo di CPU cicli di clock stallo di memoria = #accessi a memoria MISS RATE MISS PENALTY Fattorizzando il CI si ricava: tempo di CPU = CI (CPI ESECUZ + # accessi a memoria ISTRUZIONE MISS RATE MISS PENALTY) T CLOCK CPI CON CACHE = CPI ESECUZ + # accessi a memoria ISTRUZIONE MISS RATE MISS PENALTY CASO IDEALE (100% HIT): CASO SENZA CACHE (100% MISS): CPI CACHE IDEALE = CPI ESECUZ CPI SENZA CACHE = CPI ESECUZ + # accessi a memoria ISTRUZIONE MISS PENALTY Cristina Silvano pag 40

41 Esercizio: Si consideri il VAX-11/780. La penalizzazione di fallimento è di 6 cicli di clock, mentre tutte le istruzioni impiegano 8.5 cicli di clock se si ignorano gli stalli di memoria. Ipotizzando un miss rate dell'11% e che vi siano in media 3 riferimenti alla memoria per ogni istruzione Qual è l'impatto sulle prestazioni quando viene inserita la cache reale rispetto ad una cache ideale? Qual è l'impatto sulle prestazioni tra il caso di cache reale e senza inserimento della cache? Risposta MISS PENALTY = 6 CPI ESECUZ = 8.5 MISS RATE = 0.11 # accessi a memoria ISTRUZIONE = 3 CPI CON CACHE = # accessi a memoria CPI ESECUZ + ISTRUZIONE = = MISS RATE MISS PENALTY = Cristina Silvano pag 41

42 CASO IDEALE (100% HIT): CPI CACHE IDEALE = CPI ESECUZ = 8.5 CASO SENZA CACHE (100% MISS): CPI SENZA CACHE = CPI ESECUZ + # accessi a memoria ISTRUZIONE MISS PENALTY = * 6 = 26.5 CPI CON CACHE CPI CACHE IDEALE = = 1.23 CPI CON CACHE CPI SENZA CACHE = = 0.4 In pratica, l impatto della gerarchia di memoria rispetto alla cache ideale comporta un incremento del tempo di CPU pari al 23% essendo il tempo di CPU proporzionale al CPI (a parità di CI e T CLOCK ): Tempo di CPU = CI CPI T CLOCK Cristina Silvano pag 42

Valutazione delle prestazioni

Valutazione delle prestazioni Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: silvano@dsi.unimi.it Cristina Silvano pag 1 Valutazione delle prestazioni

Dettagli

Valutazione delle prestazioni

Valutazione delle prestazioni Valutazione delle prestazioni Architetture dei Calcolatori (lettere A-I) Valutazione delle prestazioni Misura/valutazione di un insieme di parametri quantitativi per Quantificare le caratteristiche di

Dettagli

Valutazione delle prestazioni. Valutazione delle prestazioni. Tempo di risposta e throughput. Prestazioni e tempo di esecuzione

Valutazione delle prestazioni. Valutazione delle prestazioni. Tempo di risposta e throughput. Prestazioni e tempo di esecuzione Valutazione delle prestazioni Valutazione delle prestazioni Architetture dei Calcolatori (lettere A-I) Misura/valutazione di un insieme di parametri quantitativi per Quantificare le caratteristiche di

Dettagli

Prestazioni 1. Prestazioni 2. Prestazioni 3

Prestazioni 1. Prestazioni 2. Prestazioni 3 Valutazione delle Prestazioni Architetture dei Calcolatori Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare le prestazioni

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Valutazione delle Prestazioni Francesco Lo Presti Rielaborate da Salvatore Tucci Valutazione delle Prestazioni q Misura/valutazione di un insieme di parametri quantitativi per caratterizzare

Dettagli

Valutazione delle prestazioni

Valutazione delle prestazioni Valutazione delle prestazioni Trend tecnologico: Capacità della Memoria Capacità chip DRAM DRAM Year Size 1980 64 Kb 1983 256 Kb 1986 1 Mb 1989 4 Mb 1992 16 Mb 1996 64 Mb 1999 256 Mb 2002 1 Gb Incremento

Dettagli

Valutazione delle prestazioni di calcolo

Valutazione delle prestazioni di calcolo Architettura degli Elaboratori e delle Reti Lezione 32 Valutazione delle prestazioni di calcolo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Valutazione delle Prestazioni

Valutazione delle Prestazioni Valutazione delle Prestazioni Misure per le Prestazioni T durata del ciclo di clock [secondi] F numero cicli di clock al secondo [hertz] F 1 / T T 1 / F Exe_Time X tempo di esecuzione (CPU) di un programma

Dettagli

Gli attori principali di un architettura

Gli attori principali di un architettura Memoria Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it Gli attori principali

Dettagli

La Valutazione delle Prestazioni

La Valutazione delle Prestazioni La Valutazione delle Prestazioni Maurizio Palesi Maurizio Palesi rend ecnologico: Microprocessori 00000000 0000000 000000 IBM PPC60 R0000 Pentium R4400 i80486 Alpha 2264: 5 milion Pentium Pro: 5.5 million

Dettagli

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale di Cassino e del Lazio Meridionale Corso di Misura delle prestazioni Anno Accademico Francesco Tortorella Misura delle prestazioni E fondamentale definire una metrica corretta per misurare le prestazioni

Dettagli

Blocchi di più parole

Blocchi di più parole Blocchi di più parole Per trarre vantaggio dalla località spaziale non conviene avere blocchi di una sola parola ma blocchi di più parole che occupano nella memoria principale posizioni vicine. Esempio:

Dettagli

La Memoria Cache. Informatica B. Daniele Loiacono

La Memoria Cache. Informatica B. Daniele Loiacono La Memoria Cache Informatica B Il problema della memoria q Obiettivo: fornire agli utenti una memoria grande e veloce fornire al processore i dati alla velocità con cui è in grado di elaborarli q Problema:

Dettagli

Esercizi sulle prestazioni delle memorie cache

Esercizi sulle prestazioni delle memorie cache Esercizi sulle prestazioni delle memorie cache Prof. Alberto Borghese Dott. Massimo Marchi Dipartimento discienzedell Informazione dell alberto.borghese@unimi.it Università degli Studi di Milano A.A. 2012

Dettagli

Esercizi vari. CPI e influenza cache

Esercizi vari. CPI e influenza cache Esercizi vari Salvatore Orlando Arch. Elab. - S. Orlando 1 CPI e influenza cache Siano dati un processore, una cache e un mix di programmi le istruzioni di lw/sw eseguite sono il 20% di IC il CPI delle

Dettagli

PRESTAZIONI. senza e con memoria cache

PRESTAZIONI. senza e con memoria cache PRESTAZIONI del processore MIPS pipeline senza e con memoria cache Prestazioni del processore GENERICO (P&H pp 29 31) Definizioni dei parametri di prestazione fondamentali del processore: sia P una prova,

Dettagli

Caching Andrea Gasparetto

Caching Andrea Gasparetto Tutorato di architettura degli elaboratori Caching Andrea Gasparetto andrea.gasparetto@unive.it Esercizio 1 Dati una cache con 4096 blocchi, e con dimensione dell INDEX di 10 b, determinare il grado di

Dettagli

Misura delle prestazioni

Misura delle prestazioni Misura delle prestazioni Prestazioni: differenti prospettive Prospettiva dell acquirente dato un insieme di macchine, quale ha le migliori prestazioni? il minor costo? Il miglior rapporto prestazioni/costo?

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Cache associativa. Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore:

Cache associativa. Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore: Cache associativa Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore: 1. Indirizzamento diretto (già visto). Ogni blocco della memoria inferiore può

Dettagli

Introduzione alle gerarchie di memoria

Introduzione alle gerarchie di memoria Introduzione alle gerarchie di memoria 1 Un ripasso Circuito sequenziale Segnale di clock Circuito sincrono Temporizzazione sensibile ai fronti Latch tipo S-R Latch tipo D Flip-flop tipo D Register file

Dettagli

Controllo a ciclo singolo

Controllo a ciclo singolo Controllo a ciclo singolo Il controllo della CPU a singolo ciclo è combinatorio Il datapath è invece un circuito sequenziale i suoi output dipendono anche dal valore dei registri es. Zero, oppure l indirizzo

Dettagli

La struttura gerarchica delle memorie

La struttura gerarchica delle memorie Architettura degli Elaboratori e delle Reti Lezione 27 La struttura gerarchica delle memorie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Soluzione Esercizio 1

Soluzione Esercizio 1 Esercizio 1 Si consideri una notazione binaria in virgola mobile a 16 bit, detta ALFA, di cui (nell ordine da sinistra a destra) si usa 1 bit per il segno (0=positivo), 6 bit per l esponente, che è rappresentato

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 Memoria cache: Esercizi Massimiliano Giacomin 1 Esercizio: miss della cache e collocazione dei blocchi nella cache Sia data la seguente sequenza di indirizzi a

Dettagli

Architettura hardware

Architettura hardware Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Esempio: aggiungere j

Esempio: aggiungere j Esempio: add Esempio: load Esempio: beq Esempio: aggiungere j Eccezioni e interruzioni Il progetto del controllo del processore si complica a causa della necessità di considerare, durante l esecuzione

Dettagli

Criteri di caratterizzazione di una memoria

Criteri di caratterizzazione di una memoria La memoria Supporto alla CPU: deve fornire alla CPU dati e istruzioni il più rapidamente possibile; Archivio: deve consentire di archiviare dati e programmi garantendone la conservazione e la reperibilità

Dettagli

Prestazioni & Co: CPU, Memoria, I/O

Prestazioni & Co: CPU, Memoria, I/O Prestazioni & Co: CPU, Memoria, I/O CPU - progettazione - prestazioni ideali Panoramica Memoria - gerarchie di memoria: cache, memoria principale, etc. - organizzazione, dimensionamento, indirizzamento,

Dettagli

Dischi: Esercizio 1. Ora t.elab = n.cicli impiegati / Frequenza = / ( ) = 20ms

Dischi: Esercizio 1. Ora t.elab = n.cicli impiegati / Frequenza = / ( ) = 20ms Esercitazioni I/O Dischi: Esercizio 1 Si consideri un programma che legge blocchi di 2 KB da disco, esegue un elaborazione su questi, e quindi li riscrive su disco. Le tre fasi non hanno sovrapposizioni.

Dettagli

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione

Dettagli

La struttura gerarchica delle memorie

La struttura gerarchica delle memorie Architettura degli Elaboratori e delle Reti Lezione 27 La struttura gerarchica delle memorie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Influenza dell' I/O sulle prestazioni (globali) di un sistema

Influenza dell' I/O sulle prestazioni (globali) di un sistema Influenza dell' I/O sulle prestazioni (globali) di un sistema Tempo totale per l'esecuzione di un programma = tempo di CPU + tempo di I/O Supponiamo di avere un programma che viene eseguito in 100 secondi

Dettagli

Esercitazione su Instruction Level Parallelism

Esercitazione su Instruction Level Parallelism Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a

Dettagli

Introduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1

Introduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1 Introduzione alle memorie cache Corso ACSO prof. Cristina SILVANO Politecnico di Milano Cristina Silvano, 06/01/2013 versione 2 1 Obiettivo Sommario Livelli della gerarchia di memoria Memoria cache: concetti

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 2-La CPU 1 Prerequisiti Concetto intuitivo di programma Microprocessore Linguaggio binario Operazioni aritmetiche e logiche elementari 2 1 Introduzione In questa Unità vediamo

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli

L'architettura del processore MIPS

L'architettura del processore MIPS L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento

Dettagli

Von Neumann Bottleneck

Von Neumann Bottleneck Von Neumann Bottleneck Gerarchia di memoria Struttura della Gerarchia Al livello 1 poniamo la memoria più veloce (piccola e costosa) Al livello n poniamo la memoria più lenta (grande ed economica) Scopo

Dettagli

Modulo 1: Le I.C.T. UD 1.4i: Prestazioni di un Computer

Modulo 1: Le I.C.T. UD 1.4i: Prestazioni di un Computer Modulo 1: Le I.C.T. : Prestazioni di un Computer Prof. Alberto Postiglione Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli Studi di Salerno Velocità

Dettagli

Modulo 1: Le I.C.T. UD 1.4c: Il Processore

Modulo 1: Le I.C.T. UD 1.4c: Il Processore Modulo 1: Le I.C.T. : Il Processore Prof. Alberto Postiglione Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli Studi di Salerno IL MICROPROCESSORE

Dettagli

UD 1.4c: Il Processore IL MICROPROCESSORE

UD 1.4c: Il Processore IL MICROPROCESSORE Modulo 1: Le I.C.T. : Il Processore IL MICROPROCESSORE Prof. Alberto Postiglione Curtin, 3.8-3.9 Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli

Dettagli

Architettura degli elaboratori - 2 -

Architettura degli elaboratori - 2 - Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori e gerarchie di memoria Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

8 bit per la parola nel blocco 10 bit per l insieme (gruppo) nella cache 12 bit di etichetta. Esercizio 3 Memoria Cache

8 bit per la parola nel blocco 10 bit per l insieme (gruppo) nella cache 12 bit di etichetta. Esercizio 3 Memoria Cache Esercizio 3 Memoria Cache Prima parte - memoria di 1 Giga parole da 16 bit (indirizzata a livello di parola) - cache di 1 Mega parole da 16 bit (indirizzata a livello di parola) - ogni della cache contiene

Dettagli

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2 La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri

Dettagli

Capitolo 5 Struttura di base del processore

Capitolo 5 Struttura di base del processore Capitolo 5 Struttura di base del processore 5.1. Il periodo di clock deve ospitare tutti i ritardi di propagazione più il tempo di impostazione per i registri. a. Minimo periodo di clock = 70 + 600 + 50

Dettagli

La gerarchia delle memorie. Sommario

La gerarchia delle memorie. Sommario La gerarchia delle memorie Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento Patterson: Sezioni 5.1, 5.2 1/37 http:\\homes.dsi.unimi.it\

Dettagli

La gerarchia di memorie (2)

La gerarchia di memorie (2) La gerarchia di memorie (2) Architetture Avanzate dei Calcolatori Valeria Cardellini Migliorare le prestazioni delle cache Consideriamo la formula del tempo medio di accesso in memoria (AMAT) AMAT = hit

Dettagli

Il Processore. Informatica di Base -- R.Gaeta 27

Il Processore. Informatica di Base -- R.Gaeta 27 Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

Macchina di Riferimento: argomenti

Macchina di Riferimento: argomenti Macchina di Riferimento: argomenti L'architettura di una macchina MIPS Organizzazione della memoria I registri della CPU L'esecuzione dei programmi Il ciclo fetch-execute Il simulatore SPIM 1 Architettura

Dettagli

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si

Dettagli

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile) Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) La macchina di Von Neumann Le periferiche Software (tutto ciò che non e tangibile) Il sistema operativo I programmi applicativi

Dettagli

Esercitazione su Gerarchie di Memoria

Esercitazione su Gerarchie di Memoria Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,

Dettagli

La gerarchia di Memoria

La gerarchia di Memoria La gerarchia di Memoria Calcolatori Elettronici 1 Gap delle prestazioni DRAM - CPU 1000 CPU 100 10 DRAM 1 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998

Dettagli

static dynamic random access memory

static dynamic random access memory LA MEMORIA SRAM e D R A M static dynamic random access memory SRAM: unità che memorizza un gran numero di parole in un insieme di flip-flop, opportunamente connessi, mediante un sistema di indirizzamento

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC

Dettagli

Misura delle prestazioni

Misura delle prestazioni Misura delle prestazioni Prestazioni Prestazioni(X) 1 / Tempo di esecuzione(x) " X è n volte più veloce di Y" significa: n Prestazioni(X) / Prestazioni(Y) Tempo di esecuzione(y) / Tempo di esecuzione(x)

Dettagli

ESERCIZIO 1. Sia dato il seguente ciclo di un programma in linguaggio ad alto livello:

ESERCIZIO 1. Sia dato il seguente ciclo di un programma in linguaggio ad alto livello: ESERIZIO 1 Sia dato il seguente ciclo di un programma in linguaggio ad alto livello: do { BASE[i] = BASEA[i] + BASEB[i] + IN1 + IN2; i++; } while (i!= N) Il programma sia stato compilato nel seguente codice

Dettagli

Cicli di clock e istruzioni

Cicli di clock e istruzioni Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni

Dettagli

I formati delle istruzioni

I formati delle istruzioni Appunti di Calcolatori Elettronici Le istruzioni I formati delle istruzioni... 1 Criteri generali di progettazione dei formati delle istruzioni... 2 Cenni all indirizzamento... 4 Indirizzamento immediato...

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori a.a. 2013/14 appello straordinario, 13 aprile 2015 Riportare nome, cognome, numero di matricola e corso A/B Domanda 1 Si consideri la seguente gerarchia di memoria memoria

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura

Dettagli

La memoria cache. Lab di Calcolatori

La memoria cache. Lab di Calcolatori La memoria cache 1 Gap delle prestazioni DRAM - CPU 1000 CPU- DRAM Gap CPU Proc 60%/yr. (2X/1.5yr) 100 10 ProcessorMemory Performance Gap: (grows 50% / year) D R A M DRAM9%/yr.(2X/10 yrs) 1 1980 1981 1982

Dettagli

Esercizi sulla memoria cache - Informatica 2 - L. Breveglieri 1

Esercizi sulla memoria cache - Informatica 2 - L. Breveglieri 1 Esercizio 1 Sia data una memoria cache di tipo a indirizzamento diretto (direct-mapped), con blocchi di dimensioni pari a una sola parola per blocco, e contenente. La parola è lunga 16 bit, e la memoria

Dettagli

Architettura degli elaboratori - 2 -

Architettura degli elaboratori - 2 - Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori e gerarchie di memoria Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it

Dettagli

Esame di INFORMATICA Lezione 4

Esame di INFORMATICA Lezione 4 Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite

Dettagli

ESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET:

ESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET: Università degli Studi di Milano Corso Architettura degli elaboratori e delle reti Prof. Cristina Silvano A.A. 2004/2005 Esame scritto del 15 luglio 2005 Cognome: Matricola: Nome: Istruzioni Scrivere solo

Dettagli

Appunti di Calcolatori Elettronici Capitolo 1 Principi di progettazione dei calcolatori

Appunti di Calcolatori Elettronici Capitolo 1 Principi di progettazione dei calcolatori ppunti di Calcolatori Elettronici Capitolo Principi di progettazione dei calcolatori Introduzione... Definizione di prestazione... 2 Misure probabilistiche... 3 Confronto di prestazioni... 3 Esempio numerico...

Dettagli

Dischi e CPU. Alcuni esercizi sulle prestazioni (seconda parte)

Dischi e CPU. Alcuni esercizi sulle prestazioni (seconda parte) Dischi e CPU Alcuni esercizi sulle prestazioni (seconda parte) Calcolo della «domanda» di servizio alla CPU D C,CPU = U C / X C tempo medio di CPU consumato per transazione U C = utilizzo della classe

Dettagli

Lezione4: MIPS e Istruzioni (1 Parte)

Lezione4: MIPS e Istruzioni (1 Parte) Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi mnappi@unisa.it http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA

Dettagli

Il modello di von Neumann

Il modello di von Neumann 1 Organizzazione di (quasi) tutti gli elaboratori moderni: personal computer, workstation, portatili, smartphone,... CPU memoria Control Unit I/O ALU 2 Il cuore è la CPU (Control Processing Unit): esegue

Dettagli

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino Corso di Alfabetizzazione Informatica / La CPU CPU (Central Processing Unit) Funzione: eseguire i programmi immagazzinati in memoria principale prelevando le istruzioni (e i relativi), interpretandole

Dettagli

Miglioramento delle prestazioni

Miglioramento delle prestazioni Miglioramento delle prestazioni Migliorare sia larghezza di banda sia latenza: uso di cache multiple Introdurre una cache separata per istruzioni e dati (split cache) Beneficio: Le operazioni di lettura/scrittura

Dettagli

Valutazione delle Prestazioni

Valutazione delle Prestazioni Valutazione delle Prestazioni Sia data una macchina X, definiamo: 1 PrestazioneX = --------------------------- Tempo di esecuzione X La prestazione aumenta con il diminuire del tempo di esecuzione (e diminuisce

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC

Dettagli

Colloquio di informatica (5 crediti)

Colloquio di informatica (5 crediti) Università degli studi della Tuscia Dipartimento di Scienze Ecologiche e Biologiche Corso di laurea in Scienze Ambientali A.A. 2013-2014 - II semestre Colloquio di informatica (5 crediti) Prof. Pier Giorgio

Dettagli

Esercitazione su Gerarchie di Memoria

Esercitazione su Gerarchie di Memoria Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Gerarchia di Anno Accademico 2012/2013 Alessandra Scotto di Freca Si ringrazia il prof.francesco Tortorella per il materiale

Dettagli

Gerarchia di Memorie

Gerarchia di Memorie Gerarchia di Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Gerarchia di Memorie Obiettivo: creare l illusione di

Dettagli

Introduzione all'architettura dei Calcolatori

Introduzione all'architettura dei Calcolatori Introduzione all'architettura dei Calcolatori Architettura dei calcolatori Che cos è un calcolatore? Come funziona un calcolatore? un calcolatore è un sistema un sistema è un oggetto costituito da molte

Dettagli

Fallimenti nella TLB

Fallimenti nella TLB Fallimenti nella TLB Un fallimento nella TLB può essere dovuto a due motivi: 1. la pagina fisica non è presente in memoria (page fault); 2. la traduzione non è nella TLB, anche se la pagina fisica è presente

Dettagli

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:

Dettagli

LEZIONE 2 Il processore e la memoria centrale

LEZIONE 2 Il processore e la memoria centrale Informatica per Igienisti Dentali LEZIONE 2 Il processore e la memoria centrale 1 Il linguaggio macchina Il processore è in grado di riconoscere (e quindi di eseguire) solo programmi scritti in un proprio

Dettagli

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 24 Gennaio 2011 COGNOME E NOME RIGA COLONNA MATRICOLA

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 24 Gennaio 2011 COGNOME E NOME RIGA COLONNA MATRICOLA Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 24 Gennaio 2011 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene 3

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Università degli Studi di Padova Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica docente: Alessandro Sperduti Informazioni Generali Lucidi ed esercizi disponibili

Dettagli

Esercitazione su Instruction Level Parallelism Salvatore Orlando

Esercitazione su Instruction Level Parallelism Salvatore Orlando Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a

Dettagli

Gerarchia di memoria

Gerarchia di memoria Gerarchia di memoria 1 Gerarchia di memoria: Terminologia Hit: il dato appare in qualche blocco al livello superiore (Es.: Blocco X) Hit Rate: la frazione degli accessi di memoria trovati nel livello superiore

Dettagli

Capitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a)

Capitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a) Esercitazione di Calcolatori Elettronici Ing. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Capitolo 7: Input/Output Capitolo 7 Input/Output Esercizi sul BUS: 1. Bus sincrono 2. Arbitraggio

Dettagli

Fondamenti di Informatica Architettura del Calcolatore Alessandra Volpato

Fondamenti di Informatica Architettura del Calcolatore Alessandra Volpato Fondamenti di Informatica Architettura del Calcolatore Alessandra Volpato E-mail: ale.volpato@ieee.org Sistema Informativo: Insieme di componenti in relazione tra loro che raccoglie, estrae, elabora, memorizza

Dettagli

Problemi del ciclo singolo

Problemi del ciclo singolo Problemi del ciclo singolo Ciclo di clock lungo Istruzioni potenzialmente veloci sono rallentate Impiegano sempre lo stesso tempo dell istruzione più lenta Unità funzionale e collegamenti della parte operativa

Dettagli

Implementazione semplificata

Implementazione semplificata Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento

Dettagli

Architettura dei Calcolatori. Macchina di von Neumann /2. Macchina di von Neumann /1. Architettura dei Calcolatori

Architettura dei Calcolatori. Macchina di von Neumann /2. Macchina di von Neumann /1. Architettura dei Calcolatori rchitettura dei Calcolatori Giuseppe Pozzi Impianti di Elaborazione Facoltà di Ingegneria dell'informazione Politecnico di Milano giuseppe.pozzi@polimi.it - versione del 20 settembre 2002 - rchitettura

Dettagli

Sistemi di numerazione

Sistemi di numerazione SOMMARIO Sistemi di numerazione...2 Sistema decimale (o a base 10)...2 Sistema binario...2 Operazioni sui numeri binari...3 Espressioni logiche...4 Definizione...4 Prodotto Logico : AND...4 Somma Logica

Dettagli

Lezione 22 La Memoria Interna (1)

Lezione 22 La Memoria Interna (1) Lezione 22 La Memoria Interna (1) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione Dove siamo e dove stiamo andando La gerarchia

Dettagli

Struttura hw del computer

Struttura hw del computer Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l esecuzione dei programmi 1 Struttura hw del computer Il nucleo di un computer è costituito da 3 principali componenti:

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 Instruction Set Architecture: nozioni generali Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello del linguaggio specializzato Traduzione (compilatore) o interpretazione

Dettagli

Il modello di Von Neumann

Il modello di Von Neumann Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro

Dettagli

1 Esercizi in pseudocodice

1 Esercizi in pseudocodice Questa dispensa propone esercizi sulla scrittura di algoritmi in un linguaggio semiformale, utile all acquisizione delle abilità essenziali per implementare algoritmi in qualsiasi linguaggio di programmazione.

Dettagli