Introductie
In discussies over processors komt het elektrische vermogen ervan - in informele termen ook wel 'stroomverbruik' genoemd - vandaag de dag vrijwel altijd aan bod. Ergernis veroorzaakt door het constante geluid van koelers, angst voor een hoge elektriciteitsrekening, behoefte aan mobiliteit en de drang om beter op het milieu te letten zijn factoren die de vraag naar zuinige chips steeds sterker maken. Een vaak gebruikte term in dit soort discussies is 'tdp', een specificatie die officieus wordt beschouwd als dé maatstaaf voor zuinigheid. Maar wat is het precies, en vertelt tdp wel het hele verhaal?
Wat is een tdp?
De afkorting staat voor thermal design power, wordt uitgedrukt in watts en is bedoeld voor mensen die systemen ontwerpen. Chips zetten alle energie die ze opnemen vrijwel direct om in warmte, wat niet gezond voor ze is. Tegenwoordig zijn processors zo beveiligd dat ze niet meer fysiek door kunnen branden, maar hitte is nog steeds niet bevorderlijk voor de stabiliteit en prestaties van een systeem. Er moet dus gekoeld worden om alles goed te laten werken, maar hoeveel precies?
Er kleven een hoop nadelen aan koeling in een kast. Ze neemt ruimte in beslag, maakt geluid en is als een van de weinige bewegende onderdelen vatbaar voor slijtage. Hoewel een paar simpele ventilators niet duur hoeven zijn, kunnen bedrijven als Dell erg ver gaan als er bezuinigd moet worden. Er zijn voor systeembouwers dus een hoop redenen om zo min mogelijk koelers te willen plaatsen. Ondertussen eist men echter wel stabiliteit, en dat is een dilemma. Zonder controle over de koeling kunnen bedrijven als Intel en AMD namelijk geen kwaliteit garanderen. Als er geen duidelijke afspraken waren, zouden systeembouwers en chipbakkers naar elkaar kunnen blijven wijzen als oorzaak van een oververhit systeem, zodat de consument als gedupeerde over zou blijven. De tdp is precies de afspraak die nodig is om dat te voorkomen: als het systeem zoveel warmte kan afvoeren van de processor, dan blijft deze gegarandeerd stabiel werken.
Er kleeft nog een tweede - vaak vergeten - aspect aan de tdp, namelijk de temperatuur van de kast. Wanneer je twee identieke systemen zou hebben en de ene in een kamer van 20 graden en de ander in een kamer van 40 graden zou laten werken, dan zou de laatste duidelijk meer stroom verbruiken. Dit komt omdat transistors meer gaan lekken zodra ze warmer worden. Naast een bepaald minimum koelvermogen specificeren Intel en AMD dan ook een maximale temperatuur voor hun chips, gemeten direct onder de heatsink. Als voorbeeld kunnen we kijken naar Intels Core 2 Extreme QX6850, die 130 watt koelvermogen vereist bij 64,5 graden. De specificaties van de AMD Athlon X2 6400+ staan helaas nog niet online, maar de 6000+ vereiste tot voorkort 125 watt koelvermogen bij 63 graden.
Op dit punt is er geen enkel verschil tussen de betekenis van de term tdp. Voor alle fabrikanten betekent het precies hetzelfde: het minimum vereiste koelvermogen. De problemen ontstaan pas als men tdp probeert te relateren aan het daadwerkelijke stroomverbruik van een processor.
Tdp en stroomverbruik
Is tdp hetzelfde als het maximale stroomverbruik? Nee dus; zoals uitgelegd is het puur een eis die aan de koeling wordt gesteld. Heel grof gezien kun je natuurlijk stellen dat de koeling het maximale verbruik van de chip moet kunnen afhandelen, maar er zijn een aantal nuances die hier aangebracht moeten worden. Het échte maximale verbruik van een chip wordt namelijk niet door de koelspecificatie bepaald, maar door de elektrische specificatie.
Laten weer eens kijken naar de QX6850, Intels heetste quadcore met een tdp van 130 watt. De elektrische specificatie van deze chip onthult een maximale stroomsterkte van 125 ampère bij 1,187 volt, oftewel 148 watt. Dit is 18 watt oftewel 14 procent meer dan de vastgestelde tdp. Bij de Athlon X2 6000+ is de tdp een stuk conservatiever: AMD geeft een maximale stroomsterkte van 90,4 ampère bij 1,4 volt, dus 127 watt - een overschrijding van net iets meer dan een procent. Eén procentje kunnen we op afronding gooien, maar hoe zit het dan met Intel? Er was toch een duidelijke afspraak gemaakt met de systeembouwers: 130 watt koeling is genoeg. Dus hoe kan een systeem dan stabiel blijven met een QX6850 die maximaal 147 watt gebruikt? Tijd om eens te kijken hoe Intel de tdp van zijn chips bepaalt.
Intels meetmethode
Tweakers.net had contact met Benson Inkley, senior processor applications engineer bij Intel in Oregon, die ons haarfijn kon uitleggen hoe de tdp van een processor bepaald wordt. Men maakt gebruik van een testopstelling waarin de omgevingstemperatuur en spanning worden opgevoerd tot het maximum. Vervolgens draait men honderden processorintensieve applicaties, terwijl men duizenden keren per seconde het verbruik registreert. Meestal blijkt hieruit dat de processor zelfs onder 'volle belasting' (vanuit de software gezien) maar 75 tot 80 procent van zijn maximale vermogen opneemt. Dit is niet zo moeilijk te verklaren: de Core 2 kan tot vier instructies per kloktik uitvoeren, terwijl een gemiddelde applicatie al blij mag zijn met een tot anderhalve opdracht per tik. Het gevolg is dat het zeer zelden voorkomt dat alle transistors actief zijn. Er worden wel pieken geregistreerd van 90 tot 95 procent van het maximale vermogen, maar die zijn in de orde van een paar milliseconden, niet lang genoeg om de temperatuur meetbaar te beïnvloeden en dus ook geen gevaar voor de stabiliteit van het systeem.

