In computers zijn er twee verschillende processors, een CPU en een GPU. Een CPU, of Central Processing Unit, is de belangrijkste kern van een computer en verwerkt de overgrote meerderheid van de gegevens die nodig zijn om de computer te laten werken. Een GPU of Graphics Processing Unit is een secundaire processor die voornamelijk wordt gebruikt voor grafische verwerking.
CPU-ontwerp
Een CPU is ontworpen met een relatief laag aantal verwerkingskernen, met een focus op seriële verwerking met lage latentie. Dit betekent dat CPU's zijn ontworpen om een reeks taken zo snel mogelijk uit te voeren. De komst van multi-core CPU's heeft hen in staat gesteld om meerdere bewerkingen tegelijkertijd uit te voeren, waar de werkbelasting dit toelaat.
In het geval van een multi-core CPU kunnen applicaties profiteren van het gelijktijdig uitvoeren van meerdere stappen voor hun logica. Dit kan een verdubbeling of meer van de verwerkingssnelheid opleveren, afhankelijk van het aantal kernen en of de programmalogica van al deze kernen kan profiteren
In veel gevallen moet de logica van een enkel proces op volgorde worden voltooid en kan het niet worden geparalleliseerd over meerdere CPU-kernen. In dit geval is er nog steeds een snelheidsverhoging te zien ten opzichte van een CPU met één kern, aangezien het programma een speciale verwerkingskern kan hebben, in plaats van de bron met de rest van het systeem te moeten delen.
GPU-ontwerp
Een GPU is ontworpen met een veel groter aantal cores en werkt doorgaans op lagere snelheden, voornamelijk om redenen van warmtebeheer. Het grote aantal verwerkingskernen is omdat GPU's zijn geoptimaliseerd voor parallelle verwerking en een zeer hoge doorvoer.
GPU's worden meestal gebruikt voor het weergeven van afbeeldingen, vooral in videogames. In dit scenario moet een GPU een hele scène vele malen per seconde weergeven om de ervaring te laten werken. De verwerkingskracht die nodig is om afzonderlijke grafische elementen te verwerken is relatief laag, maar er moeten duizenden processen per frame worden uitgevoerd en vervolgens zijn er tientallen frames per seconde nodig.
CPU's en GPU's in computers
Alle computers hebben een vorm van GPU, omdat deze nodig is om iets op het scherm weer te geven. In budget- en sommige mid-tier-systemen wordt deze taak over het algemeen uitgevoerd door een geïntegreerde grafische chip met een relatief laag vermogen. Deze chip is ingebouwd in de CPU, maar gebruikt zijn eigen verwerkingskernen om grafische workloads uit te voeren.
Op computers met een hoger vermogen, met name computers die zijn ontworpen voor grafische workloads, is de GPU-processor gescheiden op een afzonderlijke grafische kaart. In deze configuratie is er meer ruimte voor meer cores en andere componenten. Bovendien zorgt het scheiden van de twee primaire warmtebronnen ervoor dat ze beide beter kunnen worden gekoeld, waardoor de snelheden verder worden verhoogd.
Discrete GPU's kunnen ook worden gebruikt voor andere taken dan grafische verwerking, aangezien bepaalde workloads ook geschikt zijn voor de hoge doorvoer en parallelliteit van een GPU. Machine learning en sommige wetenschappelijke workloads worden bijvoorbeeld vaak uitgevoerd op GPU's.