Skip to main content

Cos'è il multiprocessing simmetrico?

Il multiprocessing simmetrico (SMP) è un tipo di architettura per computer in cui due o più unità di elaborazione centrali (CPU) condividono un collegamento comune alla stessa memoria.È stato originariamente sviluppato negli anni '60 ed è stato utilizzato in varie configurazioni da allora.Qualsiasi processore in un sistema SMP può accedere ed eseguire software da qualsiasi parte della memoria condivisa.La popolarità di questa configurazione è fluttuata nel corso dell'anno poiché la tecnologia si è evoluta e i mercati sono cambiati, ma è ancora tra la forma più comune di tecnologie multiprocessore.

SMP ha avuto origine nei primi anni '60 come modo per collegare più processori su un alto livello-Speed Connection e consentire loro di avere accesso allo stesso set di moduli di memoria.Poiché la memoria è condivisa tra i processori, l'hardware SMP può essere più economico di altre tecnologie che possono dedicare la memoria a ciascun processore.Sono state utilizzate molte varianti di questa configurazione, con alcune che utilizzano una semplice traversa per collegare due processori, mentre altri hanno impiegato interconnessioni più sofisticate tra ben 32 processori.Qualsiasi sistema di multiprocessing simmetrico può essere trattenuto dalla velocità e dalla capacità di questa interconnessione;Un sistema con 32 processori non sarà necessariamente 32 volte più veloce perché il collegamento comune tra questi processori e la memoria del sistema può essere congestionato.

Un vantaggio chiave che il multiprocessing simmetrico ha oltre altre tecniche è che un sistema SMP tratta più o meno tutti i suoi processori allo stesso modo, dando così ciascuno la stessa qualità di accesso ad altri hardware del computer.Ciò significa che qualsiasi processore nel sistema può leggere ed eseguire istruzioni dai programmi software indipendentemente da dove risiedono tali programmi nella memoria del computer.Molti programmi software sono ora divisi in blocchi più piccoli noti come thread;Quando questi programmi vengono eseguiti su un sistema SMP, ogni processore può eseguire un thread del programma, aumentando così ulteriormente le prestazioni complessive.Il software a livello di utente non deve essere modificato per essere eseguito su un sistema che supporta il multiprocessing simmetrico, ma il sistema operativo sottostante deve supportare la tecnologia.

La popolarità del multiprocessing simmetrico è diminuita e incerata nel corso degli anni man mano che sono state sviluppate altre tecniche e sono state esplorate nuove architetture.La pubblicità sul possibile impatto della tecnologia sul calcolo è emerso nei primi anni '90;Numerose aziende, in particolare i sistemi informatici sequenti, hanno iniziato a specializzarsi nella costruzione di sistemi SMP di fascia alta.Sequent, che è stato acquisito da IBM nel 1999, è stato elogiato per i suoi progetti ma non è mai stato in grado di competere efficacemente con i giganti del settore informatico.Le nuove tecniche di multiprocessing come l'accesso alla memoria non uniforme (NUMA) hanno parzialmente soppiantato SMP in sistemi di fascia alta. I produttori di computer hanno sperimentato il multiprocessing simmetrico nell'hardware a livello di consumo nel corso degli anni;Al di fuori di un costoso hardware degli appassionati, tuttavia, la maggior parte dei personal computer non ha la tecnologia.Le nuove tecniche per rendere i sistemi a CPU singolo più efficienti, come il multithreading simultaneo o "iperthreading", insieme all'ascesa della tecnologia multicore ha aumentato le prestazioni dei computer senza il costo aggiuntivo di SMP.È, tuttavia, possibile combinare queste tecnologie e i più potenti computer desktop possono includere più processori multicore collegati tramite SMP, creando così un sistema con enormi quantità di potenza computazionale.