Niet iedere '100%' is hetzelfde - 1 of 4 instructies per kloktik maakt een groot verschil
Na het wegfilteren van ongevaarlijke korte pieken blijft een maximale 'sustained' (volgehouden) verbruik over. Daar wordt dan nog een marge van een paar watt bovenop gepakt om eventuele afrondingsfouten en meetonnauwkeurigheid te compenseren, waarna de tdp overblijft. De chip kan tijdens normaal gebruik dus inderdaad over zijn tdp heen, maar omdat het slechts over duizendsten van seconden gaat blijft de garantie voor systeembouwers wel van kracht. Toch is het niet onmogelijk om een processor ook langere tijd over zijn tdp heen te krijgen.
Over de tdp heen
Intel bepaalt zijn tdp op basis van een verzameling van 'echte' applicaties, maar niet ieder programma hoeft iets nuttigs te doen: iemand die een beetje handig is met assembleertaal zou zo een programma kunnen maken dat vier instructies tegelijk uitvoert in een oneindige lus. Wanneer dat op alle cores tegelijk zou draaien, zou de processor langere tijd op een piek van 95 procent van het maximum kunnen blijven hangen, wat voor de QX6850 ongeveer 141 watt is - 11 watt boven de tdp. Ervanuitgaande dat de temperatuur van de kast al tegen het maximum aanhikt en de koeler geen extra veiligheidsmarge heeft, zou de processor hierdoor langzaam opwarmen en uiteindelijk zijn interne beveiliging tegen oververhitting moeten activeren. Dat betekent in eerste instantie dat hij op een lagere kloksnelheid gaat draaien, maar als dat niet blijkt te helpen zal hij zichzelf helemaal uitschakelen.
Intel ontwikkelt zelf code om dit soort extreme omstandigheden te testen, maar deze wordt niet gebruikt bij het bepalen van de tdp. Wel wil men weten wat het échte maximale verbruik is. Als de maximale temperatuur korte of zelfs langere tijd wordt overschreden zijn er nog allerlei vangnetten, maar op het moment dat de stroomtoevoer ook maar een microseconde tekortschiet gaat het systeem onherroepelijk onderuit. Als een deel van de transistors niet (op tijd) schakelt produceert de chip namelijk onvoorspelbare resultaten, waarna het niet lang zal duren voor de software onderuit gaat. Voor het moederbord is de elektrische specificatie dus van cruciaal belang, terwijl de koeler zich geen zorgen hoeft te maken over dit soort worst case-code.
De kans dat een nuttig programma er in slaagt om een processor langere tijd over zijn tdp heen te tillen is nihil, omdat er simpelweg te weinig bandbreedte is om continu zinvol rekenwerk te doen. Dit kan het beste aangetoond worden met een berekening, wederom gebaseerd op de quadcore Extreme Edition. De 1333MHz snelle bus van deze chip kan in theorie maximaal 10,6GBps aanleveren. Om één van de rekeneenheden van één core bezig te houden moet deze iedere kloktik minstens 16 bytes (128 bit) aan invoer krijgen. Dat vermenigvuldigd met drie miljard tikken per seconde levert 48GB/s op. Er zijn vier van zulke eenheden per core en vier cores per processor, dus de totale behoefte aan bandbreedte is 768GB/s, ruim zeventig keer zoveel als er beschikbaar is. Zelfs de L1-caches zijn niet snel genoeg om aan die enorme vraag te voldoen, dus de enige manier om dit vol te houden is door continu dezelfde waardes in de registers te gebruiken, als een hond die achter zijn eigen staart aanrent; hij is wel constant in beweging, maar komt niet vooruit.
AMD's methoden
AMD heeft - in ieder geval voor zijn desktop- en serverproducten - geen uitgebreide methode om de tdp te bepalen. In plaats daarvan houdt men de simpele regel aan dat het elektrisch maximum tevens het thermisch maximum is. Er valt veel voor deze aanpak te zeggen: het is een veilige, transparante en makkelijke methode. Er kleeft echter ook een nadeel aan: men verliest een stuk marge. Zoals we inmiddels weten is het in de praktijk zo goed als onmogelijk om de processor op zijn echte maximum te laten draaien, zelfs als het echt de bedoeling is. Eigenlijk legt AMD de lat voor de koeling dus te hoog neer, en daar heeft men zichzelf mee: een soepeler tdp zou het makkelijker maken om hoger geklokte modellen uit te brengen, omdat nét iets meer chips binnen de marge zouden vallen. De processors van AMD zijn net als die van Intel voorzien van beveiliging tegen oververhitting en dus ook onkwetsbaar voor een theoretisch power virus of avontuurlijk gezinde programmeurs.
Waarom AMD dan toch voor deze methode kiest is niet helemaal duidelijk, maar misschien heeft het te maken met de kosten die komen kijken bij het individueel testen van iedere chip. Er zijn echter indicaties dat het bedrijf (langzaam) aan het bijtrekken is. Voor de ddr2-generatie van zijn chips heeft AMD de definitie van de term tdp namelijk gelijkgetrokken met die van Intel:
The thermal design power is the maximum power a processor can draw for a thermally significant period while running commercially useful software
Hoewel men zich vooralsnog aan de oude methode lijkt te houden, laat deze definitie de deur wagenwijd openstaan voor een soortgelijk systeem als dat van Intel, waarbij de processor korte tijd of tijdens het draaien van speciaal ontworpen software over zijn maximum heen kan. Er is reden om te geloven dat AMD voor zijn mobiele processors al gebruikmaakt van de speelruimte de deze definitie openlaat, maar aangezien er geen openbare elektrische specificaties zijn voor recente Turions blijft dat een gok. Herhaalde pogingen om deze documentatie bij AMD los te krijgen zijn helaas op niets uitgelopen.
AMD's nieuwe methode
Met de komst van Barcelona is duidelijk geworden dat AMD ook het nadeel van zijn tdp-methode erkent. Met de introductie van een tweede maatstaaf, de acp, probeert men een meer realistische indicatie van het stroomverbruik te leveren. De acp ligt 15 tot 20 watt lager dan de tdp en wordt gemeten tijdens het draaien van benchmarks als TPC-C, SPECcpu2006, SPECjbb2005 en Stream.
Een interessante vraag die gesteld werd direct nadat AMD zijn acp-maatstaaf aankondigde is in hoeverre deze te vergelijken is met de tdp van Intel. Het antwoord daarop is: niet echt. Het acp is namelijk een geometrisch gemiddelde, wat bijna per definitie lager ligt dan het rekenkundige gemiddelde. De tdp van Intel ligt daarentegen bijna altijd boven het rekenkundig gemiddelde, omdat het alleen naar pieken kijkt en niet naar dalen. Ter illustratie wordt hieronder het verbruik van een fictieve processor getoond in een grafiek. Met gekleurde lijnen wordt aangegeven waar Intel en AMD hun specificaties ongeveer zouden neerleggen als ze deze chip op de markt zouden brengen.

