CPU-basisprincipes: wat zijn kernen, hyperthreading en meerdere CPU's?

0
86
Jason Fitzpatrick/How-To Geek

Een enkele moderne CPU heeft meestal meerdere cores. Elke kern is zijn eigen processor. Gelijktijdige multi-threading, door Intel Hyper-Threading genoemd, splitst elke fysieke kern in twee logische processors. Elke logische processor laat uw besturingssysteem twee afzonderlijke taken uitvoeren. Een CPU met acht kernen wordt bijvoorbeeld weergegeven als een enkele CPU met 8 kernen en 16 logische processors.

De centrale verwerkingseenheid (CPU) in uw computer doet het rekenwerk — lopende programma's, eigenlijk. Maar moderne CPU's bieden functies zoals meerdere kernen en hyperthreading. Sommige pc's gebruiken zelfs meerdere CPU's. We leggen de verschillen uit en hoe ze werken.

Inhoudsopgave

Wat zijn hyperthreading en simultane multithreading?
Wat zijn CPU-cores?
Zijn alle multi-core CPU-configuraties hetzelfde?
Hoe zit het met meerdere CPU's?

< h2 rol="kop" aria-level="2">Wat zijn Hyper-Threading en Simultane Multithreading?

Gelijktijdige Multithreading (door Intel Hyper-Threading genoemd) stelt een enkele CPU in staat om meerdere taken tegelijkertijd uit te voeren in plaats van opeenvolgend, wat de prestaties in de meeste situaties verbetert.

Hyper-threading was Intel's eerste poging om parallelle berekeningen naar consumenten-pc's te brengen in 2002. De Pentium 4's van die tijd hadden slechts één CPU-kern, dus het kon maar één taak tegelijk uitvoeren & #8212; zelfs als het snel genoeg tussen taken zou kunnen schakelen zodat het op multitasking leek. Hyperthreading — simultaneous multithreading (SMT) genoemd op AMD en andere niet-Intel-processors — geprobeerd om dat goed te maken.

Opmerking: Strikt genomen hebben alleen Intel-processors hyperthreading, maar de term wordt soms in de volksmond gebruikt om te verwijzen naar elke vorm van gelijktijdige multithreading.

Een enkele fysieke CPU-kern met hyperthreading of gelijktijdige multithreading verschijnt als twee logische CPU's voor een besturingssysteem. De CPU is nog steeds een enkele CPU, dus het is een beetje valsspelen. Terwijl het besturingssysteem twee CPU's voor elke kern ziet, heeft de daadwerkelijke CPU-hardware slechts één set uitvoeringsbronnen voor elke kern. De CPU doet alsof hij meer cores heeft dan hij heeft, en gebruikt zijn eigen logica om de programma-uitvoering te versnellen. Met andere woorden, het besturingssysteem wordt misleid om twee CPU's te zien voor elke echte CPU-kern.

Hyper-threading stelt de twee logische CPU-kernen in staat om fysieke uitvoeringsbronnen te delen. Dit kan de zaken wat versnellen — als een virtuele CPU is vastgelopen en wacht, kan de andere virtuele CPU zijn uitvoeringsbronnen lenen. Hyper-threading kan uw systeem versnellen, maar het is lang niet zo goed als het hebben van echte extra kernen.

Hannah Stryker/How-To Geek

Gelukkig is hyperthreading nu slechts een bonus. Terwijl de oorspronkelijke consumentenprocessors met hyperthreading slechts één kern hadden die zich voordeed als meerdere kernen, hebben moderne CPU's nu zowel meerdere kernen als hyperthreading of SMT-technologie. Uw hexa-core CPU met hyper-threading verschijnt als 12 cores voor uw besturingssysteem, terwijl uw octa-core CPU met hyper-threading verschijnt als 16 cores. Hyper-threading is geen vervanging voor extra cores, maar een dual-core CPU met hyper-threading zou beter moeten presteren dan een dual-core CPU zonder hyper-threading.

Wat zijn CPU-kernen?

Oorspronkelijk hadden CPU's een enkele kern. Dat betekende dat de fysieke CPU een enkele centrale verwerkingseenheid had. Om de prestaties te verbeteren, hebben fabrikanten extra “cores,” of centrale verwerkingseenheden. Een dual-core CPU heeft twee centrale verwerkingseenheden, dus het lijkt voor het besturingssysteem als twee CPU's. Een CPU met twee kernen kan bijvoorbeeld twee verschillende processen tegelijkertijd uitvoeren. Dit versnelt uw systeem omdat uw computer meerdere dingen tegelijk kan doen.

In tegenstelling tot hyperthreading zijn hier geen trucs voor — een dual-core CPU heeft letterlijk twee centrale verwerkingseenheden op de CPU-chip. Een quad-core CPU heeft vier centrale verwerkingseenheden, een octa-core CPU heeft acht centrale verwerkingseenheden, enzovoort.

Dit helpt de prestaties drastisch te verbeteren terwijl de fysieke CPU-eenheid klein genoeg blijft om in een enkele socket te passen. Er hoeft slechts een enkele CPU-socket te zijn met een enkele CPU-eenheid erin — niet vier verschillende CPU-sockets met vier verschillende CPU's, die elk hun eigen voeding, koeling en andere hardware nodig hebben. Er is minder latentie omdat de kernen sneller kunnen communiceren, aangezien ze allemaal op dezelfde chip zitten.

De Windows Task Manager laat dit redelijk goed zien. Hier zie je bijvoorbeeld dat dit systeem één daadwerkelijke CPU (socket) en 8 cores heeft. Gelijktijdige multithreading zorgt ervoor dat elke kern eruitziet als twee CPU's voor het besturingssysteem, dus het toont 16 logische processors.

