Differenza tra CPU e GPU

CPU vs GPU

CPU, l'acronimo di Central Processing Unit, è il cervello di un sistema informatico che esegue i "calcoli" dati come istruzioni attraverso un programma per computer. Pertanto, disporre di una CPU è significativo solo quando si dispone di un sistema di elaborazione "programmabile" (in modo che possa eseguire istruzioni) e si noti che la CPU è l'unità di elaborazione "centrale", l'unità che controlla le altre unità / parti di un sistema informatico. Nel contesto odierno, una CPU si trova in genere in un singolo chip di silicio noto anche come microprocessore. D'altra parte, GPU, l'acronimo di Graphics Processing Unit, è progettato per scaricare compiti di elaborazione grafica intensamente computazionali dalla CPU. L'obiettivo finale di tali compiti è di proiettare la grafica su un'unità di visualizzazione come un monitor. Dato che tali compiti sono ben noti e specifici, non è necessario che siano programmati e, inoltre, tali attività sono intrinsecamente parallele a causa della natura delle unità di visualizzazione. Ancora una volta, nel contesto attuale, mentre le GPU meno capaci si trovano tipicamente nello stesso chip di silicio dove si trova la CPU (questa configurazione è conosciuta come GPU integrata), le GPU più potenti e potenti si trovano nel proprio chip di silicio, tipicamente su un PCB separato (circuito stampato).

Cos'è la CPU?

Il termine CPU è usato nei sistemi di calcolo per più di cinquant'anni, ed era l'unica unità di elaborazione nei primi computer fino a quando non furono introdotte "altre" unità di elaborazione (come le GPU) per completare la sua potenza di elaborazione. I due componenti principali di una CPU sono la sua Arithmetic Logic Unit (aka ALU) e Control Unit (aka CU). L'ALU di una CPU è responsabile delle operazioni aritmetiche e logiche del sistema informatico, e la CU è responsabile di prelevare il programma di istruzioni dalla memoria, decodificandole e istruendo altre unità come ALU per eseguire le istruzioni. Pertanto, l'unità di controllo della CPU è responsabile del fatto che la gloria della CPU sia l'unità di elaborazione "centrale". La CU per recuperare le istruzioni dalla memoria, le istruzioni devono essere memorizzate come programmi nella memoria e, pertanto, tale sistema di istruzione è noto anche come "programmi memorizzati". Sarebbe chiaro che la CU non eseguirà le istruzioni, ma faciliterà la stessa comunicando con le unità giuste come l'ALU. 

Cos'è la GPU (aka VPU)?

Il termine Graphics Processing Unit (GPU) è stato introdotto alla fine degli anni Novanta da NVIDIA, una società manifatturiera di GPU, che affermava di aver commercializzato la prima GPU al mondo (GeForce256) nel 1999. Secondo Wikipedia, al momento di GeForce256, NVIDIA definiva GPU come il seguente: "un processore a chip singolo con trasformazioni integrate, illuminazione, triangoli di setup / clipping e motori di rendering in grado di elaborare un minimo di 10 milioni di poligoni al secondo". Un paio di anni dopo, la rivale ATI Graphics di NVIDIA, un'altra società simile, ha rilasciato un processore simile (Radeon300) con il termine VPU per Visual Processing Unit. Tuttavia, come è chiaro che il termine GPU è diventato più popolare del termine VPU. 

Oggi le GPU vengono distribuite ovunque, ad esempio nei sistemi embedded, telefoni cellulari, personal computer e laptop e console di gioco. Le moderne GPU sono estremamente potenti nella manipolazione della grafica e sono programmabili in modo che possano essere adattate a diverse situazioni e applicazioni. Tuttavia, anche ora, le GPU tipiche vengono programmate in fabbrica tramite il cosiddetto firmware. Generalmente, le GPU sono più efficaci delle CPU per algoritmi in cui l'elaborazione di grandi blocchi di dati avviene in parallelo. È previsto, dal momento che le GPU sono progettate per manipolare la grafica del computer, che sono di natura estremamente parallela. 

C'è anche questo nuovo concetto noto come GPGPU (General Purpose computing su GPU), per utilizzare GPU per sfruttare il parallelismo dei dati disponibile in alcune applicazioni (come la bioinformatica) e, quindi, eseguire l'elaborazione non grafica in GPU. Tuttavia, non sono considerati in questo confronto. 

Qual è la differenza tra CPU e GPU?

• Mentre il ragionamento alla base della distribuzione di una CPU è quello di agire come il cervello di un sistema informatico, viene introdotta una GPU come unità di elaborazione complementare che gestisce l'elaborazione e l'elaborazione grafica intensiva del calcolo richiesto dal compito di proiettare la grafica sul display unità. 

• Per natura, l'elaborazione grafica è intrinsecamente parallela e, pertanto, può essere facilmente parallelizzata e accelerata.

• Nell'era dei sistemi multi-core, le CPU sono progettate con pochi core in grado di gestire alcuni thread software, che possono essere sfruttati in un programma applicativo (parallelismo delle istruzioni e del livello del thread). Le GPU sono progettate con centinaia di core, per utilizzare il parallelismo disponibile.