Concetti Chiave
- La legge di Moore è in difficoltà a causa della diminuzione delle dimensioni dei transistor e di problemi fisici come dissipazione del calore e limiti della velocità della luce.
- Per migliorare le prestazioni, si impiegano sistemi di calcolo parallelo, sfruttando diverse modalità di parallelismo come multi-threading e architetture multi-core.
- I coprocessori eseguono istruzioni specializzate sotto il controllo di un processore principale, includendo GPU e processori di rete.
- I multiprocessori condividono una memoria fisica e richiedono un'alta interazione tra processori, mentre i multicomputer hanno memorie distribuite e comunicano tramite rete.
- Il parallelismo a livello di istruzioni, come pipelining e architetture superscalari, rappresenta un altro approccio per ottimizzare le prestazioni nei sistemi di calcolo.
Sfide della legge di Moore
La legge di Moore non durerà ancora per molto meno, a meno di una rivoluzione scientifica, poiché i transistor perderanno la loro funzionalità a causa del ridotto numero di atomi di cui saranno composti, inoltre ci sono altri problemi fisici come dissipazione del calore, rumore e limite della velocità della luce che impediscono l’aumento della frequenza. Per migliorare le prestazioni sono quindi usate in parallelo più unità di calcolo, modalità che ha ancora possibilità di sviluppo. I diversi tipi di parallelismo:
Fattori che caratterizzano un sistema parallelo sono:
- natura e numero degli elementi di calcolo
- natura e numero degli elementi di memoria
- modalità di interconnessione, statica (legami fissi) o dinamica (legami definiti da switch che instrada le richieste)
- parallelismo a livello di istruzioni: pipelining e architetture superscalari
- multi-threading: la CPU esegue contemporaneamente due thread (parti di programma) come se ci fossero due CPU virtuali
- multi-core: consente un multi-threading reale
- più core eterogenei nel chip: nello stesso chip più core hanno funzionalità specializzate
Coprocessore = processore indipendente che esegue istruzioni specializzate sotto il controllo del processore principali, i più diffusi:
- processori di rete
- critto processori
- processori grafici (GPU)
Multiprocessori = sistemi a memoria condivisa, in cui le CPU condividono una memoria fisica, in cui ogni processo può scrivere o leggere tutta la memoria, deve esserci un’elevata capacità di interazione tra i processori (strongly coupled); c’è una sola copia del Sistema Operativo usato.
Multicomputer = ci sono più CPU, ognuna dotata di una propria memoria (memoria distribuita), in cui è indispensabile un meccanismo di comunicazione (routing) lungo una rete di interconnessione. Sono sistemi loosely coupled. In ogni CPU c’è una copia del Sistema Operativo
Domande da interrogazione
- Quali sono le principali sfide che la legge di Moore deve affrontare?
- Quali sono i diversi tipi di parallelismo utilizzati per migliorare le prestazioni dei sistemi di calcolo?
- Qual è la differenza tra multiprocessori e multicomputer?
La legge di Moore è minacciata dalla diminuzione della funzionalità dei transistor a causa del ridotto numero di atomi, oltre a problemi fisici come la dissipazione del calore, il rumore e il limite della velocità della luce, che ostacolano l'aumento della frequenza.
I sistemi di calcolo utilizzano vari tipi di parallelismo, tra cui il parallelismo a livello di istruzioni, il multi-threading, il multi-core e l'uso di core eterogenei, per ottimizzare le prestazioni e gestire carichi di lavoro complessi.
I multiprocessori sono sistemi a memoria condivisa con CPU che condividono una memoria fisica, mentre i multicomputer hanno più CPU con memorie distribuite e richiedono un meccanismo di comunicazione attraverso una rete di interconnessione.