Hoofdcategorieën

TLB-bug in quadcore AMD-chips: het hele verhaal

Door Wouter Tinus, dinsdag 11 december 2007 09:23, views: 66.120

Wat is het gevolg?

De kans dat de op de vorige pagina beschreven situatie optreedt is heel erg klein, maar wat het gevoel zegt over kansen is als het om processors gaat vaak misleidend. Een 2,0GHz quadcore Barcelona doorloopt iedere seconde acht miljard cyclussen. Stel dat iets bijvoorbeeld een op de tien biljard keer voorkomt (dat is een getal met zestien nullen), dan gebeurt het onder volle belasting gemiddeld iedere twee weken. Een doorsnee consument zal met die frequentie van problemen even op Windows mopperen en daarna braaf op reset drukken, maar als het gaat om een server waar misschien wel een aantal virtuele machines op draaien, dan wordt zoiets al heel snel frustrerend.

Natuurlijk is het niet puur statistiek: wat ook meespeelt is de software die gebruikt wordt, want het probleem treedt namelijk alleen op in 'bepaalde omstandigheden'. Wat die precies zijn is niet duidelijk, maar gezien de aard van het probleem is het in ieder geval duidelijk dat software die intensief met het geheugen bezig is een grotere kans heeft om er tegenaan te lopen. Virtualisatie is een voorbeeld van een taak die de TLB en PTT zwaar belast en dus een verhoogd risico heeft. Een desktop die maar een paar uur per dag gebruikt wordt voor internetten en spellen zou echter jaren probleemloos kunnen draaien.

Easter-egg in MacOS X 10.5 virtualisatie - Windows blue screens
Ook geluk speelt een rol: de reden dat AMD deze bug tijdens het testen niet gevonden heeft, is waarschijnlijk omdat de testexemplaren de fout helemaal niet hadden. Een van de moeilijkheden waar het bedrijf tegenaan loopt bij het maken van snellere versies van zijn quadcores is de variatie in het 65nm-procedé. Normaal worden de samples van een chip grondig doorgemeten om de maximale snelheid ervan te bepalen, maar de miljoenen exemplaren die uiteindelijk van de band komen rollen kunnen niet stuk voor stuk zo uitgebreid getest worden.

In plaats daarvan kiest men een aantal circuits die representatief moeten zijn voor de hele chip. Als die paar schakelingen snel genoeg zijn om de gewenste klokfrequentie aan te kunnen, dan gaat men er vanuit dat de rest ook snel genoeg is. In dit geval lijkt het erop dat de test van AMD niet volledig dekkend is: ergens in de TLB zit een circuit dat door variaties in het proces net iets trager uit de bus kan komen dan de rest. Terwijl de automatische test dus bijvoorbeeld bepaalt dat een chip op 2,3GHz kan draaien, blijkt een bepaald uitzonderingspad in het TLB-circuit eigenlijk niet harder dan 2,0GHz te kunnen. Omdat dit soort variaties willekeurig zijn betekent het dat niet alle exemplaren (even veel) last hebben van het probleem.

AMD zelf vond de situatie zelf in ieder geval ernstig genoeg om de levering van quadcore Opterons stil te leggen. Het bedrijf heeft dat later overigens weer half ontkend, omdat de leveringen eigenlijk nog helemaal niet op gang waren gekomen. Dat is een goed punt, want serverbouwers als IBM, Dell, HP en Sun hebben namelijk nog geen quadcore Opterons in hun aanbod opgenomen. Of dat nou twee kwaden zijn die elkaar toevallig opheffen, of dat de bug juist de reden is voor de vertraging bij de grote jongens, is niet duidelijk. Speciale klanten zoals supercomputerinstallaties kunnen de processors nog wel krijgen, met een flinke korting. Ook de desktopversie Phenom wordt nog gewoon verkocht.

Volgende pagina (Wat is de oplossing? - 3/4)


Inhoudsopgave

VNU Media logo Hosted by True

© 1998 - 2009 Tweakers.net - Alle rechten voorbehouden - Uw Privacy - Algemene Voorwaarden

Uitgever van: