-
Condan parhaat käytännöt CSC:n supertietokoneilla
Condan parhaat käytännöt CSC:n supertietokoneilla
Älä asenna Conda-ympäristöjä suoraan CSC:n supertietokoneiden rinnakkaiseen tiedostojärjestelmään!
CSC on poistanut käytöstä Conda-ympäristöjen käytön
silloin, kun ne on asennettu suoraan CSC:n supertietokoneiden rinnakkaiseen tiedostojärjestelmään
(esim. /scratch, /projappl, $HOME). Tämä johtuu Conda-pohjaisten ympäristöjen
suorituskykyongelmista jaetuissa tiedostojärjestelmissä, mikä aiheuttaa pitkiä
käynnistysviiveitä ja koko järjestelmän hidastumista Python-skriptejä ajettaessa.
Conda-ympäristöt sisältävät tyypillisesti kymmeniä tai jopa satoja tuhansia tiedostoja, ja Conda-sovelluksen käynnistäminen edellyttää suuren määrän niistä lukemista. Valitettavasti kaikkien rinnakkaisten tiedostojärjestelmien, jotka on optimoitu suurelle määrälle asiakkaita, yhden asiakkaan suorituskyky on heikko. Tämä näkyy Conda-sovellusten pidempinä alkukäynnistysaikoina ja Lustren metadatapalvelimeen kohdistuvana lisäkuormituksena.
Condaa voi edelleen käyttää epäsuorasti. Vaihtoehtona Condan suoralle käytölle suosittelemme:
-
Käytä CSC:n esiasennettuja ympäristöjä, jotka ovat saatavilla moduulijärjestelmän kautta
Tarkista, sopisiko jokin CSC:n esiasennetuista ympäristöistä projektiisi. Jos olemassa olevasta ympäristöstä puuttuu muutama kriittinen paketti, voit usein asentaa puuttuvat paketit itse.
Pythonin käyttöoppaassamme ja R-sovellussivulla on lisätietoja siitä, miten voit asentaa omia pakettejasi moduuliemme päälle. Voit myös ottaa yhteyttä CSC:n asiakastukeen ja pyytää puuttuvia paketteja.
-
Luo kontitettu Conda- tai pip-ympäristö CSC:n Tykky-työkalulla
CSC on kehittänyt työkalun Conda- tai pip-asennusten paketointiin pienemmäksi tiedostojoukoksi Apptainer- ja SquashFS-teknologioiden avulla. Työkalu on saatavilla esiasennettuna moduulina, ja sitä käytetään myös CSC:n omissa asennuksissa.
-
Käytä omia mukautettuja konttejasi
Tämä on erinomainen vaihtoehto ohjelmistojen kehittämiseen paikallisesti työasemalla ja niiden käyttöönottoon myöhemmin toisella työasemalla, klusterissa tai pilvialustoilla. CSC:n supertietokoneet tukevat Apptainer-kontteja, jotka ovat Lustren näkökulmasta vain yksittäisiä suuria tiedostoja ja välttävät siten suuren osan ongelmista. Monet ohjelmisto- projektit tarjoavat Docker-kontteja, jotka voidaan usein helposti muuntaa Apptainer-muotoon. Kontin sisällä voit luonnollisesti käyttää esimerkiksi Condaa pakettien hallintaan ilman, että siitä aiheutuu tiedostojärjestelmäongelmia.
Käytä Tykkyä olemassa olevan Docker-kontin muuntamiseen Apptaineriksi tai lue dokumentaatiostamme, miten voit luoda oman Apptainer-kontin.