Hyppää sisältöön

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti are being decommissioned in stages, and their storage areas will become fully unavailable from 15 October 2026. Clean up unnecessary files and move any data you need to keep by 31 August 2026. See the Roihu data migration guide for instructions on transferring your data to Roihu.

Puhti computing services have been decommissioned and no new jobs are accepted or executed on its compute nodes. Puhti login nodes and storage services are planned to remain available until 15 October 2026.

Suorituskyvyn tarkistuslista

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

Tarkista CPU-affiniteetti

CPU-affiniteetti kuvaa sitä, 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-kertaisesti, kun resurssien (ytimien) määrä kaksinkertaistetaan. Ä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 pienemmällä määrällä resursseja ja kirjaa suorituskyky ylös. Kokeile sitten 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 kokonainen taltio ei olisikaan 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 tule 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-konttiin. Tämä auttaa myös projapplin tiedostomääräkiintiöiden kanssa. Yksityiskohtaisia esimerkkejä tämän tekemisestä kirjoitetaan parhaillaan.

Sovelluksille, 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