Welcome to Scribd. Sign in or start your free trial to enjoy unlimited e-books, audiobooks & documents.Find out more
Download
Standard view
Full view
of .
Look up keyword
Like this
13Activity
0 of .
Results for:
No results containing your search query
P. 1
Riassunto Architetture Dei Calcolatori

Riassunto Architetture Dei Calcolatori

Ratings:

4.0

(1)
|Views: 1,283|Likes:
Published by api-3842615

More info:

Published by: api-3842615 on Oct 18, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

03/18/2014

pdf

text

original

ARCHITETTURE DEI CALCOLATORI
prof. MariaGiovanna Sami
AA 2003/2004

Introduzione..........................................................................................................................................3
Valutazione delle prestazioni................................................................................................................3
Le gerarchie di memoria: concetti e organizzazione............................................................................6
Introduzione......................................................................................................................................6
Le gerarchie di memoria...................................................................................................................6
Le cache............................................................................................................................................7
Il problema della scrittura.................................................................................................................8
I cache miss e le prestazioni.............................................................................................................9
Supporto hardware alla memoria virtuale..........................................................................................12
Introduzione....................................................................................................................................12
Memory Management Unit............................................................................................................12

Il TLB.............................................................................................................................................14

L\u2019architettura della CPU.....................................................................................................................14
Le istruzioni di macchina...............................................................................................................14
Le modalit\u00e0 di indirizzamento........................................................................................................14
Parallelismo: verso il pipelining.....................................................................................................16
L\u2019architettura di riferimento: la macchina MIPS............................................................................16
Le dipendenze.................................................................................................................................21
I conflitti e la loro soluzione...........................................................................................................22
Gestione delle eccezioni.................................................................................................................23
CPU ad elevate prestazioni.................................................................................................................24
Come migliorare ancora le prestazioni...........................................................................................24
CPU con una sola pipeline.............................................................................................................25
CPU con pi\u00f9 pipeline......................................................................................................................26
CPU superscalari............................................................................................................................26
Il problema dello scheduling..............................................................................................................30
Introduzione....................................................................................................................................30
Algoritmi di scheduling..................................................................................................................31
Force Direct Scheduling.................................................................................................................32
List Based Scheduling....................................................................................................................32
Static List Scheduling.....................................................................................................................33
Verso prestazioni sempre maggiori (I)...............................................................................................33
Introduzione....................................................................................................................................33
Algoritmo di Tomasulo...................................................................................................................33
Esecuzione parallela.......................................................................................................................35
La predizione dei salti....................................................................................................................36
Speculazione hw-based..................................................................................................................38
Verso prestazioni sempre maggiori (II)..............................................................................................40
Dov\u2019\u00e8 il problema...........................................................................................................................40
L\u2019architettura P6.............................................................................................................................41
L\u2019architettura Pentium IV...............................................................................................................42
I processori VLIW..........................................................................................................................42
L\u2019esecuzione predicata....................................................................................................................44
Itanium, DSP e previsioni future....................................................................................................46
I sistemi multiprocessore....................................................................................................................47
Oltre l\u2019ILP.......................................................................................................................................47
Architetture a memoria condivisa..................................................................................................48

1

Architetture a memoria distribuita..................................................................................................49 Le reti di interconnessione..............................................................................................................50 La cache coherence nei sistemi multiprocessore............................................................................50

2
Introduzione.

Lo studio delle architetture dei calcolatori \u00e8 fondamentalmente e strettamente legato al problema delle prestazioni. Con prestazioni indichiamo il reciproco del tempo di risposta (detto anche tempo di esecuzione). Prestazioni migliori implicano un tempo di esecuzione minore. Per alcune applicazioni le prestazioni fanno riferimento al throughput, ovvero, alla quantit\u00e0 di lavoro totale compiuto nell\u2019unit\u00e0 di tempo. Molto in generale le prestazioni dipendono da:

\u2022Durata del ciclo di clock: legato alla tecnologia dell\u2019HW e alla organizzazione della CPU
(pipeline, super-pipeline, CPU superscalari, \u2026).
\u2022Numero di cicli di clock per ogni istruzione (CPI = Clock cycles Per Instruction): dipende
dall\u2019organizzazione e dalla Instruction Set Architecture.
\u2022Instruction Count (IC): \u00e8 il numero di istruzioni eseguite e dipende dall\u2019Instructions Set

Architecture e della tecnologia del compilatore.
Ci\u00f2 che principalmente limita le prestazioni di una architettura, e ci\u00f2 che principalmente studieremo
noi, \u00e8:

\u2022La memoria: la memoria \u00e8 pi\u00f9 lenta della logica, ma si richiede sempre pi\u00f9 spazio.
\u2022L\u2019esecuzione: l\u2019esecuzione sulla macchina di \u201cbase\u201d di Von Neumann \u00e8 totalmente seriale e
quindi prima che una nuova istruzione possa essere eseguita, quella vecchia deve essere
completata.
Quindi si studier\u00e0 come:
\u2022Modificare la struttura della memoria in modo che il programmatore veda uno spazio
indirizzabile molto vasto e contemporaneamente la CPU veda una \u201cmemoria equivalente\u201d molto
veloce. Parleremo di:
o
Valutazione delle prestazioni della cache e gestione ottimale della cache.
o
Supporti HW alla memoria virtuale.
\u2022Ottenere migliore efficienza per l\u2019esecuzione della sequenza di istruzioni, ovvero come
modificare il paradigma di esecuzione del programma. Parleremo di:
o
Definizione dell\u2019insieme di istruzioni
o
Il pipelining
o
Il parallelismo intrinseco (ILP)
o
I sistemi multi-processore.
Valutazione delle prestazioni.

Iniziamo studiando il modo per valutare le prestazioni di una macchina e confrontare le prestazioni di due macchine. Questo ci permetter\u00e0 di capire anche come e dove intervenire per migliorare la velocit\u00e0 di esecuzione di un programma.

Di seguito alterneremo definizioni e \u201cprocedure operative\u201d per il calcolo delle prestazioni delle
macchine.
La prima parte \u00e8 dedicata alla CPU, ai suoi tempi, prestazioni, \u2026
DEF. Tempo di risposta o tempo di esecuzione (Tesec): \u00e8 il tempo che intercorre tra l\u2019inizio e il
completamento di un lavoro, ovvero il numero di secondi necessari per eseguire un \u201cprogramma\u201d.
DEF. Throughput (Th): \u00e8 l\u2019ammontare complessivo di lavoro svolto in una unit\u00e0 di tempo.
3

Activity (13)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Marco Ricci liked this
dottormario liked this
Franco Falli liked this
Daniele Ranaldi liked this
ciospina liked this
Giovanni Moriano liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->