Multiprocessori. Classificazione dei multiprocessori
|
|
- Miranda Roberto
- 7 anni fa
- Visualizzazioni
Transcript
1 Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Multiprocessori Corso di Sistemi Distribuiti Valeria Cardellini Anno accademico 2009/10 Classificazione dei multiprocessori Focalizziamo l attenzione sui multiprocessori (o architetture MIMD a memoria condivisa) Anche SMP SD - Valeria Cardellini, A.A. 2009/10 1
2 Architettura di base per SMP Tutti i processori hanno un tempo di accesso uniforme alla memoria Attenzione: memoria condivisa non implica che ci sia una singola memoria, bensì la memoria è suddivisa fisicamente in banchi La memoria ed i processori sono collegati tramite: Uno (o più) bus nel caso dei multiprocessori più semplici Oppure una rete di interconnessione La comunicazione tra processori avviene mediante un ampio spazio di indirizzamento condiviso Occorre gestire i conflitti per l accesso ai dati condivisi in memoria da parte di più processori Occorre sincronizzare gli accessi alla stessa locazione di memoria da parte di più processori Dimensione tipica per SMP: da 2 ad un centinaio processori SD - Valeria Cardellini, A.A. 2009/10 2 Interconnessione con bus e con switch SD - Valeria Cardellini, A.A. 2009/10 3
3 SMP con bus Un solo bus (sebbene ottimizzato) e la memoria condivisa possono facilmente diventare un collo di bottiglia del sistema Parallelismo dei processori UMA con bus limitato a processori SD - Valeria Cardellini, A.A. 2009/10 4 SMP con rete di interconnessione Per aumentare la scalabilità e gestire quindi un numero più elevato di processori occorre una rete di interconnessione E una struttura più scalabile e complessa del bus SD - Valeria Cardellini, A.A. 2009/10 5
4 Reti di interconnessione Analizziamo due reti di interconnessione usate nei multiprocessori UMA (e NUMA) 1. Commutatore incrociato (crossbar switch) E lo schema più semplice per connettere n processori a k banchi di memoria 2. Reti di commutazione multi-stadio, in particolare rete omega SD - Valeria Cardellini, A.A. 2009/10 6 Crossbar switch (a) Un crossbar switch 8 8 (b) Un crosspoint aperto (c) Un crosspoint chiuso Ad ogni intersezione di una linea di comunicazione orizzontale e verticale è posizionato uno crosspoint (punto di incrocio), che può connettere (o meno) le due linee In figura: 3 switch sono chiusi e connettono le coppie processore-memoria ( ), (101, 101), (110, 010) SD - Valeria Cardellini, A.A. 2009/10 7
5 Crossbar switch (2) Quante sono le possibili combinazioni di comunicazione simultanea tra coppie processorememoria? Problema detto Non-Attacking Rooks: come posizionare 8 torri su di una scacchiera senza che si attacchino Soluzione: 8! = Vantaggio del crossbar switch: è una rete non bloccante E possibile elaborare contemporaneamente qualsiasi insieme di richieste, indipendentemente dallo stato della rete Limiti del crossbar switch: il numero di crosspoint cresce quadraticamente con il numero di processori (memorie) coinvolti Adatti per sistemi UMA di medie dimensioni SD - Valeria Cardellini, A.A. 2009/10 8 Reti di commutazione multi-stadio Per connettere molti nodi si usa un commutatore bidirezionale a due ingressi e due uscite (switch 2 2) Ciascuno dei due ingressi può essere rediretto su ciascuna delle due uscite Nel formato di messaggio: Module: quale banco di memoria, quale processore Address: indirizzo interno al banco di memoria Opcode: tipo di operazione (ad es. READ o WRITE) Value: può contenere l operando (in caso di WRITE) SD - Valeria Cardellini, A.A. 2009/10 9
6 Reti di commutazione multi-stadio (2) E possibile comporre in molti modi gli switch 2 2 per definire una rete a commutazione multi-stadio La rete omega è una possibile composizione SD - Valeria Cardellini, A.A. 2009/10 10 Rete omega Nell esempio del lucido precedente: 8 processori connessi a 8 memorie, usando in tutto 12 switch 2 2 in 3 stadi Nel caso di n processori ed n memorie: log 2 n stadi, con n/2 switch per stadio; in totale (n/2)log 2 n switch La connessione tra uno stadio è l altro è regolata dalla permutazione perfect shuffle Ω(c) = Ω(i s-1, i s-2,..., i 1, i 0 ) = i s-2,..., i 1, i 0, i s SD - Valeria Cardellini, A.A. 2009/10 11
7 Rete omega (2) Esempio di funzionamento: il processore 011 vuole leggere un dato dal banco di memoria 110 Il processore invia allo switch 1D il messaggio con READ e Module= Lo switch 1D preleva il bit più significativo per il routing (0: uscita superiore; 1: uscita inferiore) messaggio instradato verso 2D Lo switch 2D analizza il secondo bit più significativo e instrada il messaggio verso 3D Lo switch 3D usa il bit meno significativo per instradare verso il banco di memoria 110 Il dato letto deve essere instradato verso il processore: viene usato il suo indirizzo, leggendo però i bit da destra verso sinistra SD - Valeria Cardellini, A.A. 2009/10 12 Rete omega (3) Il processore 011 legge un dato dal banco di memoria 110 (percorso a); contemporaneamente: Il processore 001 può scrivere un dato dal banco di memoria 001 (percorso b) Ma il processore 000 non può accedere al banco 000 (conflitto sullo switch 3A) SD - Valeria Cardellini, A.A. 2009/10 13
8 Rete omega (4) La rete omega è bloccante Non tutte le sequenze di richieste possono essere servite contemporaneamente Per minimizzare la possibilità di conflitti e massimizzare il parallelismo delle comunicazioni processore-memoria sono possibili varie tecniche Ad es., usare un sistema di memoria interallacciato: permette di massimizzare il parallelismo perché la maggior parte dei riferimenti a memoria coinvolge indirizzi consecutivi SD - Valeria Cardellini, A.A. 2009/10 14 Coerenza della cache nell architettura SMP La cache locale per ciascun processore permette di ridurre il traffico sul bus o rete di interconnessione e la latenza di accesso ai dati I riferimenti in memoria che si concludono con un cache hit non richiedono un accesso alla memoria condivisa La cache locale può contenere: dati privati: usati solo sullo stesso processore dati condivisi: usati da più processori e che sostanzialmente forniscono il meccanismo di comunicazione tra i processori Accesso ad un dato condiviso: il dato può essere replicato in più cache Nascono problemi di coerenza della cache! Due processori diversi vedono la memoria tramite la propria cache ma le due viste possono essere diverse SD - Valeria Cardellini, A.A. 2009/10 15
9 Problema della coerenza della cache: esempio P 1 P 2 P 3 u =? u =? $ 4 $ 5 $ u = 5 u=5 3 u= 7 1 u = 5 2 Dispositivi di I/O Memoria I processori vedono valori diversi di u dopo l evento 3 Con cache di tipo write back, non è predicibile quando il nuovo valore di u verrà scritto in memoria I processori che accedono in memoria possono vedere un vecchio valore Inaccettabile per la programmazione! SD - Valeria Cardellini, A.A. 2009/10 16 Coerenza e consistenza In modo informale: un sistema di memoria è coerente se qualsiasi lettura di un dato fornisce il valore del dato scritto più recentemente Coerenza: definisce quali valori possono essere restituiti da un operazione di lettura Consistenza: definisce quando un valore che è stato scritto verrà restituito da un operazione di lettura SD - Valeria Cardellini, A.A. 2009/10 17
10 Coerenza del sistema di memoria Il sistema di memoria è coerente se: 1. Preserva l ordine di programma: una lettura della locazione X da parte del processore P che segue una scrittura di X da parte di P (senza scritture intermedie in X da parte di un altro processore) restituisce sempre il valore scritto da P 2. Vista coerente della memoria: una lettura della locazione X da parte di un processore che segue una scrittura di X da parte di un altro processore restituisce il valore scritto se lettura e scrittura sono separate da un tempo sufficiente e se non si verificano altre scritture in X tra le due operazioni 3. Serializzazione delle scritture: le operazioni di scrittura di una stessa locazione X sono serializzate, ovvero due scritture della locazione X da parte di una qualsiasi coppia di processori sono viste da tutti i processori nello stesso ordine SD - Valeria Cardellini, A.A. 2009/10 18 Schemi per mantenere la coerenza Schemi per mantenere la coerenza Gli schemi per garantire la coerenza della cache sono dette protocolli di coerenza della cache Attenzione: sono soluzioni implementate in hardware! Riconoscimento dinamico (a tempo di esecuzione) delle potenziali condizioni di incoerenza Alternativa ai protocolli di coerenza: soluzioni software (richiedono l intervento del compilatore e del sistema operativo) Due classi di protocolli di coerenza della cache: Protocolli di directory Directory che contiene informazioni sullo stato di condivisione dei blocchi di memoria presenti nelle cache locali Controllore responsabile della coerenza delle cache Protocolli di snooping Ogni cache che possiede una copia del blocco memorizza anche una copia dello stato di condivisione del blocco La responsabilità della coerenza della cache è distribuita tra i controllori di cache SD - Valeria Cardellini, A.A. 2009/10 19
11 Protocolli di snooping E la classe di protocolli più semplice per garantire la coerenza della cache Ogni cache che ha una propria copia dei dati contenuti in un blocco di memoria fisica ha anche una copia dello stato di condivisione del blocco Tutte le cache sono collegate alla memoria tramite un mezzo di comunicazione che consente il broadcast Un bus o uno switch Tutti i controllori delle cache monitorano o sbirciano (snoop) il mezzo di comunicazione, per verificare se hanno una copia del blocco di cache che viene richiesto mediante l accesso al bus o allo switch P 1 Bus snoop P n $ $ I/O devices SD - Valeria Cardellini, A.A. 2009/10 20 Mem Cache-memory transaction Protocolli di snooping (2) In seguito alla scrittura di un dato condiviso occorre scegliere se adottare una strategia di: Invalidazione oppure aggiornamento delle copie di un dato condiviso Invalidazione (write-invalidate protocol) Tutte le copie del dato presenti nelle altre cache sono rese non più valide Aggiornamento (write-update protocol) Tutte le copie del dato presenti nelle altre cache sono aggiornate I protocolli di snooping write-update consumano più banda per l aggiornamento: tutti i multiprocessori recenti usano protocolli di tipo write-invalidate SD - Valeria Cardellini, A.A. 2009/10 21
12 Esempio Esempio di protocollo di snooping con write-invalidate e cache di tipo write-back Scrittura seguita dalla lettura da parte di un altro processore Attività CPU Attività bus Cache CPU A Cache CPU B Contenuto della locazione X in mem 0 CPU A legge X Cache miss per X 0 0 CPU B legge X Cache miss per X CPU A scrive 1 in X Invalidazione di X 1 0 t CPU B legge X Cache miss per X SD - Valeria Cardellini, A.A. 2009/10 22 Tecniche basilari di realizzazione Per realizzare un protocollo di snooping writeinvalidate occorre risolvere due problemi 1. Come invalidare tutte le copie esistenti di un blocco di cache in cui si scrive? 2. Come individuare la copia aggiornata di un dato ogni volta che c è un fallimento nell accesso alla cache? SD - Valeria Cardellini, A.A. 2009/10 23
13 Invalidare le copie di un blocco Tutti i protocolli di coerenza hanno bisogno di un metodo che renda seriali gli accessi ad uno stesso blocco di cache Il bus singolo è il fattore chiave per realizzare un protocollo di snooping di tipo write-invalidate Il bus forza la serializzazione degli accessi in lettura e scrittura e quindi garantisce la serializzazione delle scritture In caso di scritture contemporanee di blocchi diversi: il primo processore che acquisisce il bus invalida le altre copie del blocco che sta scrivendo In caso di scritture contemporanee dello stesso blocco: il primo processore che acquisisce il bus invalida le altre copie del blocco SD - Valeria Cardellini, A.A. 2009/10 24 Individuare la copia aggiornata di un dato Strategia di scrittura write-through: si ottiene il dato aggiornato dalla memoria Più semplice ma necessita di banda di memoria sufficiente Strategia di scrittura write-back: la copia più recente del dato può essere in una cache anziché in memoria Più difficile Le due strategie possono usare lo stesso meccanismo di snooping 1. Controllare ogni indirizzo in transito sul bus 2. Se un processore possiede una copia dirty del blocco di cache richiesto, lo fornisce in risposta ad una richiesta di lettura ed interrompe l accesso in memoria E più complicato (e può essere anche più lento) ottenere il blocco da una cache anziché dalla memoria Write-back richiede meno banda di memoria Quindi supporta un maggior numero di processori E la strategia usata dalla maggior parte dei multiprocessori SD - Valeria Cardellini, A.A. 2009/10 25
14 Stato dei blocchi di cache Per implementare un protocollo di snooping writeinvalidate Si usano i bit di gestione dello stato già presenti per ogni blocco di cache (valid, dirty) Si usa il valid bit per l invalidazione Per ogni blocco si aggiunge un bit di gestione che segnala la condivisione del blocco (shared) In caso di scrittura di un blocco condiviso, il controllore della cache genera un invalidazione sul bus e marca il blocco come modificato (o esclusivo, a seconda del protocollo di snooping specifico) SD - Valeria Cardellini, A.A. 2009/10 26 Esempio di protocollo di snooping Analizziamo un esempio di protocollo di snooping con write-invalidate e strategia di scrittura di tipo write-back Protocollo di snooping implementato mediante un controllore a stati finiti (FSM) per ogni blocco di cache, che risponde a richieste provenienti dal processore e dal bus modificando lo stato del blocco di cache Tre stati possibili per ogni blocco di cache: shared (solo lettura): blocco pulito, condiviso (presente in almeno una cache) ed aggiornato con la memoria exclusive (lettura/scrittura): blocco dirty in esattamente una cache e non può essere condiviso Il fatto che lo stato sia modificato implica che il blocco sia esclusivo invalid: blocco contenente dati non validi Il protocollo analizzato assume che le operazioni siano atomiche SD - Valeria Cardellini, A.A. 2009/10 27
15 FSM per CPU FSM per le richieste del processore per ogni blocco di cache Invalid CPU read Place read miss on bus CPU read hit Shared (read only) CPU write Place write miss on bus CPU read hit CPU write hit Exclusive (read/write) CPU write Place write miss on bus CPU write miss (?) Write back cache block Place write miss on bus SD - Valeria Cardellini, A.A. 2009/10 28 FSM per operazioni sul bus FSM per le richieste sul bus per ogni blocco di cache Invalid Write miss for this block Shared (read only) Write miss for this block Write back block; (abort memory access) Exclusive (read/write) Read miss for this block Write back block; (abort memory access) SD - Valeria Cardellini, A.A. 2009/10 29
16 FSM per CPU - sostituzione del blocco FSM per le richieste del processore per ogni blocco di cache CPU write Place Write Miss on bus Invalid CPU read Place read miss on bus CPU read miss Write back block, place read miss on bus CPU read hit Shared (read only) CPU read miss Place read miss on bus Cache Block State CPU read hit CPU write hit Exclusive (read/write) CPU write Place write miss on bus CPU write miss Write back cache block Place write miss on bus SD - Valeria Cardellini, A.A. 2009/10 30 FSM per le richieste del processore per ogni blocco di cache e per le richieste sul bus per ogni blocco di cache Write miss for this block Write back block; (abort memory access) CPU read hit CPU write hit FSM completo Invalid CPU read Place read miss CPU write on bus Place write miss on bus Exclusive (read/write) Write miss for this block CPU read miss Write back block, place read miss on bus CPU read hit Shared (read only) CPU read miss Place read miss on bus CPU write Place write miss on bus Read miss for this block Write back block; (abort memory access) CPU write miss Write back cache block Place write miss on bus SD - Valeria Cardellini, A.A. 2009/10 31
17 Esempio P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 P1: P1: Read Read A1 A1 P2: Read A1 P2: Write 20 to A1 P2: Write 40 to A2 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache, e che lo stato iniziale della cache sia invalid SD - Valeria Cardellini, A.A. 2009/10 32 Esempio (2) P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 Excl. A1 10 WrMs P1 A1 P1: P1: Read Read A1 A1 P2: Read A1 P2: Write 20 to A1 P2: Write 40 to A2 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache SD - Valeria Cardellini, A.A. 2009/10 33
18 Esempio (3) P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 Excl. A1 10 WrMs P1 A1 P1: P1: Read Read A1 A1 Excl. A1 10 P2: Read A1 P2: Write 20 to A1 P2: Write 40 to A2 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache SD - Valeria Cardellini, A.A. 2009/10 34 Esempio (4) P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 Excl. A1 10 WrMs P1 A1 P1: P1: Read Read A1 A1 Excl. A1 10 P2: Read A1 Shar. A1 RdMs P2 A1 Shar. A1 10 WrBk P1 A1 10 A1 10 Shar. A1 10 RdDa P2 A1 10 A1 10 P2: Write 20 to A1 P2: Write 40 to A2 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache SD - Valeria Cardellini, A.A. 2009/10 35
19 Esempio (5) P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 Excl. A1 10 WrMs P1 A1 P1: P1: Read Read A1 A1 Excl. A1 10 P2: Read A1 Shar. A1 RdMs P2 A1 Shar. A1 10 WrBk P1 A1 10 A1 10 Shar. A1 10 RdDa P2 A1 10 A1 10 P2: Write 20 to A1 Inv. Excl. A1 20 WrMs P2 A1 A1 10 P2: Write 40 to A2 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache SD - Valeria Cardellini, A.A. 2009/10 36 Esempio (6) P1 P2 Bus Memory step State Addr Value State Addr Value Action Proc. Addr Value Addr Value P1: Write 10 to A1 Excl. A1 10 WrMs P1 A1 P1: P1: Read Read A1 A1 Excl. A1 10 P2: Read A1 Shar. A1 RdMs P2 A1 Shar. A1 10 WrBk P1 A1 10 A1 10 Shar. A1 10 RdDa P2 A1 10 A1 10 P2: Write 20 to A1 Inv. Excl. A1 20 WrMs P2 A1 A1 10 P2: Write 40 to A2 WrMs P2 A2 A1 10 Excl. A2 40 WrBk P2 A1 20 A1 20 Assumiamo che A1 e A2 mappino sullo stesso blocco di cache, ma A1 A2 SD - Valeria Cardellini, A.A. 2009/10 37
20 Altri protocolli di snooping Il protocollo di snooping esaminato è a 3 stati ed è anche chiamato MSI (Modified Shared Invalid) Esistono varianti che estendono il protocollo esaminato ed hanno 4 o 5 stati del blocco di cache Obiettivo: ridurre il traffico sul mezzo di comunicazione condiviso MESI (Modified Exclusive Shared Invalid) Lo stato exclusive indica che il blocco di cache è presente solo in una cache ma è pulito ed aggiornato con la memoria Lo stato modified è analogo allo stato esclusivo del protocollo da noi analizzato MOSI (Modified Owned Shared Invalid) Aggiunto lo stato owned per assegnare al processore proprietario del blocco la responsabilità di aggiornamento nei confronti degli altri processori e della memoria MOESI (Modified Owned Exclusive Shared Invalid) SD - Valeria Cardellini, A.A. 2009/10 38 Coerenza basata su snooping Un protocollo di coerenza basato su snooping ha bisogno di: comunicare (tramite broadcast) con tutte le cache in occasione di ogni fallimento, compresi i casi di scrittura di dati potenzialmente condivisi L assenza di una struttura centralizzata che tenga traccia dello stato della cache E il vantaggio dei protocolli basati su snooping: poco costosi Ma il loro limite: scalabilità Analizziamo l alternativa per avere una coerenza scalabile: coerenza basata su directory Consideriamo l implementazione su un architettura NUMA SD - Valeria Cardellini, A.A. 2009/10 39
21 Architetture NUMA Come nelle architetture UMA, la comunicazione avviene ancora mediante uno spazio di indirizzamento condiviso Memorie fisicamente separate ma indirizzate come un unico spazio condiviso Qualunque processore può accedere a qualunque locazione di memoria, ma con tempi di accesso non uniformi Anche detti multiprocessori a memoria condivisa distribuita (Distributed Shared Memory o DSM) SD - Valeria Cardellini, A.A. 2009/10 40 Architetture NUMA (2) Per implementare la coerenza della cache, ogni nodo ha anche una directory Ogni directory tiene traccia di quali cache condividono gli indirizzi di memoria relativi alla porzione di memoria contenuta nel nodo SD - Valeria Cardellini, A.A. 2009/10 41
22 Le basi di un protocollo di directory Due operazioni fondamentali Gestire il fallimento di un accesso in lettura Gestire la scrittura di un blocco pulito di cache e condiviso (la gestione del fallimento in scrittura di un blocco condiviso è combinazione delle altre due operazioni) Tre stati possibili per ogni blocco di cache: shared (solo lettura): blocco pulito, condiviso (presente in almeno una cache) ed aggiornato con la memoria exclusive (lettura/scrittura): blocco dirty in esattamente una cache e non può essere condiviso invalid: blocco contenente dati non validi SD - Valeria Cardellini, A.A. 2009/10 42 Le basi di un protocollo di directory (2) Occorre tenere traccia di: Lo stato di ciascun blocco di memoria potenzialmente condiviso Quali sono i processori che ne posseggono una copia, per poter invalidare tutte le copie in caso di scrittura del blocco Per ciascun blocco di memoria si usa un vettore di bit: in caso di blocco condiviso, il bit indica se il processore corrispondente alla posizione del bit possiede o meno una copia del blocco Distinguiamo i processori in: Nodo locale: dove ha origine la richiesta Nodo home (di residenza): dove ha origine la locazione di memoria Nodo remoto: ha una copia del blocco (condivisa o modificata) Analizziamo i possibili messaggi scambiati tra i nodi per mantenere la coerenza P = numero del processore richiedente A = indirizzo richiesto D = contenuto del dato SD - Valeria Cardellini, A.A. 2009/10 43
23 Messaggi del protocollo di directory Message type Source Destination Msg Content Read miss Local cache Home directory P, A Processor P reads data at address A; make P a read sharer and request data Write miss Local cache Home directory P, A Processor P has a write miss at address A; make P the exclusive owner and request data Invalidate Home directory Remote caches A Invalidate a shared copy at address A Fetch Home directory Remote cache A Fetch the block at address A and send it to its home directory; change the state of A in the remote cache to shared Fetch/Invalidate Home directory Remote cache A Fetch the block at address A and send it to its home directory; invalidate the block in the cache Data value reply Home directory Local cache Data Return a data value from the home memory (read miss response) Data write back Remote cache Home directory A, Data Write back a data value for address A (invalidate response) SD - Valeria Cardellini, A.A. 2009/10 44 Diagramma delle transizioni di stato per un blocco di cache in sistema basato su directory Stati identici al caso con snooping; transizioni di stato molto simili al caso con snooping Transizioni causate da miss in lettura, miss in scrittura, invalidazioni, richieste di reperimento dati Generati messaggi di miss in lettura e miss in scrittura verso la home directory Miss in scrittura che erano inviati in broadcast sul bus nel caso di snooping => richieste di invalidazione esplicita e richieste di reperimento di dato nel caso di directory SD - Valeria Cardellini, A.A. 2009/10 45
24 FSM per ogni blocco di cache CPU Read hit FSM per richieste del processore per ogni blocco di memoria Stato invalid se in memoria Fetch/Invalidate Send data write back message to home directory CPU read hit CPU write hit Invalid Exclusive (read/write) Invalidate CPU Read Send read miss message CPU Write: Send write miss msg to home d. Shared (read/only) CPU read miss: Send read miss CPU Write: Send write miss message to home directory Fetch: Send data write back message to home directory CPU read miss: send data write back message and read miss to home directory CPU write miss: send data write back message and write miss to home directory SD - Valeria Cardellini, A.A. 2009/10 46 Diagramma delle transizioni di stato della directory Stessi stati e struttura del diagramma delle transizioni di un singolo blocco di cache Due tipi di azioni alla ricezione di un messaggio: aggiornamento dello stato della directory e invio di ulteriori messaggi per soddisfare la richiesta Tiene traccia dello stato di ciascun blocco in memoria Deve memorizzare anche l insieme dei processori che possiedono una copia del blocco: sharers SD - Valeria Cardellini, A.A. 2009/10 47
25 FSM per richieste della directory per ogni blocco di memoria Stato uncached se in memoria Data Write Back: Sharers = {} (Write back block) Write Miss: Sharers = {P}; send Fetch/Invalidate; send Data Value Reply msg to remote cache FSM per directory Uncached Exclusive (read/write) Read miss: Sharers = {P} send Data Value Reply Write Miss: Sharers = {P}; send Data Value Reply msg Shared (read only) Write Miss: send Invalidate to Sharers; then Sharers = {P}; send Data Value Reply msg Read miss: Sharers += {P}; send Fetch; send Data Value Reply msg to remote cache (Write back block) Read miss: Sharers += {P}; send Data Value Reply SD - Valeria Cardellini, A.A. 2009/10 48 Riferimenti per multiprocessori Capitolo 4 di Hennessy & Patterson, Computer Architecture: A Quantitative Approach, 4th edition Capitolo 8 di Tanenbaum, Structured Computer Organization, 5th edition Di entrambi i testi esiste la traduzione in italiano SD - Valeria Cardellini, A.A. 2009/10 49
Architetture della memoria
Architetture della memoria Un elemento determinante per disegnare una applicazione parallela e' l architettura della memoria della macchina che abbiamo a disposizione. Rispetto all architettura della memoria
DettagliClassificazione delle Architetture Parallele
Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Classificazione delle Architetture Parallele Corso di Sistemi Distribuiti Valeria Cardellini Anno accademico 2009/10 Architetture parallele
DettagliSistemi a processori multipli
Sistemi a processori multipli Sommario Classificazione e concetti di base Sistemi multi-processore Sistemi multi-computer (cluster) Sistemi distribuiti Obiettivo comune Risolvere problemi di dimensioni
DettagliLa 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
DettagliMultiprocessori a memoria condivisa. Multiprocessori a memoria condivisa
Multiprocessori a memoria condivisa Introduzione Sistemi UMA Coerenza della cache Sistemi NUMA Sincronizzazione fra processi Modelli di consistenza della memoria Sistemi COMA 1 Multiprocessori a memoria
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
Dettaglistatic 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
DettagliSistemi RAID. Motivazioni Concetti di base Livelli RAID. Sommario
Sistemi RAID 1 Motivazioni Concetti di base Livelli RAID Sommario 2 1 Motivazione L evoluzione tecnologica ha permesso di avere dischi sempre più piccoli e meno costosi E facile equipaggiare un sistema
DettagliArchitettura 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
DettagliProgramma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori
Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Evoluzione dei sistemi informatici Cos è una rete? Insieme di
DettagliSistemi Distribuiti Anno accademico 2009/10
Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Sistemi Distribuiti Anno accademico 2009/10 Valeria Cardellini E-mail: cardellini@ing.uniroma2.it Tel: 06 72597388 Laurea Magistrale in
DettagliSistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliIntroduzione 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
DettagliRichiami 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
DettagliCache: 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
DettagliModelli di programmazione parallela
Modelli di programmazione parallela Oggi sono comunemente utilizzati diversi modelli di programmazione parallela: Shared Memory Multi Thread Message Passing Data Parallel Tali modelli non sono specifici
DettagliFallimenti 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
DettagliCorso di Informatica
Corso di Informatica Modulo T2 3-La memoria 1 Prerequisiti Concetto di memoria Dati e istruzioni Bit e byte 2 1 Introduzione In questa Unità studiamo più in dettaglio la memoria del computer e le sue funzioni.
DettagliSISTEMI OPERATIVI DISTRIBUITI
SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching
DettagliIntroduzione 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
DettagliCPU, RAM, ROM e BUS Corso di Abilità Informatiche Laurea in Fisica
CPU,, ROM e BUS Corso di Abilità Informatiche Laurea in Fisica prof. ing. Corrado Santoro A.A. 2009-10 Ripassiamo: Struttura di un Computer CPU Regola il funzionamento del computer E' in grado di eseguire
DettagliSottosistemi ed Architetture Memorie
Sottosistemi ed Architetture Memorie CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II La memoria centrale Memoria centrale: array di
DettagliBlocchi 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:
DettagliCapitolo 5 Elementi architetturali di base
Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo
DettagliLa gestione dell I/O (Cap. 5, Tanenbaum)
La gestione dell I/O (Cap. 5, Tanenbaum) Prestazioni e generalità Gestione software Supporti su disco Orologi Lezione Architettura degli Elaboratori - 1 - A. Sperduti Pagina 1 Prestazioni e generalità
DettagliParte VIII. Architetture Parallele
Parte VIII Architetture Parallele VIII.1 Motivazioni Limite di prestazioni delle architetture sequenziali: velocità di propagazione dei segnali, la luce percorre 30 cm in un nsec! Migliore rapporto costo/prestazioni
DettagliEsame 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
DettagliReti a Commutazione. Commutazione di Circuito. Esempio di Rete a Commutazione. Elementi di una Rete a Commutazione
I semestre 03/04 Reti a Commutazione Commutazione di Circuito Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica
DettagliTopologie delle reti di telecomunicazione
Topologie delle reti di telecomunicazione Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Rete di telecomunicazione Definizione: un insieme
DettagliISO- OSI e architetture Client-Server
LEZIONE 9 ISO- OSI e architetture Client-Server Proff. Giorgio Valle Raffaella Folgieri giorgio.valle@unimi.it folgieri@dico.unimi.it Lez 10 modello ISO-OSI e architettura client-server 1 Nelle scorse
DettagliLe reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete
Reti e comunicazione Le reti Con il termine rete si fa riferimento, in generale ai servizi che si ottengono dall integrazione tra tecnologie delle telecomunicazioni e le tecnologie dell informatica. La
DettagliSistemi Distribuiti. Informatica B. Informatica B
Sistemi Distribuiti Introduzione Che cos è un sistema distribuito? Un sistema distribuito è una collezione di computer indipendenti che appare all utente come un solo sistema coerente Da notare: le macchine
DettagliARCHITETTURA DI UN ELABORATORE
ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM
DettagliParte II - Reti di Calcolatori ed Internet IL LIVELLO RETE
Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE 3-1 Il Livello RETE Servizi del livello Rete Organizzazione interna Livello Rete basato su Circuito Virtuale Livello Rete basato su Datagram Algoritmi
DettagliLA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
DettagliLezione 2 Chiamate di procedura e risposta alle interruzioni
Modulo 1 U.D. 1 Lez. 2 Lezione 2 Chiamate di procedura e risposta alle interruzioni Sistemi Operativi I Modulo 1 - Architettura del Calcolatore Unità didattica 1 - Architettura e funzionamento dei sistemi
DettagliInput/Output (Cap. 7, Stallings)
Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli
DettagliModello a scambio di messaggi
Modello a scambio di messaggi Aspetti caratterizzanti il modello Canali di comunicazione Primitive di comunicazione 1 Aspetti caratterizzanti il modello modello architetturale di macchina (virtuale) concorrente
DettagliLivelli del sottosistema di I/O
Input/Output 1 Livelli del sottosistema di I/O Software di I/O di livello utente Software di sistema indipendente dal dispositivo Driver dei dispositivi Gestori delle interruzioni Hardware Modo utente
DettagliCLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)
CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico) - Dedicati Quelli dei primi sistemi operativi. La macchina viene utilizzata da un utente per volta che può eseguire un solo programma per volta.
DettagliOperazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU
Operazioni di I/O 1 Schema di collegamento fra dispositivi periferici e CPU Memoria CPU buffer interfaccia Registro di controllo Registro Di stato Unità di controllo Dispositivo fisico 2 1 Unità di interfaccia
DettagliArchitetture di rete. 4. Le applicazioni di rete
Architetture di rete 4. Le applicazioni di rete Introduzione L avvento di tecnologie (hw, sw, protocolli) di rete avanzate ha permesso la nascita di architetture software molto evolute che permettono lo
DettagliSCD. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione
Anno accademico 2004/5 Corso di Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Definizione Un sistema distribuito è un insieme di elaboratori indipendenti capaci
DettagliGESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
DettagliArchitettura 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
DettagliArchitettura degli elaboratori Tema d esame del 20/01/2016
Architettura degli elaboratori - Luigi Lavazza A.A. 5/6 Università degli Studi dell Insubria Dipartimento di Informatica e Comunicazione Architettura degli elaboratori Tema d esame del //6 Luigi Lavazza
DettagliCalcolatori Elettronici
Calcolatori Elettronici La memoria gerarchica La cache: come migliorare le prestazioni Ricapitolando (1) La memoria principale e la cache sono scomposte in blocchi di uguale dimensione L indirizzo del
DettagliIl Modello a scambio di messaggi
Il Modello a scambio di messaggi 1 Interazione nel modello a scambio di messaggi Se la macchina concorrente e` organizzata secondo il modello a scambio di messaggi: PROCESSO=PROCESSO PESANTE non vi è memoria
DettagliIl processore Pentium
Caratteristiche principali (I) Architettura interna a 32 bit Address bus a 32 bit: si possono indirizzare fino a 4 GB di memoria fisica Data bus a 64 bit (si tratta in pratica di 2 data bus a 32 bit in
DettagliUn semplice commutatore a pacchetto
Realizzazione di commutatori a pacchetto: cosa c e dentro un router IP? Prof. Ing. Carla Raffaelli Un semplice commutatore a pacchetto Una workstation con schede di rete e software per ricevere pacchetti
DettagliEsercitazione 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,
DettagliMetodo di arbitraggio
Metodo di arbitraggio Se un sistema ha solo un master (il processore) allora non c è necessità di arbitraggio: l accesso al bus è sempre garantito al processore che pilota lo slave con cui correntemente
DettagliGestione della memoria
Gestione della memoria centrale Gestione della memoria Concetti generali. Swapping. Allocazione contigua di memoria. Paginazione. Segmentazione. Segmentazione con paginazione. Esempio: Pentium Intel Background
DettagliArchitettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?
Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? E' un dispositivo in grado di Elaborare
DettagliSOLUZIONI 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
DettagliSistemi distribuiti e reti di calcolatori
Sistemi distribuiti e reti di calcolatori 1 Indice Modulazione e trasmissione dei dati Reti di calcolatori Topologia Messaggi e protocolli ISO/OSI Ethernet Architettura client/server Telefonia mobile 2
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliCollegamento dati per accesso ad Internet. Informatica Generale (CdL in E&C), A.A Informatica Generale (CdL in E&C), A.A.
Collegamento dati per accesso ad Internet Sono in uso due protocolli (supportati da Windows e da tutti i S.O. più diffusi) SLIP (Serial Line IP) è il più vecchio ed ha molti inconvenienti PPP (Point to
DettagliInformatica di Base - 6 c.f.u.
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Architettura dei calcolatori III parte Dispositivi
DettagliIl 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
DettagliPolitecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. Modelli Funzionali
Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione Modelli Funzionali 2 Il servizio di comunicazione o Date due o più entità remote o Possiamo descrivere il servizio di comunicazione
DettagliStruttura delle memorie cache
Architettura degli Elaboratori e delle Reti Lezione 28 Struttura delle memorie cache Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 28 1/24
DettagliStruttura interna del sistema operativo Linux
Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04
DettagliLaboratorio di Programmazione di Rete Laurea Triennale in Informatica Applicata Progetto di fine Corso - A.A. 08/09
Laboratorio di Programmazione di Rete Laurea Triennale in Informatica Applicata Progetto di fine Corso - A.A. 08/09 SRM: Un Sistema Tollerante ai Guasti per la Gestione di Risorse Condivise in Una Rete
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliArchitettura dei calcolatori e Software di sistema
Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103
DettagliGerarchia fisica di memoria 1. Gerarchia fisica di memoria 2. Gerarchia fisica di memoria 3. Ricapitolazione di concetti base
Gerarchia fisica di memoria 1 Tempo di accesso Capacità tipica Ricapitolazione di concetti base Sistemi Operativi - T. Vardanega Pagina 92/113 Gerarchia fisica di memoria 2 La cache è suddivisa in blocchi
DettagliIl linguaggio del calcolatore: linguaggio macchina e linguaggio assembly
Il linguaggio del calcolatore: linguaggio macchina e linguaggio assembly Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Richiamo sull
DettagliIspirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).
RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria
DettagliLa 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
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 1 Martedì 11-10-2016 1 Introduzione Un sistema operativo è un software
DettagliArchitettura di rete. Modelli di Riferimento: TCP/IP e OSI. Modello di riferimento OSI. Modelli di riferimento. architettura di rete
I semestre 02/03 Modelli di Riferimento: TCP/IP e OSI Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Architettura di rete architettura di rete insieme delle specifiche funzionali
DettagliArchitettura dei calcolatori
Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Architettura dei calcolatori 2 Cos'è un computer?
DettagliSistemi operativi e distribuiti
Sistemi operativi e distribuiti La memoria Indirizzi fisici e indirizzi logici Importante separazione di concetti Ci permette di separare la parte software da la parte hardware Indirizzo logico (o virtuale):
DettagliArchitettura 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 sterbini@di.uniroma1.it Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
DettagliChe cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione
Che cos e l Informatica Scienza dell elaborazione dell informazione Informatica generale non si riduce all utilizzo di strumenti (e.g. linguaggi di programmazione e basi di dati); si occupa del trattamento
DettagliCalcolatori Elettronici Parte VIII: linguaggi assemblativi
Anno Accademico 2013/2014 Calcolatori Elettronici Parte VIII: linguaggi assemblativi Prof. Riccardo Torlone Universita di Roma Tre Linguaggi di Programmazione Linguaggi ad alto livello Maggiore espressività
DettagliMacchine Astratte. Luca Abeni. February 22, 2017
Macchine Astratte February 22, 2017 Architettura dei Calcolatori - 1 Un computer è composto almeno da: Un processore (CPU) Esegue le istruzioni macchina Per fare questo, può muovere dati da/verso la memoria
DettagliGerarchia di Memoria e Memorie Cache. ma rallenta R / nw. Qui : modi di aumentare velocità di R / nw. dati e codice non tutti uguali
Gerarchia di Memoria e Memorie Cache Memoria virtuale: comodità + sicurezza ma rallenta R / nw Qui : modi di aumentare velocità di R / nw Osservazione: dati e codice non tutti uguali alcuni si usano poco
DettagliCommutazione di pacchetto
Commutazione di pacchetto Tecniche di commutazione Le principali sono: Commutazione di circuito Rete telefonica Commutazione di pacchetto Servizio datagram Servizio orientato alla connessione Esempi di
DettagliIl processore. Istituzionii di Informatica -- Rossano Gaeta
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
DettagliDispositivi di I/O. Dispositivi di I/O. Prestazioni degli hard disk. Dispositivi di I/O (2) Architetture dei Calcolatori (lettere A-I)
Dispositivi di I/O Architetture dei Calcolatori (lettere A-I) Dispositivi di I/O Un dispositivo di I/O è costituito da due componenti: Il dispositivo fisico effettivo (disco, stampante, mouse, video, )
DettagliCAP9. Device drivers
Struttura interna del sistema operativo Linux CAP9. Device drivers Device drivers Gestori di periferiche Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici
DettagliIndirettezza. Fetch/Execute. Fetch/Execute. Introduzione della Indirettezza (indirect)
Ciclo esecutivo delle istruzioni: Fetch/Execute Lo avete visto nel corso di Introduzione alle Architetture degli Elaboratori Stallings, Capitolo 3 Ne vediamo una versione revisionata Indirettezza Per recuperare
DettagliLE RETI DI COMPUTER. Il modello ISO/OSI Prima parte
LE RETI DI COMPUTER Il modello ISO/OSI Prima parte I MODELLI PER LE RETI All i izio dell era i for ati a, la gestio e delle comunicazioni tra sistemi si era rilevata uno dei problemi più grandi, soprattutto
DettagliArchitettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architettura e funzionamento del calcolatore 20 Pier Luca Montessoro (si veda la nota di copyright
Dettagli06/05/2009. Caratteristiche desiderabili Ampia capacità Velocità Economicità
Sistema di Memoria Caratteristiche desiderabili Ampia capacità Velocità Economicità 1 Memoria Cache L'idea alla base della memoria cache nasce dalla semplice osservazione che la memoria centrale (dove
DettagliValutazione 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
DettagliValutazione 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
DettagliLo strato di applicazione in Internet
Lo strato di applicazione in Internet Prof. Ing. Carla Raffaelli a.a. 2004/2005 Protocolli applicativi Sono i protocolli utilizzati dalle applicazioni per scambiarsi informazioni Esempi: HTTP per il web,
DettagliLa memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni
La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo
DettagliInformatica giuridica
Informatica giuridica Corso di laurea in Scienze dei Servizi giuridici Corso di laurea magistrale in Giurisprudenza A.A. 2015/16 L architettura hardware degli elaboratori La scheda madre Memoria principale
DettagliSistemi a Microprocessore
Corso di Laurea Ingegneria dell Informazione Sistemi a Microprocessore Sistemi multicore A.A. 2007-2008 Prof. Ing. Ivan Bruno Sistemi a Microprocessore La Pipeline 1 La pipeline Il concetto di pipeline
DettagliAccesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.
< < } } Lezione 5 e 6 Accesso a memoria A questo livello di astrazione, la memoria viene vista come un array di byte Per ogni richiesta di un dato ad un certo indirizzo, la CPU ottiene un numero di byte
DettagliI circuiti dei calcolatori, le memorie, i bus. I fondamenti della rappresentazione dell informazione e della sua trasmissione ed elaborazione.
I circuiti dei calcolatori, le memorie, i bus. I fondamenti della rappresentazione dell informazione e della sua trasmissione ed elaborazione. Dispensina per gli studenti di Ingegneria Gestionale. A.A.
DettagliLivello logico digitale bus e memorie
Livello logico digitale bus e memorie Principali tipi di memoria Memoria RAM Memorie ROM RAM (Random Access Memory) SRAM (Static RAM) Basata su FF (4 o 6 transistor MOS) Veloce, costosa, bassa densità
DettagliSistemi Operativi: Concetti Introduttivi
Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione
DettagliGeneralità sui protocolli Tecniche di multiplazione Tecniche di accesso Tecniche di commutazione
Generalità sui protocolli Tecniche di multiplazione Tecniche di accesso Tecniche di commutazione Introduzione Introduzione La comunicazione tra due o più utenti avviene tramite un canale detto canale di
DettagliInfluenza 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
DettagliCorso 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