Hyppää sisältöön

Puhdin ja Mahdin laskentapalvelut ovat poistuneet käytöstä. Puhdin ja Mahdin kirjautumisnoodit sekä tallennustila ovat saatavilla 15. lokakuuta 2026 asti, mutta ne eivät enää ole palvelusopimusten piirissä. Ryhdythän toimiin datan siirtämiseksi Roihuun välittömästi. Ohjeita löydät sivulta Roihun datan siirto-opas.

Suorituskyvyn tarkistuslista

Tälle sivulle on koottu tärkeää tietoa, jonka avulla voit saavuttaa mahdollisimman hyvän suorituskyvyn töillesi ja järjestelmälle. Jos tiedät, miten työn suorituskykyä voi parantaa, lisääthän tietosi listaan!

Tarkista CPU-affiniteetti

CPU-affiniteetti kuvaa, miten käynnissä oleva ohjelma sijoitetaan supertietokonesolmun käytettävissä oleville CPU-ytimille. Suurteholaskennassa affiniteetin oikea asettaminen on tärkeää suorituskyvyn kannalta. Se auttaa ohjelmia hyödyntämään paremmin prosessorin nopeita välimuisteja ja muistia, vähentää tarpeetonta siirtymistä ytimien välillä ja johtaa vakaampiin ja ennakoitavampiin ajoaikoihin.

Katso CPU-affiniteetin opas, josta löydät ohjeet ohjelmien CPU-affiniteetin tarkasteluun ja hallintaan.

Tee skaalautuvuustesti

On tärkeää varmistaa, että työsi pystyy käyttämään tehokkaasti kaikkia sille varattuja resursseja (ytimiä). Tämä on varmistettava jokaiselle uudelle koodille ja työtyypille (eri syöte) skaalautuvuustestillä. Täysiä solmuja käyttävät skaalautuvuustestit koskevat vain töitä, jotka varaavat kokonaisia solmuja.

Jos mahdollista, aja lyhyt simulointi kasvavalla määrällä resursseja (ytimiä) ja arvioi, kuinka paljon nopeammin työsi valmistuu. Sen pitäisi nopeutua vähintään 1,5-kertaiseksi, kun kaksinkertaistat resurssit (ytimet). Älä varaa työllesi enempää resursseja kuin se pystyy käyttämään tehokkaasti. Jos skaalautuvuustestit eivät ole käytännöllisiä, aja työsi ensin pienemmillä resursseilla ja kirjaa suorituskyky muistiin. Kokeile lisätä resursseja ja varmista, että työ (tai vastaava työ) valmistuu nopeammin.

Huomaa, että kaikkia koodeja tai työtyyppejä ei voi ajaa rinnakkain. Varmista tämä ensin oman koodisi osalta.

Huomioi I/O – sillä voi olla suuri vaikutus

Jos työkuormasi kirjoittaa tai lukee suuren määrän pieniä tiedostoja, saatat havaita heikon I/O-suorituskyvyn, vaikka kokonaismäärä ei olisi kovin suuri. Ota huomioon seuraavat asiat mahdollisten pullonkaulojen vähentämiseksi:

  • Käytä paikallista tallennustilaa erityisesti tekoälytyökuormille scratchin sijaan. Vain joissakin solmuissa on nopea paikallinen levy, mutta olemme nähneet 10-kertaisen suorituskyvyn paranemisen siirtymällä sen käyttöön. Tarkista suorituskykysi: älä käytä resurssia, jos siitä ei ole hyötyä. Esimerkki AI-eräajosta
  • Selvitä, voitko valita, miten sovelluksesi tekee I/O:ta (esim. OpenFoam voi käyttää collated-tiedostomuotoa), äläkä kirjoita levylle tarpeetonta tietoa tai tee sitä liian usein (esim. GROMACSia ei pidä käyttää CSC:llä -v-lipun kanssa).
  • Yksi tapa välttää suuri määrä (pieniä) tiedostoja on asentaa monimutkainen Python- tai R-pohjainen ohjelmistosi singularity-säiliöön. Tämä auttaa myös projapplin tiedostomääräkiintiöiden kanssa. Yksityiskohtaisia esimerkkejä tämän tekemisestä kirjoitetaan parhaillaan.

Sovelluksissa, jotka kirjoittavat ja lukevat suuria tiedostoja, I/O-suorituskykyä voidaan usein parantaa oikeilla Lustre-asetuksilla:

  • Jos sovelluksesi tekee rinnakkaista I/O:ta, aseta sopiva stripe count komennolla lfs setstripe -c, lisätietoja kohdassa Lustren parhaat käytännöt.
  • Käytä kollektiivista rinnakkaista I/O:ta, jos mahdollista.
  • Katso myös laajemmat I/O-optimointivinkit.

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta