- Intel Thread Director analyseert het gedrag van threads in realtime en stuurt het besturingssysteem aan bij de toewijzing tussen P-Cores en E-Cores.
- Technologie vervangt de systeemplanner niet, maar vult deze juist aan met prestatie- en efficiëntiemetingen voor elke workload.
- Windows 11 en moderne Linux-kernels benutten Thread Director optimaal, met aanzienlijke verbeteringen in gaming en virtualisatie.
- Alder Lake, Raptor Lake en Meteor Lake maken gebruik van Thread Director om een hybride architectuur te benutten voor gaming, contentcreatie en servers.
Als je hebt gehoord over Intels nieuwe hybride processors en de term Thread Director je bekend voorkomt, maar je niet helemaal zeker weet wat het precies doet , dan ben je hier aan het juiste adres. Deze technologie is essentieel om te begrijpen waarom Alder Lake, Raptor Lake, Meteor Lake en latere generaties presteren zoals ze doen, met name bij gaming, multitasking en virtualisatie.
Laten we eens nader bekijken hoe Intel Thread Director intern werkt, welke problemen het oplost en wat de beperkingen ervan zijn . Je zult zien dat het geen magie is, noch een verborgen turboknop, maar eerder een onderdeel van een complex systeem waarin het besturingssysteem, de P-cores en de E-cores allemaal een belangrijke rol spelen.
Wat is Intel Thread Director en waarom bestaat het?
Met de komst van de 12e generatie Core-processoren koos Intel voor een hybride architectuur met krachtige P-cores en energiezuinige E-cores . Tot dan toe waren processoren met uitsluitend cores van hetzelfde type de norm in de desktop-pc-wereld, terwijl deze "big.LITTLE"-aanpak typerend was voor mobiele SoCs gebaseerd op de ARM-architectuur.
Deze verandering vormde een ernstig probleem: desktopbesturingssystemen waren niet in staat om onderscheid te maken tussen cores met verschillende kracht en efficiëntie bij het toewijzen van threads en processen . De scheduler zag simpelweg "X cores" en verdeelde de werklast zonder te overwegen welk type core het meest geschikt was voor elke taak.
Om dit probleem aan te pakken, ontwikkelde Intel wat het commercieel Intel Thread Director noemde. Deze technologie is geïntegreerd in de CPU en analyseert het gedrag van processen, waarna het het besturingssysteem adviseert waar deze processen geplaatst moeten worden. Het is belangrijk om te benadrukken dat dit geen vervanging is voor de scheduler van het besturingssysteem, maar eerder een zeer verfijnd en gespecialiseerd hulpmiddel.
In tegenstelling tot wat veel mensen denken, is Thread Director geen aparte chip of een "magische eenheid" in de processor . Het bestaat uit logica en microcode die op de CPU zelf draaien, zeer gedetailleerde telemetriegegevens verzamelen en deze via specifieke interfaces aan het besturingssysteem beschikbaar stellen.
Hoe Thread Director intern werkt
De Thread Director werkt conceptueel als een gecontroleerd speculatief uitvoeringssysteem dat het gedrag van threads evalueert voordat de ideale core wordt gekozen . Hiervoor gebruikt het een van de uitvoeringsthreads van een P-Core in Alder Lake en Raptor Lake, terwijl het in Meteor Lake en latere versies vertrouwt op energiezuinige E-Cores binnen de Tile SoC.
Deze logica bewaakt instructies, toegangspatronen en de rekenkosten van het uitvoeren van algoritmen . Het kijkt niet alleen naar de statische instructielijst, maar observeert in plaats daarvan het daadwerkelijke gedrag gedurende een korte periode om te bepalen of een belasting licht, gemiddeld, sterk parallel, geheugenintensief, enzovoort is.
Deze analyse is gecodeerd in een datastructuur die is gekoppeld aan het IA32_THREAD_FEEDBACK_CHAR-register, waarin drie soorten belangrijke informatie over elke thread worden opgeslagen : de klasse van het werk, een prestatiescore en een energie-efficiëntiescore, allemaal in een eenvoudig formaat zodat het besturingssysteem deze snel kan gebruiken.
Het eerste deel is een classificatie van het procestype in vier verschillende categorieën , die de planner helpen te begrijpen welk type kern het meest geschikt is:
- Clase 0: threads die zonder grote problemen kunnen worden uitgevoerd op zowel P-Cores als E-Cores.
- Clase 1: werklasten die aanzienlijk beter presteren op P-Cores, vanwege hun piekprestatie-eisen of lage latentie.
- Clase 2Taken die aanbevolen worden om naar E-Cores te worden verplaatst, omdat ze lichter zijn of baat hebben bij een efficiënte uitvoering.
- Clase 3: processen met kostbare lussen, mogelijk lange wachttijden of gedragingen die andere threads kunnen schaden als ze onjuist worden gecombineerd, en die daarom een speciale behandeling vereisen.
Naast de klasse wordt een prestatiescore van 0 tot 255 opgeslagen , die aangeeft hoe goed die thread presteert op een specifieke core . Evenzo wordt een andere score van 0 tot 255 opgenomen om de energie-efficiëntie aan te geven die gepaard gaat met het uitvoeren ervan op dat type core onder de huidige omstandigheden.
Met die telemetrie kan het besturingssysteem beter onderbouwde beslissingen nemen over welke threads naar P-Cores moeten worden gestuurd en welke naar E-Cores moeten worden omgeleid. Daarbij wordt niet alleen gekeken naar het type core, maar ook naar de huidige belasting, het aantal actieve taken en de prioriteiten van de gebruikerssessie.
Het belang van scoren en taakverdeling
Bij moderne CPU's met veel cores is het niet langer voldoende om simpelweg te bepalen of iets naar een P-Core of een E-Core gaat: het is ook van belang op welke specifieke core elke thread terechtkomt om knelpunten en onderbenutte cores te voorkomen . Dit is waar de prestatie- en efficiëntiescore van Thread Director een cruciale rol speelt.
Dankzij deze numerieke beoordeling kan de scheduler van het besturingssysteem de belasting tussen cores van hetzelfde type in evenwicht brengen, waarbij de zwaarste threads eerst aan de minst belaste cores worden toegewezen en elke beschikbare ruimte optimaal wordt benut. Het idee is om te voorkomen dat P-cores overbelast raken terwijl andere cores bijna inactief zijn, of dat E-cores onderbenut worden door nutteloze taken uit te voeren.
Een ander voordeel is dat Thread Director snel detecteert wanneer een workload het meest geschikt is voor een specifiek type core op basis van de instructieset of kenmerken ervan . Als tijdens de evaluatie blijkt dat een thread instructies gebruikt die alleen door P-cores worden ondersteund (bijvoorbeeld bepaalde geavanceerde AVX-instructiesets), weet het besturingssysteem dat deze thread aan een P-core moet worden toegewezen.
Het is ook relevant in scenario's waarin een enkel proces zich in de loop van de tijd ontwikkelt: het kan beginnen als een lichtgewicht proces, overgaan naar een rekenintensieve fase en vervolgens terugkeren naar een meer ontspannen toestand . Continue feedback stelt deze threads in staat om te migreren tussen P en E, afhankelijk van wat ze op een bepaald moment doen, zonder dat de applicatie zich bewust hoeft te zijn van de hybride architectuur.
In de praktijk is dit mechanisme erop gericht ervoor te zorgen dat de gebruiker het systeem als soepel reagerend ervaart, ongeacht of er een veeleisend spel wordt gespeeld, meerdere applicaties tegelijk worden geopend, content wordt afgespeeld of processen op de achtergrond actief zijn . Dynamische toewijzing van resources voorkomt dat een eenvoudige achtergrondtaak een volledige P-Core in beslag neemt terwijl een E-Core inactief blijft.
Thread Director geeft geen "opdrachten": het besturingssysteem beslist.
De naam kan misleidend zijn, omdat "Director" klinkt alsof het de leiding heeft, maar in werkelijkheid neemt Thread Director niet de uiteindelijke beslissing over waar elke thread wordt uitgevoerd . De scheduler van het besturingssysteem heeft nog steeds het laatste woord en gebruikt of negeert de informatie van de CPU al dan niet op basis van zijn eigen logica.
Dit is heel duidelijk merkbaar in alledaagse situaties, bijvoorbeeld wanneer je een resource-intensieve applicatie naar de achtergrond stuurt, zoals een rendering in Blender, en de computer blijft gebruiken voor andere taken . Windows interpreteert dit als prioriteit voor de gebruiker, waardoor het de resources die aan rendering zijn toegewezen vermindert en de hoofdtaak kan overdragen aan de E-Cores.
Op dezelfde manier kan een applicatie met lage eisen die in het actieve venster draait, een P-Core gebruiken simpelweg doordat deze actief is, zelfs als het CPU-gebruik niet bijzonder hoog is. Dit toont aan dat de criteria van het besturingssysteem (voorgrond-/achtergrondstatus, procesprioriteit, energiebeleid) zwaarder wegen dan de mening van de Thread Director.
Kort gezegd biedt Thread Director een soort "expertadviseur" voor de systeemplanner, maar als het besturingssysteem het niet kan begrijpen of andere regels prioriteert, zal de toewijzing van threads niet optimaal zijn . Dit verklaart de duidelijke verschillen tussen Windows 10, Windows 11 en diverse Linux-distributies in de manier waarop ze hybride CPU's benutten.
Vanuit het perspectief van de applicatieontwikkelaar is het interessant dat het in de meeste gevallen niet nodig is om de software specifiek voor P-Cores en E-Cores te herschrijven . Zolang het besturingssysteem Thread Director ondersteunt, wordt het overgrote deel van de werklast redelijk verdeeld zonder codeaanpassingen, behalve in een paar zeer specifieke scenario's.
Gedrag in games en bij workloads in de praktijk: P-cores, E-cores en secundaire threads
Een van de meest verwarrende onderwerpen is wat er gebeurt in moderne games die veel threads gebruiken, vooral wanneer het aantal taken het aantal beschikbare P-Cores overschrijdt en E-Cores worden gebruikt voor secundaire threads . Dit is waar theorie en praktijk elkaar ontmoeten.
Het idee van Intel is dat in een typisch scenario de kritieke gameprocessen (rendering, hoofdlogica, belangrijke fysica) worden uitgevoerd door de P-cores , terwijl de E-cores zich bezighouden met processen met een lagere prioriteit, systeemtaken en achtergrondprocessen zoals capture cards, chats, browsers, enzovoort.
Wanneer een game bijvoorbeeld een negende of tiende thread start die slechts af en toe tussen de 10% en 30% van een P-Core gebruikt , kan de Thread Director het besturingssysteem voorstellen om deze naar een E-Core te verplaatsen. De scheduler, die weet dat deze thread niet cruciaal is en rekening houdt met de prestatie-/efficiëntiescore, stuurt deze naar de efficiënte core zonder de game-ervaring te beïnvloeden.
Het is belangrijk om te begrijpen dat een E-Core minder krachtig is dan een P-Core, maar bij een lage werklast kan deze een groter percentage van de resources van de E-Core benutten (bijvoorbeeld 60%) en toch de benodigde prestaties leveren zonder knelpunten te creëren . Hierdoor komen de P-Cores vrij voor wat er echt toe doet en wordt het beschikbare silicium beter benut.
In de meeste goed ontworpen games die op Windows 11 draaien, zorgt de combinatie van een hybride-bewuste scheduler en Thread Director voor stabiele prestaties in ongeveer 99% van de gevallen . Er zijn echter enkele titels of engines met een ietwat ongebruikelijk threadpatroon waarbij de verdeling niet perfect is, maar dit zijn meestal uitzonderingen.
Relatie met Windows 11, Windows 10 en algemene compatibiliteit
Een van de belangrijkste punten is dat Windows 11 is ontwikkeld in directe samenwerking tussen Microsoft en Intel om optimaal gebruik te maken van de hybride architectuur en Thread Director native te implementeren . Dit omvat een bijgewerkte scheduler, specifieke energiebeleidsregels en een betere integratie met telemetriegegevens van de CPU.
In Windows 10 is de scheduler echter niet van meet af aan ontworpen om P-cores en E-cores te herkennen of om de signalen van de Thread Director correct te interpreteren . Het werkt wel, maar de taaktoewijzing is minder objectief, waardoor de prestaties en efficiëntie aanzienlijk lager kunnen liggen in vergelijking met dezelfde CPU in Windows 11.
In Linux heeft het verhaal een andere wending genomen. Aanvankelijk maakte de kernel niet optimaal gebruik van Intels hybride cores, wat resulteerde in aanzienlijk slechtere prestaties dan Windows , met name bij gemengde workloads en in virtualisatieomgevingen. In de loop der tijd zijn de kernelscheduler en de interfaces met Thread Director verbeterd.
Dankzij de nieuwste kernelpatches heeft Intel geavanceerde ondersteuning voor Thread Director toegevoegd en ook gewerkt aan Thread Director-virtualisatie . Hierdoor kan een gastbesturingssysteem, zoals een virtuele Windows 11-machine, profiteren van ITD-gebaseerde planningslogica, zelfs wanneer het op een Linux-host draait.
In tests met een Core i9-13900K die Windows 11 draait binnen een Linux VM, werd een prestatieverbetering tot wel 14% gemeten in 3DMark door de toewijzing van P-cores en E-cores van de virtuele machine optimaal te benutten . Deze winst is met name relevant voor servers die cloudgaming of meerdere virtuele desktops hosten.
Draadcoördinator bij Alder Lake, Raptor Lake, Meteor Lake en daarbuiten.
Thread Director maakte officieel zijn debuut met de 12e generatie Intel Core-processors (Alder Lake), die voor het eerst een hybride architectuur introduceerden voor desktops . Deze chips combineren krachtige P-Cores met efficiënte E-Cores en worden geproduceerd met behulp van Intel 7-lithografie, waarbij veel van de eerdere technologieën van het merk zijn overgenomen.
In Alder Lake-S, ontworpen voor desktops en gebruikmakend van de LGA1700-socket, vinden we tot 16 cores (8 P-cores + 8 E-cores) en in totaal 24 threads, ondersteuning voor DDR5, achterwaartse compatibiliteit met DDR4 en PCIe 5.0-lanes rechtstreeks vanuit de CPU . Dit wordt aangevuld door de klassieke Intel Smart Cache (gedeelde L3-cache) en een gereorganiseerde L2-cache om beide typen cores te ondersteunen.
De P-cores hebben 1,25 MB L2-cache per core, terwijl de E-cores zijn gegroepeerd in clusters van vier die 2 MB L2-cache delen . Daarbovenop is er tot 30 MB L3-cache (LLC) die alle cores delen, wat helpt de latentie te verminderen en de gegevensuitwisseling tussen threads van verschillende typen te verbeteren.
Het platform biedt ook ondersteuning voor PCIe 5.0 (tot 16 lanes vanuit de CPU), meer PCIe 4.0-lanes vanuit de Z690-chipset, geïntegreerde WiFi 6E en Thunderbolt 4-compatibiliteit . Hoewel PCIe 5.0 GPU's en SSD's bij de lancering schaars waren, was de infrastructuur al aanwezig.
Met Raptor Lake verfijnde Intel deze aanpak, maar de echte verandering in Thread Director komt met Meteor Lake: de evaluatielogica draait nu op de energiezuinige E-Cores in de SoC Tile, het blok met directe toegang tot het RAM-geheugen dankzij de geïntegreerde geheugencontroller . Van daaruit wordt elk proces geanalyseerd en wordt besloten of het op die E-Cores kan worden afgehandeld of moet worden doorgegeven aan de Compute Tile, waar de krachtigere cores zich bevinden.
Dit betekent dat Thread Director, vanaf Meteor Lake, niet langer constant rechtstreeks hoeft te coördineren tussen "drie soorten cores", omdat veel taken met een lage belasting worden afgehandeld voordat ze de belangrijkste P-cores bereiken . Pas wanneer een workload wordt gedetecteerd die meer rekenkracht nodig heeft, wordt deze overgedragen naar het high-performance computing-blok.
Integratie met de hybride architectuur van Alder Lake-S
Binnen het desktop-ecosysteem laten Alder Lake-S-processors perfect zien wat Thread Director kan betekenen voor een hybride processor met zeer duidelijke doelstellingen: gaming, contentcreatie en geavanceerd overklokken . Intel heeft het hele platform opnieuw ontworpen om optimaal te profiteren van deze mix van cores.
De hybride architectuur laat de oude monolithische aanpak achter zich en stelt een model voor dat sterk lijkt op ARM big.LITTLE, met P-cores die zijn ontworpen voor zware workloads en E-cores die zich richten op schaalbaarheid en efficiëntie bij multitasking . Deze combinatie zorgt volgens interne metingen van Intel voor een toename van 19% in IPC per core ten opzichte van de 11e generatie.
In de praktijk betekent dit dat bij het spelen van een game de P-cores de game-engine aansturen, terwijl de E-cores achtergrondtaken zoals streamen, Discord, internetten en systeemprocessen afhandelen . Intel heeft verbeteringen laten zien tot wel 19% in games en tot 84% in scenario's met "gamen + streamen" vergeleken met een Core i9-11900K.
Dit gedrag is gebaseerd op het vermogen van Thread Director om te detecteren welke threads cruciaal zijn voor de latency van het spel en welke hulpthreads zijn die naar E-Cores kunnen worden omgeleid zonder de spelervaring negatief te beïnvloeden . Dit zorgt voor een constante framesnelheid en vermindert het risico op haperingen wanneer er veel processen tegelijkertijd plaatsvinden.
Het Alder Lake-platform introduceerde ook nieuwe energiebeheermechanismen, waarbij de PL1 en PL2 op elkaar werden afgestemd om de boostfrequenties langer te behouden . Dit wordt mogelijk gemaakt door de aanwezigheid van E-Cores die lichte belastingen aankunnen zonder dat de P-Cores permanent op hun thermische limiet zitten.
Overklokken, geheugen en bijbehorende tools
De Alder Lake-S-processors werden vergezeld door een update van de tuningtools, te beginnen met Intel Extreme Tuning Utility (XTU) 7.5, die specifieke controle over E-Core-frequenties en volledige ondersteuning voor DDR5 toevoegt . Dit komt bovenop P-Core-telemetrie en nieuwe interne BCLK-beheeropties.
Een van de belangrijkste nieuwe functies voor geheugen is XMP 3.0, waarmee het aantal overklokprofielen per module wordt uitgebreid naar vijf (drie van de fabrikant en twee door de gebruiker aanpasbaar) . Deze aanpasbare profielen kunnen een naam hebben van maximaal 16 tekens, waardoor de gebruikte instelling snel te herkennen is.
Bovendien maakt XMP 3.0 handmatige aanpassing van spanningen zoals VDD, VDDQ en VPP mogelijk , waardoor enthousiastelingen aanzienlijke speelruimte hebben om het maximale uit DDR5-geheugen te halen. Hoewel Thread Director geen directe invloed heeft op het geheugen, is het gehele platform ontworpen met een breed scala aan veeleisende workloads in gedachten.
Er werd ook Dynamic Memory Boost Technology toegevoegd , een soort automatische "Turbo" voor RAM die het XMP-profiel activeert wanneer er een belasting wordt gedetecteerd en terugkeert naar de basisstatus wanneer de vraag afneemt . Deze logica is vergelijkbaar met hoe Turbo Boost werkt in CPU's en helpt de prestaties, het stroomverbruik en de temperatuur in balans te houden zonder constante tussenkomst van de gebruiker.
Dit alles wordt aangevuld door de Z690-chipset, die volledige ondersteuning biedt voor het overklokken van de CPU en het geheugen, plus PCIe 4.0-lanes en moderne connectiviteit zoals USB 3.2 Gen 2x2 en WiFi 6E (Gig+) . Het idee is dat het platform als geheel klaar is om te profiteren van het dynamische gedrag dat Thread Director mogelijk maakt bij de toewijzing van threads.
Linux, servers en virtualisatie met Thread Director
Buiten de thuisomgeving wordt Thread Director steeds relevanter in Linux-omgevingen met meerdere virtuele machines of cloudgebaseerde gamestreamingdiensten . Een efficiënte toewijzing van processorkernen vertaalt zich hier direct in kostenbesparingen en een betere kwaliteit van de dienstverlening.
Intel heeft onlangs een reeks Linux-kernelpatches uitgebracht die de integratie van Thread Director en de planningslogica voor hybride CPU's aanzienlijk verbeteren . Deze wijzigingen passen niet alleen de manier aan waarop taken op de host worden verdeeld, maar introduceren ook het concept van Thread Director-virtualisatie.
Met deze virtualisatie kan een virtuele machine (bijvoorbeeld Windows 11 als gastbesturingssysteem) informatie van Thread Director ontvangen en gebruiken, zelfs wanneer deze op een Linux-host draait . Het resultaat is dat het gastbesturingssysteem zijn eigen workloads beter kan verdelen over gevirtualiseerde P-cores en E-cores, waardoor de prestaties dichter bij die van een native besturingssysteem komen.
De gepubliceerde tests tonen aan dat in gamingscenario's die draaien op een Windows 11 VM op een Linux-host met een Core i9-13900K , de prestatieverbeteringen in benchmarks zoals 3DMark kunnen oplopen tot 14%. Voor Linux-gebaseerde cloudstreamingproviders is deze sprong zeer significant.
Het is belangrijk om te benadrukken dat deze optimalisaties voornamelijk bedoeld zijn voor professionele en serveromgevingen , waar Linux een veel groter marktaandeel heeft dan Windows Server. In een thuisomgeving zal de gemiddelde gebruiker weinig verschil merken, hoewel het altijd goed nieuws is wanneer de kernel de ondersteuning voor hybride CPU's verbetert.
Beperkingen, mythes en wat we kunnen verwachten
Ondanks alle voordelen is het belangrijk om Thread Director niet te veel te verheerlijken. Ten eerste is het cruciaal om te begrijpen dat het een slecht geoptimaliseerd besturingssysteem of een game-engine met gebrekkig threadbeheer niet volledig kan compenseren . Als de werklast door de software slecht verdeeld is, kan de CPU slechts een bepaalde hoeveelheid aan.
Het is ook geen magische technologie die garandeert dat er nooit zeldzame gevallen zullen voorkomen waarbij een belangrijke thread in een E-Core terechtkomt of een lichte taak langer dan nodig in een P-Core blijft . De feedback is erg snel, maar niet direct, en er zijn altijd ongebruikelijke belastingpatronen die de scheduler in de war kunnen brengen.
Een andere veelvoorkomende misvatting is dat game- en applicatieontwikkelaars met Thread Director hybride architecturen volledig kunnen vergeten . Hoewel het besturingssysteem in de meeste gevallen alles redelijk goed afhandelt, is het, om er het maximale uit te halen, toch verstandig om engines te ontwerpen die hun eigen threads beter classificeren, de juiste prioriteiten stellen en ongecontroleerde overbelasting voorkomen.
Vooruitkijkend naar toekomstige generaties zoals Arrow Lake, wijst alles erop dat de kernfilosofie van Thread Director behouden blijft, met verbeteringen in telemetrie en integratie met het besturingssysteem . De ervaring opgedaan met Alder, Raptor en Meteor Lake zal helpen om grensgevallen, waarbij de toewijzing niet helemaal optimaal is, verder te verminderen.
Voor gebruikers die gamen, video bewerken, streamen of virtuele machines draaien, is het belangrijk om te weten dat Windows 11 en moderne Linux-distributies met de nieuwste patches vrijwel onmisbaar zijn om het maximale uit een Intel hybride CPU te halen . Met het juiste systeem wordt Thread Director een stille bondgenoot die ervoor zorgt dat alles soepeler en energiezuiniger verloopt.
Uiteindelijk heeft Intel Thread Director zich gevestigd als een belangrijk onderdeel in de overgang naar pc-processors met heterogene cores, waardoor het besturingssysteem slimmere beslissingen kan nemen over waar elke thread moet worden uitgevoerd . Hoewel het zelf niets beheert, maakt de continue analyse van prestaties en efficiëntie een verschil bij gaming, multitasking, contentcreatie en virtualisatie, mits de onderliggende software dit kan interpreteren.
