Det har gått hela sju månader sedan AMD släppte detaljerad information om dess Opteron A1100 server CPUoch tjugotvå månader sedan tillkännagivandet. Idag, på Hot Chips-konferensen i Cupertino, CA, avslöjade AMD de sista bitarna om sin ARM-drivna serverstrategi som är huvudhuvudet för A1100.
Fodralet för serverprocessorer med låg effekt
Innan vi diskuterar de nya Opteron A1100-detaljerna, låt oss gå igenom bakgrunden till varför AMD designade en ARM-driven CPU. Allt handlar om de enheter och tjänster vi nu tar för givna: mobiltelefoner, surfplattor, molnlagring och molntjänster. AMD presenterade en bild för ungefär ett år sedan som sammanfattade det fint.
Antalet internetanvändare växer med 8 till 12 % varje år. Apple, Google, Microsoft, Facebook, you-name-it, alla investerar enorma summor pengar i serverfarmar för att tillhandahålla de tjänster vi har kommit att lita på. Denna trend tar allt mer fart när mjukvaruföretag som Microsoft försöker efterlikna Apples och Googles framgångar genom att sälja hårdvara (Apple) och tillhandahålla free tjänster (Google) som stöds av annonser.
Att bygga infrastrukturen för att stödja alla dessa enheter och användare är ett enormt åtagande. Vanligtvis köper företag traditionella kraftfulla servrar (läs: Intel Xeon) och delar upp sin datorkraft mellan många uppgifter efter behov. Detta är dock inte alltid den bästa strategin. För IO-uppgifter är du alltid flaskhalsad av något annat än processorn, så det finns ingen anledning att kasta höga kostnader och hög effekt processorer på problemet. För webbserveruppgifter är svarstiden avgörande. Men med det enorma antalet användare som ansluter, har webbservrar blivit ett “pinsamt parallellt” problem som du kan ta itu med med flera kärnor – så länge det finns tillräckligt med muskler bakom varje CPU.
Problemet med “tillräckligt med muskler” har hindrat tidigare försök med låg effekt och hög densitet på webbservern. När vi testade Calxeda ARM-datorklustret fanns det bara vissa edge-fall där det var mer effektivt än en dubbelkärnig Xeon-server som körde virtuella maskiner. Calxeda själva medgav att deras processorer, som använder ARM Cortex A9s, var i den tidiga adoptionsfasen av ARM-drivna webbservrar. Calxeda sa att det inte skulle dröja förrän ARMv8 (där virtualisering stöds) och Cortex A57 som ARM-baserade servrar skulle “korsa avgrunden” och gå in i mainstream.
Med Opteron A1100 hoppade AMD över den tidiga adoptionsfasen och valde något med större chans att lyckas.
Möt A1100: CPU:er och IO
Det finns tre typer av ARM-licenser: POP, processor och arkitektur. En POP-licens står för Processor Optimization Pack och ger licenstagaren allt de behöver för att skicka ett chip till fabriken. En processorlicens ger information om en ARM-kärna som Cortex A9 så att du kan implementera den i din egen SoC, men du får inte anpassa den. Slutligen finns det den ultimata licensen, en arkitekturlicens. En arkitekturlicens tillhandahåller alla detaljer om ARM-instruktionsuppsättning (ISA) och CPU-implementering så att en licenstagare kan implementera sin egen anpassade CPU-kärna med hjälp av ARM ISA hur de vill. AMD är licenstagare för processor och arkitektur. Om AMD beslutar att det kan vara konkurrenskraftigt genom att skicka en SoC med en ARM-designad CPU (processorlicens), kan de göra det utan ansträngning att designa sin egen ARM ISA CPU. Om AMD vill differentiera sig med en specialdesignad CPU som använder ARM ISA, kan AMD använda sin arkitekturlicens för att göra det, liknande Qualcomms Krait CPU-kärnor. AMD har bestämt sig för att göra båda. Idag diskuterar vi dess processorlicens.
AMD:s första SoC som innehåller en ARM-processor heter koden Seattle, Opteron A1100. Seattle har inte mindre än åtta 64-bitars ARMv8 ISA, Cortex A57 kärnor. Beroende på tillgänglighet kan detta vara den första Cortex A57-processorn som nådde någon marknad, inte bara servermarknaden. AMD kommer att följa upp under 2015 med en version med lägre effekt som är pinkompatibel med en annan x86 CPU, som båda är en del av Project Skybridge. Under 2016 kommer AMD att utnyttja sin arkitekturlicens och leverera K12, en helt anpassad CPU-design med ARMv8 ISA.
Varje par Cortex A57s i A1100 delar en 1MB L2-cache (totalt 4MB av L2), och de rullar alla upp till en delad 8MB L3-cache. För att adressera servermarknaden är alla cachar ECC-skyddade förutom L1-instruktionscachen, som istället är paritetsskyddad. Instruktionscacheskydd är inte lika viktigt (ogiltig instruktion betyder bara ett pipelinestopp). AMD använder ARM-bussgränssnitt och felsökningsstöd genom hela designen. Cortex A57 implementerar också kryptografitillägg som citeras av ARM för att accelerera saker som https med 3-10x jämfört med tidigare ARM-designer.
SoC har ett dubbelkanals (2×64-bitars) DDR3/4-gränssnitt till upp till 128GB 1866MHz minne. Precis som cacherna stöder minnesvägen också ECC av varianten för enbitsfelkorrigering/dubbelbitsfelupptäckning. Registrerade (RDIMM), oregistrerade (UDIMM) och small-outline (SODIMM) minnesmoduler stöds av A1100 SoC, men faktiska moderkort kommer sannolikt bara att stödja en typ av minne. Detsamma gäller DDR3 vs. DDR4.
Eftersom A1100 är en SoC, integrerar den IO direkt i det enda chippet istället för att förlita sig på en off-chip IO-hubb. Integrerade komponenter inkluderar 8 SATA 3 (6Gb/s)-portar, två 10 Gbit Ethernet (10GBASE-KR)-portar, en 10/100/1000 Ethernet-port, 8 banor av Gen3 PCI-Express (stöder 8x, 4x/4x och 4x /2x/2x), I2C, SPI och UART. Inkluderandet av denna bredd av lagrings-IO (8 SATA3-portar) tillsammans med 2×10 Gbit Ethernet är särskilt intressant eftersom det ger oss tips om hur AMD kommer att positionera Opteron A1100 på marknaden. Mer om detta senare.