La differenza tra GPU e CPU


12

So cos'è una CPU (penso). È la cosa che misura la velocità in GigaHertz (oggigiorno).

Tuttavia, si sente molto su una GPU e si lascia che la GPU prenda il sopravvento, non lasciando che sia la CPU, ma la GPU a farlo, il rendering basato su GPU, ecc ...

Che cos'è comunque questa GPU? Come posso accedervi e usarlo a mio vantaggio? Cosa mi sto perdendo qui?


2
Err ... questa non è un'ottima definizione di CPU. ;)
Mateen Ulhaq,

Risposte:


17

La GPU è l'unità di elaborazione grafica. È la CPU della scheda video.

Tradizionalmente la CPU ha eseguito tutta l'elaborazione grafica fino a quando i produttori di schede video hanno iniziato a includere le GPU sugli adattatori di visualizzazione. La GPU era un hardware dedicato simile alla vecchia FPU (unità a virgola mobile che era dedicata all'esecuzione di routine matematiche avanzate più velocemente della CPU), in grado di eseguire routine grafiche comuni molto velocemente. (In realtà le GPU sono arrivate con la mossa dei produttori di schede video per incorporare l'accelerazione grafica nella scheda invece di richiedere una scheda separata, proprio come la funzione delle FPU è stata infine incorporata direttamente nelle CPU.)

Alla fine, le GPU hanno superato le CPU in modo che un processore grafico avesse effettivamente più transistor, funzionasse più velocemente (e più caldo) e così via. I produttori di schede grafiche hanno capito che la GPU era ora un hardware davvero potente che è spesso inattivo (ad esempio durante la navigazione in Internet, la modifica di documenti, ecc.) Quindi, a partire dall'X1300, le schede ATI includevano AVIVO , che avrebbe consentito l'utente deve eseguire il software di conversione video sul processore della scheda video invece di farlo solo sulla CPU più lenta. Nvidia ha risposto con CUDA , la prima vera GPGPU che in pratica è un modo per utilizzare le GPU su una scheda video come processori supplementari di uso generale che possono essere utilizzati per qualsiasi scopo, non solo per scopi grafici o video.

Poiché una GPU è altamente ottimizzata per eseguire calcoli avanzati come l'aritmetica in virgola mobile, l'aritmetica della matrice e simili, possono eseguire funzioni come la conversione video, la post-elaborazione, nonché attività come BOINC o Folding @ Home molto meglio rispetto a una sola CPU.

Un computer moderno può essere piuttosto potente, con una CPU multi-core e schede video multi-GPU che possono fungere da super CPU, la potenza di elaborazione dei computer di oggi è davvero incredibile. Ancora meglio, i produttori stanno rendendo i chip più efficienti dal punto di vista energetico, in modo che siano davvero potenti, ma possono anche assorbire la minore potenza e generare il minor calore possibile quando non sono necessari, dandoci così il meglio di entrambi i mondi!


Solo un commento, ma per le attività BOINC e Folding @ Home, CPU e GPU sono molto diverse. La maggior parte delle attività sono effettivamente migliori su una CPU perché implicano dinamiche molecolari complesse che sono difficili da simulare su una GPU. Allo stesso modo, ci sono attività che possono beneficiare del folle parallelismo di una GPU. Per questo motivo, si tende a vedere una GPU che completa le attività a una velocità superiore rispetto alle CPU, ma nasconde il fatto che ci sono molte attività che possono essere eseguite solo su una CPU (simulazioni di volo lunghe, ecc.). Ma dire che queste attività sono più adatte per una GPU non è corretto.
foresta,

13

La GPU è l'unità di elaborazione grafica. È essenzialmente la CPU della tua scheda video (la CPU è Central Processing Unit, il "cervello", o processore, di un computer). Le schede video al giorno d'oggi sono così complesse che sono fondamentalmente dei computer in sé, con memoria, bus e processori propri.

Storicamente le GPU sono state relativamente speciali, progettate per la massima potenza quando si eseguono una serie discreta di operazioni grafiche su particolari tipi di dati primitivi (vertici, pixel, ecc.). Tuttavia, aziende come Intel, nVidia e ATI stanno iniziando a spingere la busta con componenti GPU più generici, rendendo più semplice che mai per gli sviluppatori software utilizzare la potenza di elaborazione aggiuntiva disponibile sulla scheda video per eseguire operazioni non grafiche. Combinati con cose come CUDA e altri linguaggi GPU specializzati, questi nuovi chip offrono molte possibilità.

GPGPU è una sorta di quartier generale per il calcolo GPU per scopi generici. Come utente, piuttosto che come programmatore, l'intera cosa "offload sulla GPU" non ti riguarda davvero a questo punto, al di fuori di una situazione in cui useresti un software progettato in quel modo (non molti utenti finali il software esiste al momento).


4

La CPU è l'unità centrale di elaborazione (probabilmente il tuo processore Intel o AMD).

La GPU è l'unità di elaborazione grafica sulla scheda grafica. Vedere:

http://en.wikipedia.org/wiki/Graphics_processing_unit

Sono difficili da programmare ma hanno il vantaggio di essere massicciamente paralleli, quindi possono svolgere alcuni compiti molto più velocemente della CPU.

Nuove iniziative come CUDA di Nvidia sperano di liberare questo potenziale facilitando la programmazione. Vedere:

http://en.wikipedia.org/wiki/CUDA


0

Una GPU è solo una CPU dedicata all'elaborazione grafica. Una CPU può elaborare praticamente qualsiasi cosa, ma una GPU è su misura per il calcolo delle immagini 3D: le persone stanno iniziando a sfruttare la GPU perché è molto, molto brava nell'elaborazione parallela, il che significa che il software che fa molte cose che non dipendono da a vicenda possono eseguirlo attraverso la scheda grafica per una preformance molto migliore.

Inoltre, non viene mai normalmente utilizzato, quindi sfruttare il suo potere non può davvero far male.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.