Il differenza principale tra multicore e multiprocessore è che il il multicore si riferisce a una singola CPU con più unità di esecuzione mentre il multiprocessore fa riferimento a un sistema che ha due o più CPU.
I multicores hanno più core o unità di elaborazione in una singola CPU. Un multiprocessore contiene più CPU. Sia i multicore che i multiprocessori aiutano a velocizzare il processo di elaborazione. Un multicore non richiede configurazioni complesse come un multiprocessore. D'altra parte, un multiprocessore è più affidabile e capace di eseguire più programmi. In breve, un multicore ha una singola CPU mentre un multiprocessore ha molte CPU.
1. Cos'è il Multicore
- Definizione, Funzionalità
2. Che cos'è Multiprocessore
- Definizione, Funzionalità
3. Qual è la relazione tra multicore e multiprocessore
- Schema dell'associazione
4. Qual è la differenza tra multicore e multiprocessore
- Confronto tra le principali differenze
Multicore, multiprocessore, sistema operativo
La CPU (Central Processing Unit) o il processore è il cervello del computer. Gestisce tutte le funzionalità degli altri componenti. L'unità di esecuzione della CPU è chiamata core. Legge ed esegue le istruzioni. Le istruzioni possono essere un calcolo, un'istruzione di trasferimento dati, un'istruzione di ramo, ecc. Una CPU con un singolo core è chiamata un uniprocessore. Quando un sistema ha più di un core, è chiamato multicore. Una CPU con due core è chiamata processore dual-core mentre un processore con quattro core è chiamato processore quad-core. Inoltre, i computer ad alte prestazioni possono avere da sei a otto core.
Figura 1: Multicore
Il vantaggio principale di un multicore è che è in grado di eseguire più istruzioni contemporaneamente su core separati. Aumenta la velocità generale e implementa anche il calcolo parallelo. Complessivamente, il multicore viene utilizzato per applicazioni come sistemi embedded, networking, Digital Signal Processing (DSP) e grafica (GPU).
Un multiprocessore ha due o più CPU o processori. Questi sistemi eseguono più istruzioni allo stesso tempo. Pertanto, aumenta il throughput. Se un processore fallisce, non influisce sul funzionamento degli altri processori. Pertanto, i multiprocessori sono più affidabili.
Figura 2: Multiprocessore simmetrico
I sistemi multiprocessore possono utilizzare la memoria condivisa o la memoria distribuita. In un multiprocessore a memoria condivisa, ogni CPU condivide la memoria principale e le periferiche per eseguire le istruzioni contemporaneamente. In questo tipo di sistemi, tutte le CPU utilizzano lo stesso bus per accedere alla memoria principale. Offre un singolo spazio di memoria per tutte le CPU. La maggior parte delle CPU sarà inattiva in quanto vi è più traffico per accedere al bus. Questi multiprocessori sono anche chiamati multiprocessori simmetrici.
Nei multiprocessore a memoria distribuita, ogni CPU ha la propria memoria privata. Ogni CPU può operare su dati locali per eseguire compiti computazionali. Se sono necessari i dati remoti, la CPU può comunicare con altre CPU o accedere alla memoria principale tramite il bus.
Gli ultimi computer hanno più CPU ciascuna con più core per leggere ed eseguire più istruzioni alla volta.
Un multicore è una singola CPU o un processore con due o più unità di elaborazione indipendenti chiamate core che sono in grado di leggere ed eseguire le istruzioni del programma. Multiprocessore è un sistema con due o più CPU che consente l'elaborazione simultanea di programmi.
Multicore esegue un singolo programma più velocemente. D'altra parte, multiprocessore esegue più programmi più velocemente.
I sistemi multiprocessore sono più affidabili dei sistemi multicore. Un multiprocessore ha più CPU. Il fallimento in uno non influirà sulle altre CPU. È più tollerante ai difetti.
I sistemi multicore hanno meno traffico rispetto a un multiprocessore poiché tutti i core sono integrati in un singolo chip.
La differenza tra multicore e multiprocessore è che il multicore si riferisce a una singola CPU con più unità di esecuzione mentre il multiprocessore fa riferimento a un sistema che ha due o più CPU. I computer moderni hanno più CPU ciascuna con più core.
1. "Processore multi-core". Wikipedia, Wikimedia Foundation, 25 luglio 2018, disponibile qui.
1. "Cc-NUMA Multi-Core" di Ferry24.Milan - Opera propria (CC BY-SA 3.0) via Commons Wikimedia
2. "SMP - Symmetric Multiprocessor System" di Ferry24.Milan - Opera propria (CC BY-SA 3.0) via Commons Wikimedia