We hebben in deze IDF week al meermaals stil gestaan bij Intels tick-tock strategie. De eerste volgende tick is de overstap naar 32 nm transistors met de komst van de Westmere generatie processors. De eerste exemplaren daarvan liggen begin volgend jaar in de winkel. Qua architectuur is Westmere vrijwel identiek aan Nehalem, met als belangrijkste verschil de komst van een zevental nieuwe instructies die AES encryptie versnellen.
Eind volgend jaar is het tijd voor een nieuwe tock: een nieuwe architectuur op het dan een jaar bestaande 32 nm procedé. De opvolger van de Nehalem architectuur heet Sandy Bridge. En hoewel Intel over zaken als het aantal cores, de cache grootte of de klokfrequenties nog stijf de kaken op elkaar houdt, zijn er wel meer zaken bekend geworden over de onderliggende processorarchitectuur van de Sandy Bridge chips.
In bovenstaande afbeelding zijn de belangrijkste zaken direct te zien: 2x floating point throughput, 2x load throughput en 3-operand instructions. Om met de eerste twee te beginnen: Intel bewerkstelligt dit door alle floating point verwerkingseenheden (execution units) en alle registers binnen de CPU op te waarderen van 128-bit naar 256-bit. Ofwel; waar het uitvoeren van een bewerking op een 256-bit getal nu minstens twee klokslagen in beslag neemt, kan dat staks in één tik. In sommige gevallen kunnen nu ook twee 128-bit getallen, vier 64-bit getallen of zelfs acht 32-bit getallen in één klap door een execution unit worden verwerkt.
Overigens maakte Intel bij de Core-architectuur van de Core 2 Duo voor het eerst de overstap van 64-bit naar 128-bit. Dat heeft destijds voor een flinke prestatiewinst gezorgd.
Alle registers in de CPU zijn vergroot van 128-bit naar 256-bit.
Het kunnen werken met drie of zelfs vier operands binnen een instructie, is misschien nog wel hetgene wat de grootste performance stijging gaat veroorzaken bij Sandby Bridge. Hoewel de achterliggende assemblercode de meesten boven de pet gaat, is op zich niet lastig te begrijpen wat hiermee bedoeld wordt. Kijk eens naar deze formule:
C = A + B
Ofwel; getal C is getal A plus getal B. Het lijkt te simpel voor woorden, maar geen enkele processor op dit moment kan een dergelijke berekening in één keer uitvoeren, omdat er in één berekening maximaal twee registers kunnen worden aangesproken. De betreffende berekening moet binnen een processor zodoende op deze wijze worden uitgevoerd:
C = A
C = C + B
Ofwel; in twee stappen. Sandy Bridge ondersteunt wél berekeningen met drie en in sommige gevallen zelfs vier operands. Ofwel: veel bewerkingen waar nu twee of meer klokslagen voor nodig zijn, kunnen dalijk in één. Hieronder zie je het gegeven voorbeeld in assembler code.
Daar blijft het verder niet bij. Zo krijgen de Sandy Bridge processors opnieuw een hele rits nieuwe instructies waarmee voornamelijk vector berekeningen een stuk sneller kunnen worden gedaan. Verder wordt de geheugencontroller ook geheel vernieuwd, zodat deze sneller stukken data kan ophalen die niet direct achter elkaar in het geheugen zijn geplaatst. Al met al moeten deze vernieuwingen eind volgend jaar opnieuw voor een flinke performance boost gaan zorgen.
Overigens heeft Intel al één ding over de daadwerkelijke Sandby Bridge chips laten doorschemeren. Waar begin volgend jaar bij Clarkdale en Arrandale de in de processor geïntegreerde videokaart in feite een tweede, losse chip binnen de processorverpakking is, worden binnen de Sandy Bridge architectuur de CPU en GPU daadwerkelijk ondergebracht in één die.