Zijn alle multi-core CPU-configuraties hetzelfde?

Nee, niet alle multi-core CPU-configuraties zijn de dezelfde. Er zijn twee verschillende ontwerpfilosofieën die u tegenkomt als u naar multi-core CPU's kijkt.

Eén type configuratie — en het soort dat al jaren gebruikelijk is in consumenten-pc's — maakt gebruik van meerdere identieke kernen. In deze opstellingen, als je een octa-core systeem hebt, zijn alle acht van die processors krachtige CPU's, en ze zijn allemaal op dezelfde manier geoptimaliseerd.

De andere gebruikt een mix van verschillende kernen (soms een heterogene kernarchitectuur genoemd). Doorgaans gebruiken deze configuraties twee verschillende typen: prestatiekernen en efficiëntiekernen.

Het precieze naamgevingsschema varieert een beetje tussen bedrijven en applicaties, maar het basisidee is hetzelfde. De efficiëntiekernen zijn gereserveerd voor achtergrondtaken en taken met weinig vraag. Deze kernen verbruiken minder stroom. Prestatiekernen zijn precies het tegenovergestelde. Ze verbruiken aanzienlijk meer stroom, maar leveren veel betere prestaties bij veeleisende taken, zoals gamen. De combinatie resulteert in prestaties wanneer u die nodig hebt, maar een lager energieverbruik op de achtergrond.

GERELATEERD: Wat is een onderbezetting van een GPU of CPU, en wanneer moet u dit doen?

Deze heterogene multi-core opstelling (door ARM big.LITTLE genoemd) werd voor het eerst populair bij mobiele telefoons en andere mobiele apparaten vanwege de energiebesparing die ze boden. Als u wilt dat uw telefoon de hele dag meegaat, heeft het geen zin om uw batterij onnodig leeg te laten lopen door de hele tijd een krachtige kern te gebruiken. Intel introduceerde het idee ook in reguliere desktop-CPU's, te beginnen met de Alder Lake-processors.

Hoe zit het met meerdere CPU's?

De meeste computers hebben maar één CPU. Die ene CPU kan meerdere cores of hyper-threading-technologie hebben — maar het is nog steeds slechts één fysieke CPU-eenheid die in een enkele CPU-socket op het moederbord is geplaatst.

GERELATEERD: Waarom u de CPU-kloksnelheid niet kunt gebruiken om computerprestaties te vergelijken

Voordat hyper-threading en multi-core CPU's op de markt kwamen, probeerden mensen extra verwerkingskracht aan computers toe te voegen door extra CPU's toe te voegen. Dit vereist een moederbord met meerdere CPU-sockets. Het moederbord heeft ook extra hardware nodig om die CPU-sockets aan te sluiten op het RAM-geheugen en andere bronnen. Er is veel overhead in dit soort instellingen. Er is extra latentie als de CPU's met elkaar moeten communiceren, systemen met meerdere CPU's meer stroom verbruiken en het moederbord meer sockets en hardware nodig heeft.

Justin Duino/How-To Geek

Systemen met meerdere CPU's zijn niet erg gebruikelijk onder pc's voor thuisgebruikers vandaag. Zelfs een krachtige gaming-desktop met meerdere grafische kaarten heeft over het algemeen maar één CPU. Je vindt meerdere CPU-systemen tussen supercomputers, servers, sommige werkstations en vergelijkbare high-end systemen die zoveel mogelijk rekenkracht nodig hebben.

Hoe meer CPU's of kernen een computer heeft, hoe meer dingen hij tegelijk kan doen, waardoor de prestaties van de meeste taken worden verbeterd. De meeste computers hebben nu CPU's met meerdere kernen — de meest efficiënte optie die we hebben besproken. Je vindt zelfs CPU's met meerdere cores op moderne smartphones en tablets.

De kloksnelheid voor een CPU en zijn IPC (instructies per cyclus) waren vroeger voldoende om de prestaties te vergelijken. Dingen zijn niet meer zo eenvoudig. Een CPU die meerdere kernen en hyperthreading biedt, kan aanzienlijk beter presteren dan een CPU met dezelfde snelheid die geen hyperthreading heeft. En pc's met meerdere CPU's kunnen een nog groter voordeel hebben. Al deze functies zijn ontworpen om pc's in staat te stellen gemakkelijker meerdere processen tegelijkertijd uit te voeren — het verbeteren van uw prestaties bij multitasking of onder de eisen van krachtige apps zoals video-encoders en moderne games.

Natuurlijk is een hoger aantal kernen niet in elke situatie zo belangrijk. Moderne besturingssystemen zijn behoorlijk slim in het opsplitsen van hun taken over meerdere kernen, maar niet alle programma's zijn zo goed geoptimaliseerd. In veel gevallen (vooral bij gamen) worden de prestaties voornamelijk beperkt door de maximale snelheid van een individuele kern in plaats van hoeveel kernen je in totaal hebt. Ga dus niet haasten om een ​​64-core Threadripper CPU te kopen, denkend dat het je een miljard FPS zal opleveren in Call of Duty — dat zal niet.

LEES VOLGENDE

  • › Wat is er nieuw in de update van november 2019 voor Windows 10, nu beschikbaar
  • › Hoe u uw Windows-pc kunt benchmarken: 5 gratis benchmarkingtools
  • › Hoe vaak moet u een nieuwe iPhone kopen?
  • › Controleren welke CPU uw Mac gebruikt
  • › Ryzen 4000: wordt uw volgende gaming-laptop AMD in plaats van Intel?
  • › Linux-scripts laten detecteren dat ze worden uitgevoerd in virtuele machines
  • › Hoe u uw eigen Minecraft-server start voor multiplayer-gaming
  • › De System76 Meerkat is een kleine pc gebouwd voor Linux