Eind 2020 verwelkomen we in België een nieuwe supercomputer op de campus van UGent. De zogenaamde Tier 1-installatie, met enkele petaflops rekenkracht, zal zo’n 6 miljoen euro kosten. Wie aan de megalomane exascale-projecten in de VS denkt, is 600 miljoen dollar kwijt. Wat drijft die kost zo sterk omhoog?
Het spreekt voor zich dat hallucinante bedragen bij de exascale-projecten van HPE-Cray (Frontier) en IBM (Aurora) niet alledaags zijn, maar supercomputers kosten vandaag de dag enorm veel geld. Gelukkig hoef je niet zelf zo’n systeem te bouwen en kan je bijvoorbeeld terecht bij het Vlaams Supercomputer Centrum om rekenkracht en tijd te huren.
Om te begrijpen waarom HPC-systemen zoveel kosten, zitten we samen met Rick Koopman (EMEA Technical Leader HPC bij Lenovo). Hij mag zijn hoofd dagelijks breken op complexe supercomputerinstallaties die over de hele wereld worden geïnstalleerd.
Niet elke chip dezelfde kwaliteit
“Om een supercomputer te bouwen, moet je starten met nodes in elkaar te zetten. Elke node heeft één of twee sockets die gevuld worden met een cpu van Intel of AMD. Hier zit al direct één van de zwaarste kosten van een HPC-installatie.”
“Om het maximale uit een supercomputer te halen, moeten we de best presterende chips hebben van Intel of AMD”, zegt Koopman. “Of het nu over een 64-core AMD Epyc Rome-chip gaat of een Intel Platinum-reeks, die chips kosten veel geld. We willen enkel de zogenaamde ‘top bin’-chips die in een batch het allerbeste presteren.”
In tegenstelling tot wat je zou denken, is niet elke chip die van de band rolt bij AMD of Intel van eenzelfde kwaliteit. Sommige chips kunnen net iets hogere frequenties aan of werken stabieler dan andere, ondanks dezelfde architectuur. Zoiets is eigen aan het uitermate technische productieproces van een cpu. Wie graag de allerbeste prestaties, en dus de allerbeste chips, wil, betaalt bij beide partijen de hoofdprijs. Een online zoektocht brengt ons al snel op 7.000 dollar bij AMD (Epyc Rome) en tot 50.000 dollar bij Intel (Cascade Lake-AP) voor één chip.
Acceleratoren verhogen de prijs
De processor is een belangrijk onderdeel in een node en dikwijls ook het duurste. Een andere component die de prijs sterk de hoogte in duwt, is de gpu. HPC-installaties die gebruik maken van acceleratoren, kunnen terecht bij Nvidia of AMD voor algemene gpu’s, of bij tal van andere aanbieders voor specifieke oplossingen zoals FPGA’s.
Een gpu kan een flinke meerkost zijn wanneer in een node meerdere exemplaren worden ingebouwd. Het topmodel van AMD, de Instinct 100, komt normaal gezien pas later dit jaar op de markt en heeft nog geen prijskaartje gekregen. Ook Nvidia werkt aan nieuwe Quadro-kaarten met de Ampère-architectuur, met een beschikbaarheid later dit jaar. Wanneer we kijken naar de huidige lijn van Nvidia met zijn Tesla V100, mag je rekenen op gemiddeld 11.000 dollar per gpu volgens diverse online winkels. In een gpu-node kan je al snel vier gpu’s verwerken.
Geheugen is nog een belangrijke factor in een node. Reken op gemiddeld 0,5 GB RAM per processorkern om optimale prestaties te leveren. Dit is een algemene vuistregel en geldt uiteraard niet voor geheugenintensieve taken die een andere benadering vereisen. (Voor een aantal workloads zijn we dit zelfs toenemen naar 2 en 4 GB per core.) Prijzen variëren heel sterk op vlak van geheugen, maar reken op prijzen tot 5.700 euro voor 128 GB of tot 3.000 euro voor 64 GB.
Maximale prestaties
Zoals je ondertussen al kan inschatten, kost hardware voor HPC-installaties behoorlijk veel. Dan hebben we het enkel gehad over compute-nodes. Exacte prijzen opzoeken is altijd moeilijk omdat dit geen klassieke webwinkelhardware is. Internationaal vinden we echter wel een paar aanbieders online om een indicatie te krijgen van de prijzen. Wie een node wil met 328 TB aan flash-opslag, komt al snel op 150.000 dollar uit. Voor een Mellanox InfiniBand-switch met 48 poorten betaal je tussen de 50.000 en 60.000 dollar. Daarnaast zijn er nog de voedingen per rack, moederbord, koeling, bekabeling en onderhoudscontracten (die oplopen in de honderdduizenden euro’s).
Net daarom is het voor fabrikanten heel belangrijk om heel slim om te gaan met configuraties, om die maximaal te benutten. In elke situatie het maximale voorzien kost al snel veel te veel geld voor bedrijven. Exascale-prestigeprojecten zijn van een ander kaliber, maar in het geval van de Tier 1-installatie van de UGent in de nabije toekomst wil men het maximale halen uit een installatie met enkele petaflops.
Fabrikanten blijven daarom op zoek naar kleine eigen innovaties om de kost te drukken van een HPC-installatie, om zo belangrijke contracten binnen te rijven. Uiteindelijk speelt de kostprijs de belangrijkste rol, naast politieke inmengingen.
“Bij Lenovo hebben we bijvoorbeeld een oplossing waarbij twee nodes boven elkaar één I/O-adapter delen”, zegt Koopman. “Zo moeten we maar één verbinding naar de switch leggen en reduceer je de hoeveelheid kabels met 50 procent. Bovendien daalt ook de kost van je switch met de helft. Zo’n aanpak werkt niet bij elk project. Wanneer doen we het wel? Bijvoorbeeld wanneer een processor geheugenintensieve workloads moet verwerken en weinig I/O nodig heeft. Dan kan je met een ‘oversubscription below latency’-netwerk werken en kan je twee nodes handig op één I/O-adapter aansluiten.”
Lucht- of waterkoeling
Hardware kost veel geld en moet voor elk contract worden geoptimaliseerd. Daarom is het belangrijk om bij elk project vooraf benchmarks te draaien om het maximale uit de hardware te halen. Die oefening gebeurt bij elk project wanneer de hardware beschikbaar is. Toekomstprojecten waarbij je prognoses moet maken, zijn delicater en vereisen de nodige ervaring van de fabrikant en veel gesprekken met specialisten van bijvoorbeeld Intel of AMD om toekomstige hardware goed in te schatten.
“We werken vandaag altijd met off-the-shelf-materialen en stoppen alles in klassieke 19 inch racks met 110 cm diepte. Het enige wat we wel volledig zelf hebben ontwikkeld en continu blijven verder ontwikkelen en verbeteren, is de waterkoeling om elke rack en iedere node in he tracks op de optimale operationele temperatuur te houden”, zegt Koopman. “Daar kan je jezelf vandaag behoorlijk in differentiëren als fabrikant en het heeft een belangrijke impact op het energieverbruik van de HPC-installatie.”
“Met lucht koelen lukt tot maximum 35 kW per rack. Hoger dan dat vereist automatisch waterkoeling. We hebben net het design van een project afgerond dat in de tweede helft van volgend jaar wordt geleverd en meer dan 100 kW per standaard rack verwerkt. Waterkoeling wordt essentieel en elke efficiëntieslag die je daar kan leveren, is meegenomen. Zo hebben we samen met Barcelona Supercomputing (BSC) een oplossing ontwikkeld dat bepaalde jobs voor een HPC tot 10 procent efficiënter kan maken door dynamisch de frequencies van processoren aan te passen.”
De snelste supercomputer op dit moment, de IBM Summit, heeft 10,1 megawatt nodig om zijn piek van 148 petaflops te realiseren. Een efficiëntiewinst van 10 procent staat hierbij gelijk met 1 megawatt, wat de elektriciteitsrekening een pak goedkoper maakt.
Na aankoop stopt het niet
Een HPC-installatie aankopen kost (tientallen) miljoenen euro’s, maar daarmee stopt de kost van het systeem niet. De hardware draaiende houden, de structurele voorzieningen om zo’n supercomputer te kunnen installeren, het zijn allemaal extra kosten die het prijskaartje nog verder de hoogte in duwen.
Daarbij komt dat de HPC-markt voor sommige bedrijven een monopolie is. Mellanox heeft met InfiniBand geen concurrentie meer sinds Intel de ontwikkel stekker uit Omni-Path heeft getrokken. Nvidia is al jaar en dag marktleider wat betreft gpu’s en drijft daarmee de hardwarekosten stevig de hoogte in. De Intel Xeon-lijn is ook niet goedkoop, maar die krijgt stilaan stevige concurrentie van AMD met de Epyc-lijn. Zulke concurrentie is nodig om de HPC-markt niet nog duurder te maken dan ze vandaag al is.
Wie veel geld heeft, kan een installatie kopen. Al de rest kan beter tijd huren op een beschikbare machine.
Moet jij zo’n HPC-installatie overwegen? De kans is bijzonder klein. Bij het Vlaams Supercomputer Centrum kan je vandaag terecht om tijd op een supercomputer te huren. Dat kan voor onderzoek, maar ook om technologie of applicaties te ontwikkelen, of andere industriële toepassingen. Grote bedrijven die rekenkracht nodig hebben en met gevoelige materie werken, kunnen investeren in een eigen HPC-installatie. De rest huurt beter tijd op een beschikbare machine in plaats van miljoenen euro’s neer te tellen voor eigen hardware.