Hoe strakker de rode lijn is, hoe dichter Intels tdp en AMD's acp bij het rekenkundige gemiddelde komen te liggen. Het grote verschil is echter dat Intels tdp van de bovenkant nadert, terwijl acp juist van de onderkant komt. Bij een perfect constant vermogen zouden alledrie de waardes gelijk zijn, maar dat is geen realistisch scenario.
Waarom hebben chips dezelfde tdp?
Het is misschien wel eens opgevallen dat de laatste jaren hele families van processors dezelfde tdp krijgen. Logischerwijs zou een chip op 2,0GHz minder heet moeten worden dan een chip op 2,6GHz, maar het komt toch vaak genoeg voor dat zulke chips dezelfde tdp hebben. Vroeger was dat niet zo: toen kwam er voor iedere stap in snelheid gewoon een paar watt bij, tot er weer een nieuwe core uitkwam met kleinere transistors of andere verbeteringen. Het feit dat men nu een tdp voor een hele familie bepaalt is niet (alleen) een kwestie van gemakzucht en rekening houden met de toekomst, maar heeft vooral te maken met het feit dat transistors steeds kleiner worden.
Het verbruik van een chip bestaat grofweg uit twee componenten: actieve stroom die nodig is om de transistors te schakelen en lekstroom, die domweg weglekt. 'Vroeger' was de laatste factor minimaal en was de tdp vrijwel volledig afhankelijk van het aantal transistors en de frequentie waarop deze schakelden. Dit zijn goed voorspelbare en beheersbare variabelen, getuige de zeer precieze specificaties van toen, die tot op de tiende watt nauwkeurig waren. Hoe kleiner het procedé (90nm, 65nm, enzovoorts) hoe sterker de lekstroom wordt. Erger nog is dat deze steeds moeilijker onder controle te houden is: dát een chip veel lekt staat vast, maar hoeveel precies wordt bepaald met een worp van een dobbelsteen. Dit maakt het specificeren van een tdp voor een specifiek model gevaarlijk.
Een voorbeeld: stel dat men in 'oude stijl' specificaties opstelt door de zeggen dat een bepaalde core een tdp van 65W heeft op 2,6GHz, 62W op 2,4GHz en 59W op 2,2GHz. Vervolgens komt er een chip van de band afrollen die toevallig 5W meer lekt dan verwacht. Deze chip zal dus 70W nodig hebben op 2,6GHz, 67W op 2,4GHz en 64W op 2,2GHz, wat in alle gevallen boven de tdp ligt. Ondanks het feit dat hij perfect functioneert kan deze chip de vuilnisbak in, omdat hij aan geen enkele specificatie voldoet. In de alternatieve situatie waarin alle modellen op 65W worden gezet kan de chip echter nog steeds op 2,2GHz worden verkocht. Zo heeft men dus betere yields en gemiddeld hogere winstmarges.

