DTU’s nye supercomputer skal regne på batterier og solceller
more_vert
close

Få de daglige nyheder fra Version2 og Ingeniøren. Læs mere om nyhedsbrevene her.

close
Ved at tilmelde dig accepterer du vores Brugerbetingelser, og du accepterer, at Teknologiens Mediehus og IDA-gruppen lejlighedsvis kan kontakte dig om arrangementer, analyser, nyheder, job og tilbud m.m. via telefon og e-mail. I nyhedsbreve, e-mails fra Teknologiens Mediehus kan der forefindes markedsføring fra samarbejdspartnere.

DTU’s nye supercomputer skal regne på batterier og solceller

DTU Fysiks nuværende klynge-computer Niflheim. Illustration: DTU

DTU's Institut for Fysik er på shoppingtur efter en ny Linux-baseret klynge-computer, der skal bruges til kommatals-baserede intensive numeriske simuleringer ved hjælp af forskernes egenudviklede kode samt kommerciel software. Den skal koste 12 millioner kroner.

»Den skal bruges til at lave kvantemekaniske beregninger, især for materialer. Det kan være forskellige typer materialer: Katalysatorer, solceller og batterier. Der er mange egenskaber i disse materialer, man kan beregne ud fra naturlovene. På den måde kan man finde frem til materialer, der har nogle ønskede egenskaber. Det er tæt på grundforskning, men har også anvendte perspektiver,« forklarer Karsten Wedel Jacobsen som er professor ved DTU Fysik.

DTU's supercomputer skal bruges til at foretage kvantemekaniske beregninger for materialer så som katalysatorer, solceller og batterier, forklarer professor Karsten Wedel Jacobsen fra DTU Fysik. Illustration: Lisbeth Holten

Den ny klyngecomputer skal spille sammen med DTU Fysiks nuværende en af slags, Niflheim, som er bygget op i mange etaper, med start i 2003.

Den første version bestod af 500 konsum-pc’er, som blev stablet op i kælderen, på hylder ved siden af hinanden. Senere er Niflheim blevet opgraderet mange gange.

Mange computere i parallel

Man har skilt sig af med ældre dele og fået ny hardware, men selve grundprincippet om, at der er brug for mange computere i parallel til at lave DTU Fysiks beregninger, har været til stede hele tiden.

»Vi er primært ude efter at kunne lave så mange beregninger som muligt. Vi er i højere grad ude efter hurtigere beregninger end for eksempel store datamængder. Input/output udgør også små mængder.«

Det handler om intensive beregninger. Den nuværende maskine er 100 procent belagt, og der er altid beregninger til adskillige dage i køen.

»Et eksempel på store beregninger er at finde materialer til vandsplitning. Man vil have materialer, der kan splitte vand i brint og ilt. Så kan man bruge brint som brændstof. En måde at gøre det på er ved at bruge energien fra sollyset til at splitte vandet med. Derfor skal man have materialer, som meget effektivt kan udnytte lyset fra solen. Dem søger vi efter.«

Klynger giver bedst ydelse pr. krone

Klynge-arkitekturen giver DTU Fysik mest computerkraft for pengene i forhold til anvendelsen.

»Supercomputere bør nu om dage designes til de opgaver, den skal løse optimalt, i stedet for at tilpasse opgaverne til en given maskine,« uddyber Ole Holm Nielsen, som er HPC chefkonsulent hos DTU Fysik.

»Valget af gængs CPU-arkitektur, i modsætning til fx ASICs, FPGA’er eller GPU’er, har at gøre med strukturen af de problemer, vi løser. GPU’er er ikke nyttige for os pt., med den kode, vi kører,« mener Karsten Wedel Jacobsen.

DTU Fysik har i udbuddet bedt om CPU’er, som giver maksimal regnekraft og hukommelses-båndbredde til de vigtigste opgaver. Forholdet mellem pris og ydelse er også inde i billedet.

Maskinen skal designes til opgaven og ikke omvendt, mener Ole Holm Nielsen, som er HPC chefkonsulent hos DTU Fysik. Illustration: Lisbeth Holten

En del af udbuddet handler også om test af den kode, som DTU Fysik arbejder med. For det er bedst at afprøve den i praksis.

»I vores verden er der ikke nogen, der benytter FPGA’er eller ASIC’s, da de er skræddersyet til én bestemt og veldefineret opgave. Alle vores brugere har forskellige opgaver og behov, så vi er ikke ude i esoterisk hardware,« siger Ole Holm Nielsen.

Exascale i fremtiden

»Man taler meget i vores felt om ‘exascale computing’, hvor man overvejer, hvordan man kan få langt højere ydelse end i dag – hvilken arkitektur skal man gå efter? Hvis man har 100.000 noder, er man stadig i stand til at lave vores typer af beregninger? Det er næsten et forskningsområde i sig selv,« siger Karsten Wedel Jacobsen.

Med exascale computing tænkes på afvikling i skala med exaflops – altså 10^18 kommatals-operationer pr. sekund.

»Et af de store problemer med exascale er software-arkitektur,« fortæller Ole Holm Nielsen.

Det er nemlig endnu ikke klart, hvordan skal man programmere en fremtidig exascale-computer.

