PRESTAZIONI. senza e con memoria cache
|
|
|
- Rosina Maggi
- 8 anni fa
- Visualizzazioni
Transcript
1 PRESTAZIONI del processore MIPS pipeline senza e con memoria cache
2 Prestazioni del processore GENERICO (P&H pp 29 31) Definizioni dei parametri di prestazione fondamentali del processore: sia P una prova, ossia un programma da eseguire che in generale contiene cicli T (P) cicli (P) CK tempo di CPU consumato per eseguire la prova P numero di cicli di clock di CPU consumati per eseguire la prova P periodo di clock del processore FREQ frequenza di clock del processore 1 / CK La relazione fondamentale tra i parametri del processore è la seguente: T (P) cicli (P) CK cicli (P) / FREQ Esempio: dato il tempo misurato T (P) e nota la frequenza di clock FREQ, determina il numero di cicli di clock cicli (P) necessari all esecuzione di P T (P) 10 s FREQ 2 GHz Hz cicli (P) miliardi di cicli
3 Parametri delle ISTRUZIONI macchina (P&H pp 29 31) Definizioni dei parametri relativi alle istruzioni macchina: NI (P) numero di istruzioni eseguite durante la prova P nota bene: contano anche le ripetizioni delle istruzioni nei cicli! CPI (P) cicli di clock per istruzione cicli (P) / NI (P) cioè il valore medio su tutte le istruzioni eseguite durante la prova P o equivalentemente cicli (P) NI (P) CPI (P) Tempo di esecuzione in funzione delle istruzioni macchina: T (P) NI (P) CPI (P) / FREQ
4 Prestazioni del processore PIPELINE (P&H pp239) In una pipeline senza stalli di alcun tipo, si ha sempre CPI (P) 1. Se la pipeline presenta stalli introdotti per risolvere conflitti, si ha: stalli (P) cicli (P) numero di cicli di stallo durante la prova P NI (P) stalli (P) 4 NI (P) stalli (P) dato che per grandi numeri il termine costante 4 è trascurabile. Pertanto si ricava il parametro CPI in funzione di istruzioni e stalli, così: CPI (P) cicli (P) / NI (P) ( NI (P) stalli (P) ) / NI (P) E come prima si ricava T (P), ma comprendendo in CPI anche gli stalli: T (P) ( NI (P) CPI (P) ) / FREQ
5 Prestazioni di PIPELINE con CACHE (P&H cap5.4 fino a pp 358) Se la memoria cache è ideale ossia non presenta eventi di MISS, allora essa non influisce sulle prestazioni del processore (di qualunque tipo). Se la memoria cache è reale ossia ha MISS, allora la pipeline va stallata per un numero di cicli di clock pari al tempo per gestire il MISS. Il numero di stalli di pipeline causati dalla memoria cache è definito così: stallim (P) numero di stalli causati dalla memoria cache durante la prova P Pertanto, con cache il tempo di esecuzione della prova P si esprime così: T (P) ( cicli (P) stallim (P) ) / FREQ Nota: cicli (P) potrebbe già comprendere gli stalli di pipeline introdotti per risolvere i vari tipi di conflitto (dati e controllo), come visto prima.
6 Parametri della memoria CACHE (P&H cap5.4 fino a pp 358) Definizioni dei parametri relativi alla memoria cache: HIT rate h frequenza di eventi di HIT se necessario, si divide il parametro h in hi e hd per distinguere tra Istruzioni e Dati HIT time tempo di accesso a una parola in memoria cache MISS rate m 1 h frequenza di eventi di MISS idem se necessario, si divide il parametro m in mi e md MISS penalty M tempo di caricamento del blocco da m. centrale a m. cache Di solito la MISS penalty M è espressa in numero di cicli di clock (altrimenti la si esprime in s o in ns). Ovviamente valgono le relazioni hi hd h e mi md m.
7 Calcolo degli stalli di CACHE (P&H cap 5.4 fino a pp 358) La MISS penalty M è calcolabile così (di solito in numero di cicli di clock): M dimensione del blocco (in parole) tempo di accesso a una parola in memoria centrale Gli stalli di memoria cache sono quantificabili nel modo seguente: stallim (P) numero di stalli causati dalla memoria cache stalli in lettura stalli in scrittura Si fa l ipotesi che le MISS penalty in lettura e scrittura siano identiche (ossia si suppone di applicare la politica di write through), pertanto si ha: stallim (P) m numero di accessi alla memoria (P) M
8 Esempio di prestazioni di PIPELINE con CACHE (P&H cap 5.4) Parametri di processore, di istruzione e di memoria cache noti: CPI di pipeline inclusi stalli di conflitto esclusi stalli di memoria 2 cicli percentuale di istruzioni lw e sw durante la prova 36 % 0,36 mi 2 % 0,02 md 4 % 0,04 M 100 cicli Determina il CPI con memoria cache reale (ossia con eventi di MISS): cicli per miss in cache Istruzioni cicli per miss in cache Dati cicli per miss totali CPI inclusi anche stalli di memoria 0,02 NI NI 0,04 (0,36 NI) 100 1,44 NI 3,44 NI 2 3,44 5,44 cicli Confronta i CPI con cache reale e ideale (ossia senza eventi di MISS): CPI cache reale / CPI cache ideale (2 3,44) / 2 2,72 tempo speso in stalli di memoria 3,44 / 5,44 0,63 63 % Ora accelera la pipeline (ottimizza la pipeline ed elimina tutti i conflitti): il CPI con esclusi gli stalli di memoria cala a 1, pertanto si ha CPI inclusi anche stalli di memoria 1 3,44 4,44 cicli CPI cache reale / CPI cache ideale (1 3,44) / 1 4,44 tempo speso in stalli di memoria 3,44 / 4,44 0,77 77 %
9 Tempo medio di accesso alla memoria AMAT Definizione di Average Memory Access Time: AMAT HIT time MISS rate MISS penalty Esempio parametri di processore e memoria cache noti: CK 1 ns HIT time tempo di accesso a una parola in cache 1 ciclo m 5 % 0,05 M 20 cicli Ne consegue: AMAT 1 ciclo 0,05 20 cicli 2 cicli (ossia 2 ns) Micro nota: certi autori definiscono AMAT HIT rate HIT time MISS rate MISS penalty; questa formula deriva dalla proprietà additiva delle probabilità di eventi mutuamente esclusivi ; essa è più generale della formula precedente, e la implica se si definisce la MISS penalty in modo da comprendere lo HIT time dell evento di HIT dovuto alla ripetizione dell accesso alla parola immediatamente dopo avere caricato il blocco in cache, cioè se MISS penalty dimensione del blocco tempo di accesso a una parola in mem. centrale HIT time; dato che di solito lo HIT time è molto piccolo, comprenderlo o no nella MISS penalty cambia pochissimo il valore di questa, dunque le due formule di AMAT danno risultati quasi uguali; pertanto qui si considera solo la formula data in alto nella slide, più breve da calcolare.
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,
Esercizi sulle prestazioni delle memorie cache
Esercizi sulle prestazioni delle memorie cache Prof. Alberto Borghese Dott. Massimo Marchi Dipartimento discienzedell Informazione dell [email protected] Università degli Studi di Milano A.A. 2012
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ò
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
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
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
Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
Valutazione delle prestazioni
Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: [email protected] Cristina Silvano pag 1 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
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
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
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,
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
Calcolo prestazioni cache (1)
Calcolo prestazioni cache (1) Consideriamo gcc: miss rate x istruzioni = 2% miss rate x dati = 4% frequenza di letture e scritture=36% Consideriamo inoltre un sistema con: CPU: Clock=3Ghz, CPI ideale =1
Valutazione delle prestazioni
Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: [email protected] Cristina Silvano pag 1 Valutazione delle prestazioni
Cache: 1 livello della gerarchia di memoria
Cache: 1 livello della gerarchia di memoria Processore Controllo Datapath Registri On chip cache Cache di secondo livello (SRAM) Memoria principale (DRAM) Memoria secondaria (Disco) 4 decisioni da prendere
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à
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.
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
Uniamo VM e CACHE. Physically addressed. Physically Addressed. Prestazioni. Ci sono varie alternative architetturali. Sono quelle piu semplici
Uniamo VM e CACHE Physically addressed Ci sono varie alternative architetturali physically addressed virtually addressed virtually indexed Sono quelle piu semplici un dato puo essere in cache solo se e
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
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,
CALCOLATORI ELETTRONICI 29 giugno 2011
CALCOLATORI ELETTRONICI 29 giugno 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di una PLA la funzione combinatoria (a 3 ingressi e due uscite)
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini [email protected] Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
Il pipelining: tecniche di base
Definizione di pipelining Il pipelining: tecniche di base Architetture Avanzate dei Calcolatori E una tecnica per migliorare le prestazioni del processore basata sulla sovrapposizione dell esecuzione di
Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti
Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti Compito Num. 1 COGNOME:...NOME:... 1) (20%) Si vuole realizzare una CPU
CALCOLATORI ELETTRONICI 29 giugno 2010
CALCOLATORI ELETTRONICI 29 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita e
Elementi di informatica
Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come
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
La gerarchia di Memoria
La gerarchia di Memoria Metodologie di progettazione Hw-Sw- LS. Ing. Informatica Gap delle prestazioni DRAM - CPU 000 CPU 00 0 DRAM 980 98 982 983 984 985 986 987 988 989 990 99 992 993 994 995 996 997
Architettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La
CALCOLATORI ELETTRONICI 31 marzo 2015
CALCOLATORI ELETTRONICI 31 marzo 2015 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1. Tradurre in linguaggio assembly MIPS il seguente frammento di
ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining
ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining Esercizio 1) N.B. Nei diagrammi a cicli multipli non sono indicati i registri di pipeline (per semplicità) a) Si tratta
Soluzioni. Matematica. Dividere le figure. Nome:
1) Dividi la figura in 6 parti uguali e indica a 2) Dividi la figura in 3 parti uguali e indica a 3) Dividi la figura in 4 parti uguali e indica a 4) Dividi la figura in 8 parti uguali e indica a 5) Dividi
Il pipelining: tecniche di base
Il pipelining: tecniche di base Il pipelining E una tecnica per migliorare le prestazioni del processore basata sulla sovrapposizione dell esecuzione di più istruzioni appartenenti ad un flusso di esecuzione
Un esempio di ciclo macchina
Un esempio di ciclo macchina La CPU deve eseguire le seguenti istruzioni:. Somma dei due valori contenuti agli indirizzi di memoria e ponendo il risultato all indirizzo. Differenza tra i due valori contenuti
Struttura delle cache a indirizzamento diretto
Struttura delle cache a indirizzamento diretto Ogni posizione della cache include: Valid bit che indica se questa posizione contiene o meno dati validi. 0: posizione di cache non ancora utilizzata 1: posizione
CPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L /9 Sommario! I problemi
ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per