Variatie binnen een wafer speelt in de praktijk een minder grote rol dan variatie tussen verschillende wafers.
Wat betekent dat voor de consument?
Het betekent dat een 2,2GHz-processor met een tdp van 65W niet noodzakelijk zuiniger is dan een identieke processor op 2,6GHz, die ook een tdp van 65W heeft. Zoals de specificatie al zegt kunnen ze écht evenveel stroom gebruiken, ook al klokt de een 400MHz sneller dan de ander. Sterker nog: chips die in de hoogste snelheidscategorie van een bepaalde tdp-familie vallen behoren vaak tot de meest gezonde exemplaren met de laagste lekstroom, terwijl chips die veel lekken op lagere snelheden worden verkocht. Hierdoor is er een goede kans dat een 2,6GHz-chip in slaapstand zuiniger is dan een 2,2GHz-processor uit dezelfde familie.
Een 'tdp-familie' kan echter ook in je voordeel werken: op het moment dat een chip beter presteert dan verwacht, of om wat voor reden dan ook niet naar het maximum geduwd wordt, kan zelfs het maximale verbruik ervan ver onder de tdp liggen. Een goed voorbeeld hiervan is de pas geleden aangekondigde 45nm quadcore QX9650, die net als bijna alle andere Extreme-chips van Intel een 130W-tdp heeft, maar in de praktijk niet meer dan 90W nodig blijkt te hebben.
Andere factoren
Naast een verschil in de berekeningsmethode die Intel en AMD gebruiken, zit er ook een verschil in de functionaliteit de meegenomen wordt in de meting. De taken die bij Barcelona, Phenom en alle producten uit de K8-familie worden uitgevoerd door de geïntegreerde geheugencontroller en HyperTransport-links moeten bij Intel grotendeels door de northbridge van de chipset worden afgehandeld. Bij een vergelijking van stroomverbruik op basis van specificaties is het daarom wel zo eerlijk om daar bij Intel een aantal extra watts te voor reserveren. Helaas is het heel erg moeilijk om daar een exact cijfer aan te hangen, want er zijn grote verschillen in functionaliteit en verbruik van chipsets.
De tdp's van moderne northbridges lopen behoorlijk uiteen, van minder dan tien watt voor een notebook tot bijna vijftig watt voor high-end servers. Concreet hebben we de volgende waarden gevonden voor het huidige gamma van Intel-chipsets. Het gaat hierbij om absolute worst-case scenario's bij extreme temperaturen - in sommige gevallen boven de honderd graden - dus in de praktijk zal het allemaal een stuk lager uitvallen. Daarbij moet ook rekening gehouden worden met het feit dat deze northbridges ook pci-express afhandelen en gebakken worden in fabrieken die twee of drie generaties achter liggen op de processors. Al met al zal een geheugencontroller helemaal niet zo veel stroom vreten, maar is integreren toch nog wel een paar watt zuiniger.
| Model | Bussen | Geheugen | Soort | Tdp | Temperatuur | Procedé |
---|
Notebook | GM965 | 800MHz | 2x 667MHz | DDR2 | 9,5-13,5W | 105C | 90nm |
PM965 | 800MHz | 2x 667MHz | DDR2 | 8W | 105C | 90nm |
![]() |
---|
Desktop | G33 | 1333MHz | 2x 1066MHz | DDR3 | 14,5W | 105C | 90nm |
P35 | 1333MHz | 2x 1066MHz | DDR3 | 16W | 105C | 90nm |
X38 | 1333MHz | 2x 1333MHz | DDR3 | 26,5W | 92C | 90nm |
![]() |
---|
Server | 5000P | 2x 1333MHz | 4x 667MHz | FBD | 30W | 105C | 130nm |
5000V | 2x 1333MHz | 2x 667MHz | FBD | 25,1W | 105C | 130nm |
7300 | 4x 1066MHz | 4x 667MHz | FBD | 47W | 77C | 130nm |
De geheugenfactor
Om bepaalde tekortkomingen van standaard ddr-geheugen te omzeilen hebben Intel, IBM en nog een paar andere bedrijven fully buffered geheugen bedacht. Technisch gezien is dit een mooie oplossing voor zware servers die veel capaciteit en bandbreedte nodig hebben, maar al snel na het debuut ervan in Intels Bensley-platform bleek dat de verwachtingen ervoor te hoog lagen . Voor een significant deel van de servers voldoet ddr-geheugen namelijk nog steeds prima en doet fb-dimm dus niets anders dan de latency en het stroomverbruik verhogen.
Op het gebied van prestaties heeft Intel toevallig lange tijd weinig te vrezen gehad, maar het is zeker geen voordeel op het gebied van efficiëntie. Het gerucht gaat dat de 'San Clemente'-chipset binnenkort eindelijk een ddr-oplossing zal bieden voor systemen met twee Xeons, maar tot die tijd mag er voor ieder geheugenreepje ongeveer zes watt worden bijgetikt ten opzichte van een AMD-server. Samen met de warmere chipset kan dat al redelijk aantikken, zeker in ruststand.

