-
Roihu-supertietokoneen suuren osion käyttö
Kuinka saada käyttöoikeus Roihun large- ja gpularge-osioihin
Projektit, joissa ajetaan hyvin skaalautuvia koodeja, voivat saada käyttöoikeuden Roihu-CPU:n large-osioon (6–60 solmua) hakemalla sitä MyCSC:ssä. Käyttöoikeus Roihu-GPU:n gpularge-osioon (1–10 solmua) noudattaa samaa käytäntöä.
Ensin haetaan 30 päivän testijaksoa large- tai gpularge-osiolle. Toiseksi testijakson aikana koodin skaalautuvuus ja rinnakkaissuorituskyky osoitetaan sopivilla testiajoilla. Lopuksi projektin vastuuhenkilö toimittaa tulokset CSC:lle arvioitavaksi.
Prosessi on kuvattu yksityiskohtaisesti alla.
Testikäyttöoikeus Roihun large-osioon
Pyytääksesi 30 päivän testijaksoa toimi seuraavasti:
- Kirjaudu MyCSC:hen ja valitse Projects-valikosta projekti, jota haluat muokata.
- Avaa Services-luettelosta Roihu-palvelun asetukset napsauttamalla Configure. Tämä avaa sivun, jolla projektin vastuuhenkilö voi muokata levykiintiöiden asetuksia (Quota settings) ja pyytää käyttöoikeutta large- tai gpularge-osioon kohdissa Large partition settings ja GPU Large partition settings. Avaa Large partition settings.
- Napsauta Apply for trial access -painiketta. Kun käyttöoikeus on myönnetty, voit lähettää töitä large- tai gpularge-osioon.
Välitön käyttöoikeus large/gpularge-osioihin
Heti kun napsautat Apply for trial access -painiketta, sinulle myönnetään testikäyttöoikeus large-osioon. Huomaa, että alla kuvatun osion mukaisia skaalautuvuustuloksia odotetaan 30 päivän kuluttua tästä.
Hae käyttöoikeutta large-osioon vasta sitten, kun tiedät pystyväsi tuottamaan skaalautuvuusraportin sen avulla seuraavien 30 päivän aikana.
Hakemuksen jälkeen CSC ottaa sinuun yhteyttä seuraavien päivien aikana tarjotakseen apua ohjelmasi ajo-ominaisuuksien ymmärtämisessä ja mahdollisten suorituskyvyn pullonkaulojen tunnistamisessa. Sähköpostitse käytävän alustavan keskustelun perusteella voit joko jättäytyä pois jatkotuesta tai jatkaa yhteistyötä CSC:n kanssa ymmärtääksesi paremmin, miten rinnakkaissovelluksesi käyttää laskentaresursseja, kuten muistia sekä CPU:n tai GPU:n käyttöastetta ajon aikana.
Katso lisätietoja CSC:n koodinoptimointipalvelusta.
Skaalautuvuustestaus
Toisessa vaiheessa tehdään testiajoja, joilla osoitetaan skaalautuvuus. Tässä on joitakin yleisiä ohjeita skaalautuvuustestaukseen.
- Testaus tulee tehdä vähintään kolmella eri solmumäärällä aina
tuotannon tavoitetasoon asti (esimerkiksi 10, 20, 30 ja 40 solmulla Roihu-CPU:ssa tai 1–10 solmulla Roihu-GPU:ssa).
- Valitse pienin solmumäärä pienimmäksi arvoksi, jolla syötedata mahtuu solmuille.
- Syötedatan on oltava sama kaikissa ajoissa.
- Testit on ajettava Roihussa Slurmin eräajojärjestelmän kautta.
- Testiajojen tulee vastata todellisia tuotantoajoja. Esimerkiksi atomien määrä, hilapisteiden määrä, levyn I/O-kuorma ja muiden olennaisten parametrien tulee olla samankaltaisia kuin tuotannossa käytettävät.
- Skaalautuvuustestauksessa sinun ei kuitenkaan odoteta esittelevän ohjelmasi täysiä tuotantoajoja.
Valitse testiajo, jossa ajat lyhyen työn minimoimalla esimerkiksi
aikasteppien, iteraatioiden tai muiden työn suorittamien vaiheiden määrän.
- Ajoajan tulee silti olla riittävän pitkä, jotta alustuksen vaikutus tuloksiin ei ole merkittävä. Tyypillisesti muutama minuutti lyhimmälle ajoajalle (suurimmalla solmumäärällä) on sopiva.
- Erityisesti joissakin AI/ML-työvuoissa alustamisvaihe voi kestää pitkään. Valitse parametrit niin, että alustamisvaihe ei hallitse kokonaisajoaikaa ja että alustamisen jälkeinen ajoaika on riittävän pitkä.
- Skaalautuvuuteen vaikuttavia parametreja voidaan ja niitä myös suositellaan muutettavan. Katso myös suorituskyvyn tarkistuslista.
- Vähimmäisvaatimus on 75 % rinnakkaistehokkuus.
- Tämä vastaa nopeutusta 1,5, kun solmujen määrä kaksinkertaistetaan, tai nopeutusta 3, kun se nelinkertaistetaan, ja niin edelleen.
- Rinnakkaistehokkuus kuvataan seuraavalla kaavalla:
, jossa
- pb on laskentayksiköiden määrä peruskokoonpanossa
- pN on laskentayksiköiden määrä skaalatussa tapauksessa, jossa on N solmua
- Tb on suoritukseen käytetty kokonaisaika peruskokoonpanossa
- TN on suoritukseen käytetty kokonaisaika skaalatussa tapauksessa, jossa on N solmua
Päästäksesi alkuun ohjelmasi ajo-ominaisuuksien keräämisessä, katso CSC:n dokumentaatio suorituskykyanalyysistä.
Raportointi
Skaalautuvuusraportin tulee sisältää:
- Lyhyt kuvaus ohjelmistosta ja testitapauksesta
- Jos ohjelmistoa ei ole CSC:n esiasentama, sinun odotetaan myös kuvaavan lyhyesti ohjelmistossa käytetyn rinnakkaistamisstrategian sekä sisällyttävän tiedot ohjelman I/O-toteutuksesta ja kuormasta ajon aikana
- Seinäkelloajat kullekin solmumäärälle testitapauksessasi
- Jos haet käyttöoikeutta gpularge-osioon, sinun tulee myös esittää GPU:n käyttöaste ohjelman ajon aikana.
- Edustava eräajotyön skripti (liitteenä tai vapaamuotoisessa perustelussa)
Lisäksi, jos sovellusta ajettiin hybridillä MPI/OpenMP-rinnakkaistuksella, liitä mukaan yhden
ajon stderr, jossa on käytetty seuraavia asetuksia:
export OMP_AFFINITY_FORMAT="Process %P level %L thread %0.3n affinity %A"
export OMP_DISPLAY_AFFINITY=true
Testiajojen tulosten tai soveltuvan aiemman skaalautuvuusdatan raportointi tehdään MyCSC-portaalin kautta seuraavasti:
- Kirjaudu MyCSC:hen ja valitse Projects-valikosta projekti, jota haluat muokata.
- Avaa Services-luettelosta Roihu-palvelun asetukset (Configure). Tämä avaa sivun, jolla projektin vastuuhenkilö voi muokata levykiintiöiden asetuksia (Quota settings) ja pyytää käyttöoikeutta large-osioon (Large partition settings). Avaa Large partition settings.
- Tuloksia ja perusteluja varten on tekstikenttä sekä mahdollisuus liittää asiakirjoja (muista ladata asiakirjat palveluun sen jälkeen, kun olet valinnut ne). Liitteitä voi olla useita. Lähetä lopuksi perustelu.
- CSC:n asiantuntijat arvioivat tulokset ja myöntävät tuotantokäyttöoikeuden large- tai gpularge-osioon. Jos koodin suorituskyvyssä on ongelma, projektin vastuuhenkilöön otetaan yhteyttä.
Apua
CSC:n asiantuntijat voivat tarvittaessa auttaa käyttäjiä tekemään skaalautuvuustestejä, ja he voivat myös antaa neuvoja ohjelmistojen suorituskyvyn parantamiseen. Ota yhteyttä CSC:n Service Deskiin, jos tarvitset apua ohjelmistosi kanssa.