Forskjellen mellom CPU og GPU

CPU vs GPU

CPU, akronym for Central Processing Unit, er hjernen til et databehandlingssystem som utfører "beregninger" gitt som instruksjoner gjennom et dataprogram. Derfor har en CPU bare mening når du har et programmerbart system som er "programmerbart" (slik at det kan utføre instruksjoner), og vi bør merke at CPU er den "sentrale" behandlingsenheten, enheten som styrer de andre enhetene / deler av et databehandlingssystem. I dagens sammenheng er en CPU typisk plassert i en enkelt silisiumbrikke også kjent som en mikroprosessor. På den annen side er GPU, akronymet for Graphics Processing Unit, designet for å avlaste beregningsintensiv grafikkbehandlingsoppgaver fra CPU. Det endelige målet med slike oppgaver er å formidle grafikken til en visningsenhet som en skjerm. Gitt at slike oppgaver er velkjente og spesifikke, behøver de ikke i hovedsak å være programmert, og i tillegg er slike oppgaver iboende parallelle på grunn av displayenhetens karakter. Igjen, i den nåværende sammenhengen, mens de mindre dyktige GPUene vanligvis er plassert i samme silisiumbrikke hvor du finner CPU-en (dette oppsettet kalles integrert GPU), er de mer kapable, kraftige GPUene funnet i sin egen silisiumbrikke, vanligvis på et eget PCB (trykt kretskort).

Hva er CPU?

Begrepet CPU brukes i databehandlingssystemer i mer enn fem tiår nå, og det var den eneste prosessorenheten i de tidlige datamaskiner inntil "andre" prosesseringsenheter (for eksempel GPUer) ble introdusert for å komplementere prosessorkraften. De to hovedkomponentene til en CPU er dens aritmetiske logiske enhet (aka ALU) og kontrollenhet (aka CU). ALU av en CPU er ansvarlig for de aritmetiske og logiske operasjonene til databehandlingssystemet, og CU er ansvarlig for å hente instruksjonsprogrammet fra minnet, dekode dem og instruere andre enheter som ALU for å utføre instruksjonene. Derfor er kontrollenheten til CPUen ansvarlig for å bringe ære for CPU å være den "sentrale" prosessorenheten. CU for å hente instruksjonene fra minnet, må instruksjonene lagres som programmer i minnet, og derfor er slik instruksystem også kjent som "lagrede programmer". Det vil være klart at CU ikke vil utføre instruksjonene, men vil lette det samme ved å kommunisere med de rette enhetene som ALU. 

Hva er GPU (aka VPU)?

Begrepet Graphics Processing Unit (GPU) ble introdusert på slutten av nittitallet av NVIDIA, et GPU-produksjonsfirma, som hevdet å ha markedsført verdens første GPU (GeForce256) i 1999. Ifølge Wikipedia, på tidspunktet for GeForce256, definerte NVIDIA GPU som Følgende: "En-chip prosessor med integrert transformasjon, belysning, trekantoppsett / klipping og rendering motorer som er i stand til å behandle minst 10 millioner polygoner per sekund". Par år senere lanserte NVIDIAs konkurrerende ATI Graphics, et annet lignende selskap, en lignende prosessor (Radeon300) med begrepet VPU for Visual Processing Unit. Men som det er klart at begrepet GPU er blitt mer populært enn begrepet VPU. 

I dag brukes GPUer overalt, for eksempel i innebygde systemer, mobiltelefoner, datamaskiner og bærbare datamaskiner og spillkonsoller. Moderne GPUer er ekstremt kraftige i manipulering av grafikk, og de gjøres programmerbare slik at de kan tilpasses ulike situasjoner og applikasjoner. Men selv nå, er typiske GPUer programmert på fabrikken gjennom det som kalles fastvare. Generelt er GPUer mer effektive enn CPUer for algoritmer der prosessering av store databaser utføres parallelt. Det forventes, siden GPUer er designet for å manipulere datagrafikk, som er ekstremt parallelle i naturen. 

Det er også dette nye konseptet som kalles GPGPU (General Purpose computing on GPU), for å utnytte GPUer til å utnytte datal parallelisme som er tilgjengelig i enkelte applikasjoner (for eksempel bioinformatikk) og derfor utføre ikke-grafisk behandling i GPU. Imidlertid vurderes de ikke i denne sammenligningen. 

Hva er forskjellen mellom CPU og GPU?

• Mens begrunnelsen bak distribusjonen av en CPU er å fungere som hjernen i et databehandlingssystem, blir en GPU introdusert som en komplementær prosesseringsenhet som håndterer den beregnende intensiv grafikkbehandling og -behandling som kreves av oppgaven med å projisere grafikk på displayet enheter. 

• I naturen er grafisk prosessering iboende parallell og kan derfor lett parallelliseres og akselereres.

• I en periode med flerkjernesystemer er CPUer designet med bare noen få kjerner som kan håndtere noen programvaretråder, som kan utnyttes i et applikasjonsprogram (instruksjon og trådnivåparallellisme). GPUer er designet med hundrevis av kjerner, for å utnytte tilgjengelig parallellitet.