Hoofdcategorien
Device Settings

Intel Itanium sneak preview

Door Wouter Tinus, maandag 22 januari 2001 16:09, views: 17.061

Intel's Tahoe architectuur

Tahoe, de codenaam van Intel's nieuwe ISA (instruction set architecture) gebaseerd op EPIC heeft als definitieve naam Intel Architecture 64 gekregen. In IA-64 zijn de instructiebundels 128 bit groot en bevatten maximaal drie opdrachten die elk 41 bit groot zijn, dit in tegenstelling tot IA-32, waarin opdrachten geen vaste lengte hebben. Die drie opdrachten nemen samen 123 bit in beslag en dus is er nog 5 bit over voor extra informatie over de instructiegroep, die de processor helpt met het efficint gebruiken van zijn beschikbare bronnen.

Itanium instruction bundel

Naast de grote stap van CISC naar EPIC waagde Intel in haar nieuwe architectuur meteen de sprong van 32 naar 64 bit. Wat wil dat nou precies zeggen? Ten eerste kan de processor met waarden van 64 bit (8 byte) groot werken, dat wil zeggen grotere getallen en nauwkeurigere uitkomsten dan 32 bit processors. Verder kan de adresbus opgerekt worden tot een breedte van 64 bit, waardoor de IA-64 architectuur maximaal 18 Exabyte aan geheugen kan aanspreken. De 4GB die door Windows 98 kan worden gebruikt en zelfs de 64GB die Windows 2000 Datacenter Server in combinatie met Pentium III Xeon processors op dit moment maximaal aankan, vallen daarbij bleek weg.

Verder is in IA-64 software pipelining toegevoegd. Deze feature, die ook wel register rotation heet is vooral handig voor handelingen die herhaald moeten worden op meerdere variabelen, zoals bij while en for loops die bij elke programmeur bekend zijn. In plaats van op een rij van waarden n voor n dezelfde handelingen uit te voeren schuift de processor de waarden in de registers gewoon een plaatsje op. In feite worden de namen van de registers veranderd en wordt de data niet fysiek gekopieerd, maar het effect is hetzelfde: meerdere variabelen in verschillende stadia van de berekeningen zijn tegelijk aanwezig. Dat spaart veel tijd uit omdat de code minder groot is en er minder in het geheugen gekeken hoeft worden.


Itanium - Codesample - for loop

De hoofdgedachte achter EPIC en IA-64 is parallel werken, een IA-64 processor moet in staat zijn veel dingen tegelijk te doen. Daarvoor zijn niet alleen veel execution units nodig maar ook een hele berg registers. De IA-32 processors die we nu kennen hebben meestal 32 of minder van deze registers, IA-64 processors zullen er daarentegen meer dan 256 nodig hebben. Naast het parallel kunnen werken hebben de vele registers ook nog het voordeel dat complexe berekeningen met veel waarden snel kunnen worden uitgevoerd, zonder steeds terug te vallen op het cache.

De performance van een IA-64 processor is enorm afhankelijk van zijn compiler. Dat is een nadeel, want zo'n compiler is enorm complex om te schrijven, hij moet namelijk met ongelooflijk veel dingen rekening houden om de broncode te analyseren en de instructiebundels samen te stellen. Iemand die zo'n compiler schrijft moet de processor zijn architectuur van binnen en buiten kennen. De compilers voor IA-64 zijn dan ook al bijna even lang in de maak als de architectuur zelf, maar ondanks al die moeite zullen ze bij de release nog niet optimaal zijn. Door optimalisaties en nieuwe ideen voor slimmere compilers kunnen de prestaties van IA-64 processors in de loop der jaren nog flink stijgen.
IA-64 toepassingen

Volgende pagina (De eerste IA-64 hardware... - 5/10)


Inhoudsopgave

VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011