Nästa år är det dags för AMD att lansera en ny familj processorer i 32 nanometer avsedda för stationära datorer, arbetsstationer och servrar. Chefsarkitekten Mike Butler presenterar Bulldozers design på konferensen Hot Chips 2010 och avslöjar några av hemligheterna bakom AMD:s största arkitekturförändring sedan K7 (Athlon) för mer än tio år sedan.
Arkitekturen Bulldozer karaktäriseras av två ledord: prestanda och skalbarhet. Den sistnämnda egenskapen innefattar möjligheten att lägga till fler kärnor (Bulldozermoduler) efter behov, men även att utnyttja kretsytan så effektivt som möjligt för att ge motsvarande prestandaskjuts.
Mycket av detta handlar om hanteringen av trådar och designen av kärnor. Traditionella x86-processorer kan vanligtvis hantera en tråd per kärna (CMP). För att bättre utnyttja kapaciteten har Intel utvecklat tekniken Hyperthreading (SMT) som låter varje kärna exekvera två trådar samtidigt.
"Bulldozer Module"
Modulär design
Två kärnor för lika många trådar
Delade resurser: Fetch, decode, L2-cache, FPU/SSE
80 procent av prestandan av två traditionella kärnor
Optimerad energiförbrukning
Sparar kretsyta
AMD har en annan filosofi. Istället för separata processorkärnor använder Bulldozer tätt sammanbundna beräkningsenheter som delar på resurser, exempelvis L2-cache, i så kallade Bulldozer-moduler. Varje modul innehåller två kärnor, kan exekvera två trådar samtidigt och användas ungefär som byggklossar för att konstruera processorer med varierande antal kärnor.
Grundtanken är att nyttja kretsytan och beräkningskapaciteten bättre än tidigare designer. Är en kärna i modulen högt belastad kan denna komma åt den andras resurser, och om båda kärnorna arbetar utnyttjas kapaciteten maximalt.
Tekniken ger dock inte lika hög prestanda som två separata kärnor. AMD uppskattar att Bulldozermodulen kan leverera ungefär 80 procent av prestandan jämfört med motsvarande CMP-baserad design. I gengäld hålls strömförbrukningen nere samtidigt som värdefull kretsyta sparas in.