»Det er heller ikke givet, at alle vores typer af problemstillinger egner sig til den type af meget store computere. Vi har mange mindre opgaver.«

Python med lidt C

DTU Fysik har udviklet sine egne Python-biblioteker, og som tidligere nævnt er det en del af udbuddet, at koden skal køre godt på det kommende system.

»Der er tale om forskellige komponenter, såsom et ‘atomic simulation environment’,« fortæller Karsten Wedel Jacobsen.

»Det er et sæt Python-moduler, der kan bruges til at lave beregninger på atomar skala. Man skal specificere, hvor man har sine atomer i en struktur, og der er Python en fleksibel måde at klare den slags på. Selve vores kvantemekaniske kode er i overvejende grad skrevet i Python. Det har vist sig at være et godt sprog, af flere grunde: Det er hurtigt at skrive kode i, det er fortolket, og det giver mindre arbejde, fordi man ikke har kompileringsfasen.«

Dertil kommer, at Python er objektorienteret, og at Python har mange år på bagen og kommer med mange standardbiblioteker til bl.a. numerisk behandling:

»NumPy og SciPy bruger vi en masse af.«

Disse biblioteker er implementeret i C og har dermed højere ydelse.

»På samme måde består den kvantemekaniske del af vores kode af fem til ti procents C-kode, men alt det andet er skrevet i Python. Så man får isoleret den del af problemet, der virkelig kræver en hurtigere implementering, og man kan lave resten på en meget fleksibel måde.«

Hundredevis af brugere

Den nuværende klynge-computer har omkring 50 aktive brugere til alle tider. Der er ca. 100-200 stykker, som har en konto i systemet. Derudover kommer et antal brugere, som kun er aktive ind imellem, for eksempel i forbindelse med studenterprojekter.

Brugerne har også deres egne lokale workstations, hvorpå de kan udvikle programmer til klyngen på og så er der nogle få noder på maskinen, som er dedikeret til interaktiv udvikling.

Brugernes opgaver sættes i kø, når de skal afvikles på den nuværende klynge. Der er altid mange« jobs i køen, så maskinen er fuldt belagt. Det er for at få den optimale brug af maskinen.

»Tilbage i 1980’erne snakkede man om, at Moores lov ville blive ‘jævnet ud’, men i virkeligheden er ydelsen blevet speedet op – man får mere og mere ydelse pr. dollar. Om ti år kan man lave de samme beregninger meget hurtigere. Vi ser frem til at få den nye computer, for der er lang opgave-kø, på den vi har i øjeblikket. Så det bliver en fornøjelse.«

DTU Fysik håber at få den nye computer leveret omkring nytår, og så går der ikke så lang tid, før den er i drift. Ethernet-kabling installerer DTU’s egne elektrikere selv.

sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først

Ville Julia mon ikke være noget for dem?
Arbejder godt med python og C
Næsten lige så hurtig som C
Anvendes af mange videnskabs ændringer
Integreret parallel operationer
Nemt at lave Macroer og metaprogrammerig
Masser af fremtid etc

  • 0
  • 0

Nu bliver jeg altså nødt til at være den der insisterer på bedre sprogbrug. "Nodes" på engelsk betyder et knudepunkt i f.eks. et netværk. Noder som bruges i musik hedder derimod "notes".

Når man kalder computerne i en klynge for "nodes", er det altså ikke noder, men knuder/punkter i et netværk - eller måske bare computere/maskiner.

Det er lidt samme problemstilling som "character" som på dansk hedder tegn hvis altså det er den slags man bruger til bogstaver - karakter betyder på dansk nogle andre ting.

Jan: ja, i gamle dage købte man en skørt dyr Cray som lignede noget fløjet ind fra rummet. Men så har man senere fundet ud af at en del problemer faktisk godt kan løses parallelt med enkeltstående computere med begrænset kommunikation imellem, og da den slags er blevet forholdsvist billige fordi de produceres i enormt antal til forbrugere, bliver en del af de beregningstunge simulationer i dag udført på klynger af den slags computere, hvor den ingeniørmæssige øvelse så går på at regne på strømforbrug, indkøbspris, vedligeholdelse osv., og få mest mulig ud af budgettet.

  • 1
  • 2

Hvis man kan nøjes med 32 bit floats kan man bygge en PC med tre af Nvidias GPU og et energiforbrug på ca 3Kw. Til en rimelig penge og som kan en petaflop.
Man kan da håbe at NVIDIA snart fremstiller dem med 64 bit, hvilket er rimeligt sandsynligt.

  • 0
  • 0

Så simpelt er det desværre ikke. En GPU er kun praktisk hvis hele dit problem kan være på GPUens hukommelse, typisk nogle GB. Hvis problemet kræver mere hukommelse vil der hele tiden skulle overføres data fra RAM til GPU hvilket nedbringer hastigheden ret kraftigt. Ved ren CPU er problemets størrelse kun begrænset af RAM, og den kan snildt være 64GB eller mere.

Når det er sagt, så har du helt ret i at det et imponerende hvad man kan få ud af relativt lidt, så længe man bruger det hensigtsmæssigt.

  • 0
  • 0
Bidrag med din viden – log ind og deltag i debatten