Possibile duplicato:
qual è la differenza tra proc multicore e sistema multiproc?
Qual è la differenza tra MultiCore e MultiProcessor per favore?
Possibile duplicato:
qual è la differenza tra proc multicore e sistema multiproc?
Qual è la differenza tra MultiCore e MultiProcessor per favore?
Risposte:
Una CPU , o Central Processing Unit, è ciò che viene generalmente chiamato processore. Un processore contiene al suo interno molte parti discrete, come una o più cache di memoria per istruzioni e dati, decodificatori di istruzioni e vari tipi di unità di esecuzione per eseguire operazioni aritmetiche o logiche.
Un sistema multiprocessore contiene più di una di queste CPU, consentendo loro di lavorare in parallelo. Questo si chiama SMP o Symmetric MultiProcessing.
Una CPU multi core ha più core di esecuzione su una CPU. Ora, questo può significare cose diverse a seconda dell'architettura esatta, ma fondamentalmente significa che un certo sottoinsieme dei componenti della CPU è duplicato, in modo che più "core" possano lavorare in parallelo su operazioni separate. Questo si chiama CMP, Multiprocessing a livello di chip.
Ad esempio, un processore multicore può avere una cache L1 e un'unità di esecuzione separate per ciascun core, mentre ha una cache L2 condivisa per l'intero processore. Ciò significa che mentre il processore ha un grande pool di cache più lenta, ha memoria veloce separata e unità artitmetiche / logiche per ciascuno dei diversi core. Ciò consentirebbe a ciascun core di eseguire operazioni contemporaneamente agli altri.
Esiste anche un'ulteriore divisione, chiamata SMT , Multithreading simultaneo. È qui che viene duplicato un sottoinsieme ancora più piccolo dei componenti di un processore o core. Ad esempio, un core SMT potrebbe avere risorse di pianificazione dei thread duplicate, in modo che il core assomigli a due "processori" separati per il sistema operativo, anche se ha un solo set di unità di esecuzione. Un'implementazione comune di questo è Hyperthreading di Intel.
Quindi, potresti avere un sistema multiprocessore, multicore, multithread. Qualcosa come due processori quad-core, hyperthreaded ti darebbe 2x4x2 = 16 processori logici dal punto di vista del sistema operativo.
Carichi di lavoro diversi beneficiano di diverse configurazioni. Un carico di lavoro a thread singolo eseguito su una macchina per lo più monouso beneficia di un sistema single core / cpu molto veloce. I carichi di lavoro che beneficiano di sistemi altamente parallelizzati come le configurazioni SMP / CMP / SMT includono quelli che hanno molte piccole parti su cui è possibile lavorare contemporaneamente o sistemi che vengono utilizzati per molte cose contemporaneamente, come un desktop utilizzato per navigare in Internet, giocare a un gioco Flash e guardare un video tutto in una volta. In generale, l'hardware in questi giorni tende sempre più verso architetture altamente parallele, poiché la maggior parte delle velocità raw singole CPU / core sono "abbastanza veloci" per i carichi di lavoro comuni nella maggior parte dei modelli.
Tutti hanno dato abbastanza spiegazioni. Ancora se non capisci. Dai un'occhiata a questo:
un processore multi-core contiene due o più core in un unico pacchetto fisico.
un sistema multiprocessore è un sistema che contiene più di un processore fisico. ciascuno di questi processori può contenere più core (come ha risposto WoodE).
per quanto riguarda il loro confronto:
in un processore multi-core ciascuno dei core è generalmente più lento (in velocità raw) rispetto a un processore single-core veloce. Inoltre, tutti i core di quel processore condividono lo stesso bus di sistema e la stessa memoria principale. Tuttavia, per la maggior parte delle attività quotidiane questo non è un problema evidente e per la maggior parte degli utenti il sistema si sentirà più veloce in quanto sono in grado di svolgere attività più semplici contemporaneamente.
in un sistema a più processori le prestazioni saranno aumentate nei casi in cui vengano eseguite più attività ad alta intensità. a seconda della scheda madre ciò può essere dovuto al fatto che ciascun processore avrà il proprio bus e / o memoria principale dedicati, consentendo loro di utilizzare tutte le funzionalità di ciascuno per tali compiti.
un sistema multi-core multi-processore sarebbe una fusione di pro e contro di ciascuno.
Inoltre, man mano che vengono sviluppati più programmi multi-thread (un programma in grado di dire al processore di lavorare su più di un'attività alla volta), gli svantaggi di un processore multi-core diminuiranno.
Dal punto di vista desktop / laptop, il multiprocessore ha due o più CPU separate in una macchina.
Il multi-core ha più core di elaborazione sullo stesso chip, essenzialmente più CPU su un bit di silicio. Per essere considerato multi-core ogni core dovrebbe essere essenzialmente una CPU completa - il fatto che anche i primi chip Pentium presentassero più unità di calcolo di interi (consentendo una pipeline più efficiente) non conta.
Ovviamente potresti avere una disposizione multi-core multi-processore, con più di un processore multi-core nella stessa macchina.
Pro e contro possono essere complicati in quanto ci sono molte variabili da considerare, ma alcune differenze notevoli sono:
In termini di base, un processore multicore è un singolo processore con più core (quad-core ha 4 core, ad esempio) dove un sistema multiprocessore contiene più di un processore sulla scheda madre (che a sua volta può anche essere multicore).
Quando si tratta di pro e contro di ciascuno diventa un po 'più complicato.
Modifica: correzione ortografica.
Multicore è più core in un solo dado . I multiprocessori sono matrici multiple.
per quanto ne so, un core è all'interno di un processore, quindi multi-core significherebbe un singolo processore potente, multi processore è più processori su una scheda madre (immagino che i problemi di riscaldamento siano inferiori, o forse anche un payload condiviso equivale a prestazioni migliori) non sono sicuro, ma da quello che ho letto ho pensato che fosse accurato