ATI försvinner och Intel satsar fel

Under 2006 inträffade nästa milstolpe inom tekniksektorn. Efter 21 år som ett eget bolag blev det i oktober officiellt att processorjätten AMD förvärvar ATI. ATI:s VD David Orton och AMD:s VD Hector Ruiz skakade hand över affären som gav AMD tillgång till grafikteknik som annars skulle tagit många år att utveckla själva.

ATI_AMD_deal.jpg

AMD:s köp av ATI var grafikbranschens största. På bild ATI:s VD Dave Orton och AMD:s dåvarande VD Hector Ruiz.

Blott två veckor efter den historiska affären introducerade dock Nvidia nästa signifikanta steg i grafikteknik. Som en del av arkitekturen Tesla och kretsen G80 introducerades enhetliga shaders (unified shaders) till PC-marknaden, en funktion som i en något enklare form redan funnits tillgänglig i Xenos-kretsen i Microsoft Xbox 360.

Före enhetliga shaders introducerades förbättrades grafikkortens prestanda genom att lägga till fler dedikerade vertex shaders och pixel shaders, vilket gjorde kretsytan mer komplex och dyrare att tillverka. För speltitlar som inte utnyttjar mer komplexa vertex shaders-enheterna förblir dessa resurser outnyttjade, ett problem som enhetliga shaders eliminerar.

8800gtx_kakan86.jpg

Geforce GTX 8800 var en riktig murbräcka till grafikkort och Nvidias finaste stund nästefter Geforce 256. Bild från SweClockers-medlemmen kakan86.

Enhetliga shaders var en av de centrala förbättringarna i DirectX 10, och det första grafikkortet som fick stöd för den nya gränssnittsversionen var Nvidias G80-baserade monsterkort Geforce 8800 GTX. Denna best klämde in hela 681 miljoner transistorer på en yta som mätte 484 kvadratmillimeter. Kortet och dess tillvässade syskon Geforce 8800 Ultra krossade allt motstånd, enskilda kort såväl som parkopplade diton.

G80 introducerade mer än bara stöd för enhetliga shaders. En ny algoritm för kantutjämning vid namn CSAA (Coverage Sample anti-aliasing) lät de nya korten erbjuda bättre bildkvalitet utan de stora prestandaförluster som aggressiv kantutjämning brukar medföra. Här introducerades även fysikberäkningstekniken PhysX som kom från förvärvet av företaget Ageia.

En generaliserad inriktning

PhysX och enhetliga shaders var bara två exempel på hur grafikkortens arkitektur och mjukvarugränssnitten utvecklades mot att bli mer generella. Nvidia använde grafikkretsen G80 som bas när de under 2007 släppte utvecklingsplattformen CUDA som möjliggjorde mer generella beräkningar på grafikkorten, vilket bland annat användes till vetenskapliga applikationer.

nvidia_p588_quadro_fx570-1_SAFA.jpg

Nvidia använde Tesla-arkitekturen som bas för de nya arbetsstation-fokuserade Quadro-korten. Bild från SweClockers-medlemmen SAFA.

AMD valde att istället exponera företagets grafikkortsarkitektur via det öppna gränssnittet OpenCL, något som började utnyttjas på allvar först när R600-generationen blev tillgänglig. Det första grafikkortet baserat på R600 blev det emotsedda Radeon HD 2900 XT, som inte uppfyllde förväntningarna. Kortets energiförbrukning låg på nivå med entusiastprodukterna, men prestanda hörde till det övre mellansegmentet.

Besvikelsen till trots representerade R600 en rad nyheter för AMD. Det var företagets första DirectX 10-kompatibla arkitektur och även dess första arkitektur som använde en 512 bitar bred minnesbuss. Här fanns även en krets som möjliggjorde tesselering, men då stöd för tekniken saknades i DirectX utnyttjades inte denna kapacitet.

msi_rx2600xt_t2d512dz_d3-1_SAFA.jpg

Med Radeon HD 2000-serien och R600-generationen bytte AMD arkitektonisk grund. Bild från SweClockers-medlemmen SAFA.

R600 innebar även introduktionen av en arkitektur baserad på Very Long Instruction Word (VLIW). Detta byggde på att arkitekturen utformats för att exekvera komplexa kedjor av instruktioner parallellt. VLIW-arkitekturen medförde även att korten inte behövde lika avancerade metoder för schemaläggning av exekveringen av instruktioner.

Radeon HD 2000-serien var den första serien där AMD inte erbjöd en reell konkurrent till Nvidia i entusiastsegmentet. För att råda bot på problemen med prestanda och energieffektivitet släppte AMD uppföljaren R670 som krympte tillverkningsprocessen från 80 till 55 nanometer och den 512 bitar breda minnesbussen ersattes med en mer konventionell sådan på 256 bitar – Radeon HD 3000-serien var född, inledningsvis med HD 3870 i spetsen.

Detta innebar att AMD till slut kunde konkurrera med Geforce 8800-familjen, dock utan att ta över ledartröjan i prestandasegmentet. Eftersom inte de R670-baserade korten kunde konkurrera med Nvidias toppkort valde AMD att introducera grafikkort med två stycken R670-kretsar – HD 3870 X2 och senare HD 3850 X2.

4870x2_Apanx.png

Grafikkort med dubbla grafikkretsar började bli vanliga mot 2000-talets slut, här ett Radeon HD 4870X2. Bild från SweClockers-medlemmen Apanx.

Radeon HD 3870 X2 lanserades i januari 2008 och följdes upp av HD 3850 X2. Till skillnad från tidigare Crossfire-lösningar hade AMD här integrerat en specialkrets som gjorde kommunikationen mellan de båda kretsarna betydligt mer effektiv. Som ett resultat blev Radeon HD 3870 X2 med klar marginal det bäst presterande kortet.

Intels mångkärniga luftslott

Den generaliserade renderingsmodellen var i skottlinjen för en annan gigant i branschen. Intel hade under en tid jobbat på ett projekt vid namn Larrabee där ett större antal processorkärnor baserade på företagets instruktionsuppsättning x86 skulle kopplas samman på ett dedikerat grafikkort. Kärnorna baserades på den gamla Pentium-designen P54C och stödde synkronisering av cacheminne mellan samtliga kärnor på kortet.

Projektet presenterades först under Siggraph 2008 och till skillnad från konventionella grafikkort från AMD eller Nvidia var Larrabee-arkitekturen väldigt avskalad sett till dedikerad hårdvara för rasterbaserad rendering. Hårdvaran kunde accelerera traditionell Direct3D- eller OpenGL-kod i mjukvara men dess största styrka låg i att kunna utföra generella beräkningar och uppgifter som drog nytta av traditionella processorkärnor, exempelvis ray-tracing.

Prestanda i konventionell rastergrafik var begränsad, men Intels mål var att Larrabee-korten skulle kunna utrustas med så pass många P54C-kärnor att det skulle kompensera för dessa tillkortakommanden. Intel skulle komma att visa diverse tekniska demonstrationer av vad Larrabee kunde åstadkomma, bland annat ray-tracing-renderade versioner av Quake II och Quake Wars, men prestanda i traditionell rendering var fortsatt begränsad.

När Intel presenterade Larrabee-prototyper igen följande år lyckades kortet nå en beräkningskapacitet på 1 teraflops (TFLOPS), ungefär en femtedel av vad de dåvarande prestandakorten från konkurrenterna kunde skryta med. Efter fortsatta problem med att nå önskade prestandanivåer valde Intel att skrota Larrabee som grafikkort för konsumentbruk och stöpte om det till beräkningskort för superdatorer och arbetsstationer under produktnamnet Xeon Phi.