Hyper-Threading
Hyper-threading is een functie van een processor waarmee één processorkern meerdere proces-threads tegelijk kan uitvoeren. Een CPU die hyper-threading ondersteunt, splitst elk van zijn fysieke processorkernen op in twee virtuele kernen. Hierdoor werkt een computer efficiënter, omdat deze zwaardere toepassingen kan uitvoeren. Hyper-threading is ontwikkeld door Intel en wordt in veel van hun processors gebruikt. AMD gebruikt een vergelijkbare technologie in zijn processors, die Simultaneous Multithreading wordt genoemd.
Elke processorkern in een CPU bevat een aantal uitvoeringseenheden die afzonderlijke berekeningen uitvoeren, zoals vermenigvuldigen of optellen. Zonder hyper-threading kan elke eenheid slechts één thread van een proces tegelijk uitvoeren. Afhankelijk van welke berekeningen nodig zijn, zullen veel van die uitvoeringseenheden daardoor niet worden gebruikt. Met hyper-threading kunnen twee afzonderlijke threads tegelijk worden uitgevoerd door twee threads te koppelen die verschillende berekeningen nodig hebben. Threads op deze manier parallel uitvoeren is niet zo snel als het gebruik van twee fysieke kernen, maar wel efficiënter dan één thread tegelijk uitvoeren.
Hoewel hyper-threading ervoor kan zorgen dat een computer efficiënter werkt, is ondersteuning nodig van het besturingssysteem van de computer en andere software. Eerst wijst het besturingssysteem aan elke fysieke processorkern twee adressen voor virtuele kernen toe. Vervolgens wijst het threads toe op een manier die berekeningen over de virtuele kernen verdeelt en de efficiëntie maximaliseert.
Om van hyper-threading te profiteren, moet een programma zo zijn geschreven dat het zijn taken opsplitst in afzonderlijke threads die gelijktijdig kunnen worden uitgevoerd. Als een programma slechts één thread van een proces tegelijk heeft, kan het geen tweede thread naar de andere virtuele kern sturen. Maar zelfs als een computer een toepassing met één thread uitvoert, kan deze tegelijkertijd threads van andere toepassingen uitvoeren. Hierdoor werkt een computer sneller bij multitasking.
NOTE: Hyper-threading is technisch complexer en vereist meer energie dan een vergelijkbare processor zonder hyper-threading. Intel gebruikt hyper-threading doorgaans alleen voor zijn krachtigere processors.
Test je kennis