Efficiëntie
Een andere factor die een rol speelt in de zuinigheid van een systeem op platformniveau is de efficiëntie van componenten zoals de voeding en spanningsregulators op het moederbord. Uiteindelijk wordt vrijwel alle energie die de computer ingaat omgezet naar warmte, maar als dat al gebeurt vóór de stroom bij de chips aankomt draagt deze niets nuttigs bij. Een efficiëntie van honderd procent is in de praktijk niet haalbaar, maar het verschil tussen bijvoorbeeld 80 en 85 procent kan ook al vrij veel uitmaken. Stel de processor heeft 100 watt nodig, maar omdat de vrm-module op het moederbord maar 80 procent efficiënt is, moet deze 125 watt vermogen opnemen om 100 watt te kunnen leveren. Als de voeding dan ook nog eens 80 procent efficiënt is, wordt er uiteindelijk 156 watt uit het stopcontact getrokken. Als we de efficiëntie van beide stappen echter vijf procent hoger leggen, komen we uiteindelijk op 138 watt uit, een besparing van 13 procent.
De race naar idle
Een laatste valkuil van praten over tdp's in de context van opgenomen vermogen is dat ze alleen maar een indicatie kunnen geven van het maximale vermogen dat een chip kan opnemen onder belasting. Het zegt echter helemaal niets over de ruststand. De meeste computers kunnen het werk waar ze het grootste deel van de dag mee worden opgezadeld met twee vingers in hun neus afhandelen. Op momenten dat ze het niet druk hebben worden allerlei stroombesparingstrucs geactiveerd waardoor ze nog maar een fractie van het maximum nodig hebben. Voor mensen die geld willen besparen of langer met hun accu willen doen, kan het verbruik in rust daarom belangrijker zijn dan de tdp.
Hoewel het misschien logisch lijkt om een tragere chip te kopen voor een zuinig systeem, hebben we al eerder uitgelegd dat deze misschien juist meer lekt dan een snelle. Maar niet alleen dat speelt een rol: een tragere chip doet ook langer over zijn werk en kan daardoor minder vaak, diep of lang slapen. Dit wordt ook wel de 'race naar idle' genoemd: hoe eerder een chip weer kan rusten, hoe gunstiger dat is voor het verbruik.
Conclusie
Een tdp is zonder meer een interessant referentiepunt als het gaat om het verbruik van een processor, al is het alleen maar omdat het zo ongeveer het enige is waar een consument zich op kan baseren zonder de hardware door te meten of ergens een review te vinden waarin dat gedaan wordt. Wanneer de term gebruikt wordt zonder rekening te houden met de definitie ervan, de technische en zakelijke aspecten die meespelen bij het bepalen en alle andere factoren die het verbruik op systeemniveau beïnvloeden, wordt de waarde ervan echter een stuk minder.
Bepalen hoeveel vermogen een processor nodig heeft blijkt in de praktijk een lastige taak te zijn: door verschillende soorten gebruiksscenario's en applicaties, externe invloeden, variatie tussen chips onderling en het gelijktrekken van hele productfamilies is de tdp tegenwoordig ongeveer net zo'n goede maatstaaf voor zuinigheid als megahertzen een indicatie van prestaties zijn. Het zegt dus wel iets, maar lang niet alles, en producten van verschillende fabrikanten op deze manier met elkaar vergelijken is al helemaal gevaarlijke bezigheid.
Met dank aan:
- Benson Inkley & Kristof Semhke, Intel
- Steeve Bourbon, AMD