Gå til innhold

USA skal bygge datamaskin med ytelse på 1,5 exaflops


Anbefalte innlegg

Gjest Slettet+5132

Har lurt litt på dette, hvordan setter man en slik sak i sving/arbeid?

Hva brukes den Egentlig til? :-p

Mye krefter!

 

Det som er viktig å huske er at det ikke er noe veldig magisk over en slik maskin. Det er mange raske datamaskiner koblet sammen via en svært god nettverkssvitsj (som ofte gjør lure ting mhp hvilke maskiner som kan raskt snakke med hvilke andre maskiner).

 

Den brukes hovedsakelig til vitenskapelige beregninger. Det igjen kan være mye rart, men typisk ting som å regne på fluiddynamikk, regne på molekyler (til eg nye materialer), og delvis under fluiddynamikk også regne på astrofysikk og liknende. 

 

For å bruke den må man ha et program som klarer å nyttegjøre seg av flere maskiner samtidig. Dette oppnår en i 99% av tilfellene med å bruke MPI (message passing interface). MPI lar deg skrive program som sender data frem og tilbake mellom PCene i nettverket. 

 

For å illustrere hvorfor du vil sende data frem og tilbake i nettverket, tenk deg at du ville regne på hvordan lufttrykket over Norge utviklet seg over tid (værvarsling gjør essensielt dette, bare med litt flere ukjente).

 

For å dra nytte av flere maskiner samtidig, deler du da Norge opp i flere biter, la oss for for eksempelets del anta at vi har delt Norge inn i Sør-, Midt- og Nord-Norge (ganske dårlig fordeling all den tid Nord-Norge er mye større, men la gå).

 

Inne i hver del kan du regne deg frem til trykket ved neste "iterasjoner", det vil si bittelitt frem i tid, men du trenger alltid å vite hva trykket er i nabodelene, så maskinen som har data for midt-Norge må sende trykket langs grensen til maskinen med Sør-Norge og til maskinen med Nord-Norge, og maskinen med Sør-Norge må sende til maskinen med Midt-Norge. Her sender man altså kun data akkurat langs grensen mellom de to delene.

 

I praksis skriver man et slikt program i enten C/C++, Fortran og til en mindre grad Python eller Julia. Så bruker en litt tid på å få dette programmet til å kjøre på denne serveren (kan ta litt tid!). Når alt er klart, må en pent be serveren om å få lov til å kjøre et slikt program. Det gjør man med at man oppgir antall maskiner en trenger (eller antall CPU-kjerner), og hvor lenge en trenger maskinen (de store clusterne tillater deg ikke å allokere for mer enn 24 timer om gangen). Clusteret prøver da å bestemme optimal tid for når programmet ditt skal starte, og dette kan ta alt fra et par sekunder til et par uker.

 

En okkuperer ofte ikke hele maskinen samtidig, og det kan være flere personer som regner på noe samtidig som deg, bare på andre noder/maskiner. 

 

Nå skal det også nevnes at for å få tilgang til slike maskiner må en ofte skrive en søknad som forklarer hvorfor det en vil regne på er viktig, og hvorfor programmet en vil  bruke kan utnytte en så stor maskin. Søknaden blir da evaluert av en faglig komite. 

Endret av Slettet+5132
Lenke til kommentar
Videoannonse
Annonse

Dette var kjempeinteressante nyheter. Saken misser det mest oppsiktsvekkende med denne nyheten, og det er valg av Radeon GPU. Dette er et enormt slag for Nvidia, som med sin CUDA i stor grad har lykkes med å få monopol innen HPC. Med denne maskinen vil ROCm stacken til AMD få innpass i verdens største HPC miljø. Det er en stor seier for open source, og HPC brukere. Endelig kan vi øyne håp om at GPGPU programmering kan standardiseres på tvers av hardware produsenter.

Lenke til kommentar

Dette var kjempeinteressante nyheter. Saken misser det mest oppsiktsvekkende med denne nyheten, og det er valg av Radeon GPU. Dette er et enormt slag for Nvidia, som med sin CUDA i stor grad har lykkes med å få monopol innen HPC. Med denne maskinen vil ROCm stacken til AMD få innpass i verdens største HPC miljø. Det er en stor seier for open source, og HPC brukere. Endelig kan vi øyne håp om at GPGPU programmering kan standardiseres på tvers av hardware produsenter.

Dette er en kjent strategi fra DOE i USA. De dele opp de store maskinene på flere leverandører.

 

To maskiner som nettopp har blitt ferdigstilt nå kjører IBM på CPU og Nvidia på GPU (Sierra & Summit). Det kommer også en maskin i 2020 som skal bruke AMD på CPU siden og Nvidia på GPU-siden (Shasta). I 2021 kommer det i tillegg til denne maskinen som ble annonsert fra AMD også en maskin som skal kjøre Intel både på CPU og GPU (Aurora).

 

På disse maskinene har OpenACC blitt pushet ganske lenge, og som kjent så støtter ROCm også å kompilere kode som bruker CUDA.

  • Liker 1
Lenke til kommentar

Finnes det noe informasjon om strategien?

Det ble sagt senest på Supercomputing i Dallas i november i fjord, når de presenterte Shasta/Perlmutter, som blir forgjengeren til denne maskinen. Mulig jeg har noen slides fra presentasjonen på jobben.
Lenke til kommentar

Det har faktisk vært veldig interessant å se hvis du gidder.

Det skal jeg gjøre.

Det blir en spennende miks av hardware DOE får i årene fremover:

 

2020: Perlmutter - AMD EPYC (Zen 3) + "Volta Next"

 

2021: Aurora - Intel Xeon (Ice Lake) + Intel Xe

2021: Frontier - AMD EPYC (Zen 4) + "Navi Next"

 

Det kommer også til å bli annonsert enda en maskin senere i år, den vil høst sannsynlig bli basert på IBM POWER10 og en ny generasjon med Nvidia GPUer.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...