Kredit:Oak Ridge National Laboratory
Da GPU -arkitekturer er blevet standarden for videnskabelig computing, applikationsteam har måttet eftermontere deres videnskabelige koder for at køre på nye systemer. Selv teams med koder, der er blevet konstrueret til GPU'er, skal løbende tilpasse dem til nye arkitekturer.
Evan Schneider fra Princeton University, selvom, begyndte at udvikle sin kode til GPU'er i starten. I 2012, Schneider stod over for udfordringen med at finde ud af, hvordan man løser enorme astrofysikproblemer ved hjælp af GPU -klynger. Hvad begyndte på små klynger ved University of Arizona med sin ph.d. -rådgiver, Brant Robertson - i øjeblikket lektor ved University of California, Santa Cruz-til sidst blev kørt på den nu nedlagte Cray XK7 Titan-supercomputer på Oak Ridge Leadership Computing Facility (OLCF), et amerikansk energidepartement (DOE) Office of Science User Facility placeret på DOE's Oak Ridge National Laboratory. Koden - kaldet Cholla, eller Beregningshydrodynamik om ∥ (parallelle) arkitekturer - er nu en af de første koder, der omskrives til Frontier, et exascale -system, der skal indsættes på OLCF i 2021.
"Med Frontier, der kommer så meget mere strøm til rådighed på GPU'erne, "Sagde Schneider." Det giver virkelig ikke mening at gøre næsten alt på CPU'erne længere, så meget af det, vi arbejder på, er at få nogle af vores ekstra fysikmoduler til at køre på GPU'erne. "
Koden er en af otte i Center for Accelerated Application Readiness (CAAR), en indsats for at forberede videnskabelige applikationer til Frontier. Cholla bruges til at simulere fysiske systemer involveret i galakseudviklingen, som er hvordan galakser i universet ændrer sig med tiden. Galakser består ikke kun af stjerner, men også af støv og gas, der påvirker denne udvikling. Holdets mål er at køre en simulering af Mælkevejen, der inkorporerer al den gasfysik, der forekommer, foruden alle stjernerne.
"Vi har brug for modeller i høj opløsning, fordi vi virkelig vil spore gassen i alle dens forskellige faser-varm, kold, hed, høj hastighed, og så videre, "Sagde Schneider." Vi vil forstå gasfysikken, der driver stjernedannelse, og hvorfor galakser holder op med at danne stjerner. For at udnytte de observationsdata, vi allerede har, vi skal lave en ekstremt stor simulering. "
Cholla er i øjeblikket kompatibel med NVIDIAs CUDA programmeringssprog til at køre på OLCF's IBM AC922 Summit system, som har NVIDIA Tesla V100 GPU'er. Nu, Schneider og hendes team, med CAAR -forbindelsen Reuben Budiardja i OLCF's Scientific Computing Group og repræsentanter fra AMD og Cray, bruger Heterogen-Compute Interface for Portability (HIP) til at gøre, hvad navnet antyder-oversætte bestemte dele af koden til at være bærbare til Frontier-arkitekturen, som vil indeholde Crays Shasta -arkitektur og Slingshot Interconnect samt AMD EPYC CPU'er og AMD Radeon Instinct GPU'er. Denne oversættelsesproces lader brugere som Schneider tilpasse sig nye GPU -arkitekturer som Frontier.
Schneiders kandidatstuderende, Orlando Warren ved University of Pittsburgh - hvor Schneider for nylig accepterede en stilling som adjunkt - har allerede omskrevet meget af GPU -delen af koden til at være kompatibel med HIP. Næste, holdet vil omskrive de stykker Cholla, der i øjeblikket kører på CPU'er, så disse også kan køre på GPU'er.
Robertson arbejder med sin kandidatstuderende, Bruno Villasenor, hvem tilføjer betydelige stykker til Cholla, herunder de beregninger, der er nødvendige for at løse tyngdekraften i teamets kæmpe Mælkevejesimulering. Schneider koordinerer indsatsen for at ombygge koden samt tilføje det, hun kalder "klokker og fløjter" for yderligere at forfine de simuleringer, der er nødvendige for at forstå stjernedannelse.
Med Frontier, holdet mener, at de vil være i stand til at simulere stjernedannelse med høj opløsning.
"Lige nu, vi vil gerne identificere, hvordan gas forlader galaksen og vender tilbage til den, og hvordan det påvirker processen med stjernedannelse i Mælkevejen. Jo højere opløsning vi kan få, jo bedre vi kan forstå gasens fysiske processer, og det ender med at påvirke mange forskellige problemer inden for astrofysik. "
Det sidste trin, Schneider sagde, er at sikre, at den nye kode fungerer, når den overføres til tusindvis af GPU'er frem for at køre på kun få, en opgave, der kræver et storstilet højtydende computersystem som Summit. Teamet vil køre store tests på Summit, før de kører på Frontier-systemet, når det implementeres næste år.