Hyppää sisältöön

Roihun levyalueet

Roihu tarjoaa kolme pääasiallista jaettua levyaluetta: home, projappl ja scratch. Lisäksi jokainen laskentasolmu tarjoaa paikallisen väliaikaisen levyalueen, joka on käytettävissä vain työn tai interaktiivisen istunnon aikana kyseisellä solmulla. Tutustu huolellisesti näihin alueisiin ja niiden erityisiin käyttötarkoituksiin.

Roihun käyttäjät voivat myös hakea erillisiä aineistoprojekteja. Ne tarjoavat pääsyn omaan levyalueeseen, dataset, joka on tarkoitettu aineistojen jakamiseen useiden projektien välillä. Toisin kuin laskennalliset projektit, aineistoprojekteihin ei sisälly scratch- tai projappl-hakemistoja.

Nämä hakemistot ovat jaettuja järjestelmän kirjautumis- ja laskentasolmujen välillä, ja ne perustuvat Lustre-tiedostojärjestelmään. Katso teknisempi kuvaus Lustre-tiedostojärjestelmästä CSC:n supertietokoneilla.

CSC ei varmuuskopioi dataasi!

CSC ei varmuuskopioi mitään levyalueista automaattisesti! Poistettuja tiedostoja ei voida palauttaa. Välttääksesi tahattoman datan menetyksen varmista, että teet säännöllisesti varmuuskopioita esimerkiksi Altaaseen. Katso myös allas-backup-työkalu.

Omistaja Ympäristömuuttuja Polku Siivous Automaattinen varmuuskopiointi
home Henkilökohtainen ${HOME} /users/<user-name> Ei Ei
projappl Projekti Ei määritelty /projappl/<project> Ei Ei
scratch Projekti Ei määritelty /scratch/<project> 90 tai 180 päivää Ei
dataset Projekti Ei määritelty /dataset/<project> Ei Ei

Näillä levyalueilla on kiintiöt sekä datan määrälle että tiedostojen kokonaismäärälle:

Kapasiteetti Tiedostojen määrä Huomioita
home 15 GiB 150 000 tiedostoa
projappl 15 GiB 150 000 tiedostoa
scratch 250 GiB 500 000 tiedostoa
dataset 0 GiB 0 tiedostoa Haettava erikseen

LUE

Jos haluat helposti tarkistaa tietyn kansion datamäärän ja tiedostojen lukumäärän rinnakkaisessa tiedostojärjestelmässä, harkitse LUE -työkalun käyttöä. Tämä työkalu on huomattavasti nopeampi kuin esimerkiksi stat tai du ja kuormittaa tiedostojärjestelmää paljon vähemmän.

Kiintiöt ja siivous

Vaikka on mahdollista hakea suurempia kiintiöitä, suosittelemme, että varmistat aina ensin, että jaettuun tiedostojärjestelmään tallentamasi data on todella tarpeellista ja aktiivisessa käytössä. Käyttämätön data tulisi poistaa tai siirtää esimerkiksi Altaaseen. Saatavilla on myös yleinen ohje datan hallintaan ja siivoamiseen supertietokoneiden levyillä.

Kotihakemisto

Jokaisella käyttäjällä on kotihakemisto ($HOME), joka voi sisältää Roihussa enintään 15 GiB dataa.

Kotihakemisto on oletussijainti kirjautumisen jälkeen. Sitä ei kuitenkaan ole tarkoitettu data-analyysiin tai töiden ajamiseen. Sen tarkoitus on säilyttää asetustiedostoja ja muuta vähäistä henkilökohtaista dataa. Seuraa kotihakemistosi jäljellä olevaa kiintiötä, sillä kapasiteetin ylittävä kotihakemisto voi aiheuttaa erilaisia ongelmia käyttäjätilillesi.

Kotihakemisto on supertietokoneissa ainoa käyttäjäkohtainen hakemisto. Kaikki muut hakemistot ovat projektikohtaisia. Jos olet usean projektin jäsen, sinulla on myös pääsy useisiin scratch- tai projappl-hakemistoihin, mutta silti vain yksi kotihakemisto.

Kaikkeen laskentatyöhön sinun tulisi käyttää projektisi scratch-hakemistoa.

Scratch-hakemisto

Jokaisella Roihun projektilla on oletuksena 250 GiB scratch-levytilaa hakemistossa /scratch/<project>.

Scratch-hakemisto on nopea rinnakkainen tiedostojärjestelmä, joka on tarkoitettu laskennassa käytettävän datan väliaikaiseen tallennukseen, ja sen tulisi sisältää esimerkiksi ohjelmiesi kaikki syöte- ja tulostiedostot. Sinun kannattaa pyrkiä ajamaan työsi supertietokoneella tässä scratch-hakemistossa.

Scratch-hakemistoa ei ole tarkoitettu pitkäaikaiseen säilytykseen. Tiedostoja, joita ei ole käytetty pitkään aikaan, voidaan poistaa automaattisesti tilan vapauttamiseksi. Roihun nykyinen käytäntö on poistaa tiedostot, joita ei ole käytetty yli 180 päivään (scratch-kiintiö alle 5 TiB) tai 90 päivään (scratch-kiintiö 5 TiB tai enemmän). Katso käyttöehdot -sivulta lisätietoja nykyisestä käytännöstä.

Tutustu myös ohjeeseemme, jossa on vinkkejä ja ohjeita datan hallintaan scratch-alueella.

Projappl-hakemisto

Jokaisella Roihun projektilla on myös 15 GiB projektisovelluslevytilaa hakemistossa /projappl/<project>.

Käytä projappl-aluetta käännettyjen ohjelmistobinäärien, lähdekoodin, kirjastojen, skriptien ja pienimuotoisen viitedatan tallentamiseen, joita jaetaan projektin sisällä. Se ei ole henkilökohtainen tallennustila, koska se on jaettu projektin kaikkien jäsenten kesken. Projappl-alueen tiedostoja ei poisteta automaattisesti, mutta kiintiö on rajallinen.

Älä lähetä töitä tai kirjoita laajamittaista dataa projektisi projappl-hakemistoon, vaan käytä tähän tarkoitukseen sen sijaan scratch-hakemistoa. Huomaa, että kaikki itse asentamasi sovellukset, joita ajat, voidaan ja kannattaa silti säilyttää projappl-alueella.

Scratch- ja projappl-hakemistojen käyttö

Yleiskatsaus sen supertietokoneen hakemistoihisi, johon olet parhaillaan kirjautuneena, voidaan näyttää komennolla:

csc-workspaces 

Yllä oleva komento näyttää kaikki scratch- ja projappl-hakemistot, joihin sinulla on pääsy. Se näyttää myös, mitkä projekteistasi kuuluvat 90 päivän scratch-siivousjaksoon ja mitkä 180 päivän scratch-siivousjaksoon.

Jos olet esimerkiksi jäsenenä kahdessa projektissa, joiden unix-ryhmät ovat project_2000123 ja project_2001234, sinulla on pääsy kahteen scratch- ja projappl-hakemistoon:

[kkayttaj@roihu-cpu-login1 ~]$ csc-workspaces 

Disk area               Capacity(used/max)  Files(used/max)  Cleanup
----------------------------------------------------------------------
Personal home folder

/users/kkayttaj                 4.4G/15G         24K/150K        n/a
----------------------------------------------------------------------
Project: project_2000123 "Project X"

/projappl/project_2000123       4.2G/15G         36K/150K        n/a
/scratch/project_2000123        103G/250G       389K/500K       180d
----------------------------------------------------------------------
Project: project_2001234 "Project Y"

/projappl/project_2001234        25G/100G       282K/1.0M       n/a
/scratch/project_2001234        7.2T/10T        2.1M/2.5M       90d
----------------------------------------------------------------------

Siirtyminen projektin project_2000123 scratch-hakemistoon:

cd /scratch/project_2000123

Huomaa, että kaikilla CSC-projekteilla ei ole pääsyä Roihuun, joten et välttämättä löydä scratch- tai projappl-hakemistoa kaikille CSC-projekteillesi.

Note

scratch- ja projappl-hakemistot ovat projektin kaikkien jäsenten yhteiskäytössä. Kaikki uudet tiedostot ja hakemistot ovat myös oletusarvoisesti täysin muiden ryhmän jäsenten käytettävissä (mukaan lukien luku-, kirjoitus- ja suoritusoikeudet).

Jos sinun täytyy rajoittaa pääsyä ryhmäsi jäseniltä, voit muuttaa oikeudet takaisin tavalliseen tapaan chmod-komennolla. Yleisesti suosittelemme, että sallit ryhmän jäsenille pääsyn, mutta käytät datallesi alihakemistoa käyttäjätunnuksellasi, esimerkiksi

/scratch/project_2000123/$USER

Näin data on muiden ryhmän jäsenten saatavilla esimerkiksi pitkien lomien aikana jne., mutta omistajuus pysyy silti selkeänä ja järjestyksessä. Huomaa, että jotkin ohjelmat muuttavat tiedostojen oikeuksia oletusarvoista, mikä voi rajoittaa ryhmän jäsenten pääsyä.

Kuten aiemmin mainittiin, scratch-hakemisto on tarkoitettu vain datan käsittelyyn. Kaikki data, joka tulee säilyttää pidempään, tulisi kopioida Allas-objektitallennuspalvelimeen. Ohjeet tiedostojen varmuuskopiointiin CSC:n supertietokoneilta Altaaseen löytyvät Allas-oppaasta.

Aineistohakemisto

Roihun käyttäjät voivat hakea erillisiä aineistoprojekteja, jotka tarjoavat pääsyn jaettuun levyalueeseen polussa /dataset/<project>, mutta eivät laskentaresursseja.

Toisin kuin tavalliset laskennalliset projektit, aineistoprojekteihin ei sisälly scratch- tai projappl-hakemistoja. Sen sijaan ne on suunniteltu erityisesti datan jakamiseen useiden projektien välillä.

Kirjoitusoikeus aineistohakemistoon on rajoitettu yhteen projektiin, kun taas useille muille projekteille voidaan myöntää lukuoikeus tähän levyalueeseen.

Katso lisätietoja aineistoprojekteista ja aineistoprojektin hakemisesta MyCSC:ssä.

Note

Aineistoprojektit on tarkoitettu datan jakamiseen ja aktiiviseen käyttöön, ei pitkäaikaiseen säilytykseen.
Pitkäaikaiseen säilytykseen kannattaa harkita Allasta.

Datan siirtäminen supertietokoneiden välillä

Dataa voidaan siirtää suoraan supertietokoneiden välillä rsync-komennolla.

Kiintiöiden kasvattaminen

Voit käyttää MyCSC-portaalia hallinnoidaksesi scratch- ja projappl-hakemistojen kiintiöitä.

Muista, että vaikka kiintiötä kasvatetaan, suunniteltu automaattinen siivousprosessi jatkaa käyttämättömien tiedostojen poistamista scratch-hakemistosta. Data, joka ei ole aktiivisen laskennan piirissä, tulisi tallentaa Allas-tallennuspalveluun.

Kiintiöiden korotukset ovat rajallisia. Jos työnkulkusi vaatii erittäin suurten tiedostomäärien (esim. miljoonien) tallentamista, sinun tulisi harkita datan työnkulkusi uudelleen, sillä tämä voi johtaa suorituskykyongelmiin koko tiedostojärjestelmässä.

Info

Selvittääksesi, kuinka paljon dataa/tiedostoja sinulla on levyllä, käytä LUE- työkalua, joka on paljon suorituskykyisempi kuin tavalliset työkalut kuten stat tai du.

Väliaikaiset paikalliset levyalueet

Roihun laskentasolmut tarjoavat nopeaa paikallista levytallennusta, joka voi merkittävästi parantaa suorituskykyä I/O-intensiivisissä työkuormissa.

Tämä tallennustila on käytettävissä ympäristömuuttujan $TMPDIR kautta, jota monet sovellukset käyttävät automaattisesti väliaikaistiedostoille.

Paikallinen levy on solmukohtainen ja käytettävissä kirjautumissolmulla sekä työn tai interaktiivisen istunnon aikana. Se on tarkoitettu väliaikaistiedostoille, joita ei tarvitse jakaa solmujen välillä.

Kirjautumissolmut

Jokainen kirjautumissolmu sekä Roihu-CPU:ssa että Roihu-GPU:ssa tarjoaa 80 GB paikallista tallennustilaa polussa $TMPDIR.

Paikallinen tallennustila on tarkoitettu sovellusten kääntämiseen sekä esi- ja jälkikäsittelyyn, jotka vaativat raskaita I/O-toimintoja, esimerkiksi arkistotiedostojen pakkaamiseen ja purkamiseen.

Note

Paikallinen tallennustila on tarkoitettu väliaikaiseen säilytykseen, ja se siivotaan usein. Muista siirtää datasi jaetulle levyalueelle tehtävän valmistuttua.

Laskentasolmut

Kaikki Roihun laskentasolmut tarjoavat nopeaa paikallista NVMe-tallennustilaa.

Nämä paikalliset levyalueet on suunniteltu tukemaan I/O-intensiivisiä laskentatehtäviä ja tilanteita, joissa sinun täytyy käsitellä suuria määriä (yli 100 000) pieniä tiedostoja.

Paikallisessa tallennustilassa oleva data poistetaan työn päättyessä. Sinun on kopioitava kaikki tulokset, jotka haluat säilyttää, scratch-alueelle tai Altaaseen ennen työn päättymistä.

Slurm-työvarauksesi tyypin perusteella käytettävissäsi on seuraava määrä paikallista levytilaa:

Automaattinen paikallinen väliaikaistallennus

Jaetun solmun, kokonaisen solmun ja GPU-varauksissa paikallinen väliaikaistallennus on käytettävissä polussa $TMPDIR.

Varaustyyppi Polku Käytettävissä oleva väliaikaistallennus
R (Jaetut solmut) $TMPDIR 20 GiB
N (Kokonaiset solmut) $TMPDIR 600 GiB
G (GPU-solmut) $TMPDIR 150 GiB
XL (Hugemem-solmut) $TMPDIR 578 GiB
VIZ (Visualisointisolmut) $TMPDIR 14 TiB

Levytila on käytettävissä polussa $TMPDIR, eikä sitä tarvitse varata erikseen työskriptissä, jotta sitä voisi käyttää. Paikallisen levyn käyttö ei kuluta laskutusyksiköitä (BUs).

Ilmoitettu kapasiteetti voi olla jaettu saman solmun muiden töiden tai käyttäjien kanssa, eikä se siksi välttämättä ole aina kokonaan yhden työn käytettävissä.

Varattu paikallinen scratch-tallennus

Roihun hugemem- (XL) ja visualisointisolmut (Viz) tarjoavat jonkin verran paikallista levytilaa polussa $TMPDIR. Tämän lisäksi ne tarjoavat paikallista scratch-tallennustilaa polussa $LOCAL_SCRATCH suurempiin väliaikaisiin tallennustarpeisiin.

Tämä tallennustila ei ole automaattisesti käytettävissä. Sinun on varattava se Slurm-työskriptissäsi käyttämällä sopivaa GRES-valintaa. Varattu $LOCAL_SCRATCH-tallennustila kuluttaa laskutusyksiköitä (BUs).

Varaustyyppi Polku Varattavissa oleva paikallinen scratch enintään
XL (Hugemem-solmut) $LOCAL_SCRATCH 13000 GB
VIZ (Visualisointisolmut) $LOCAL_SCRATCH TBA

Varaa paikallista tallennustilaa lisäämällä Slurm-skriptiisi seuraava rivi:

#SBATCH --gres=nvme:<amount-in-GB>

Jos haluat esimerkiksi varata enimmäismäärän 13 TB, käytä:

#SBATCH --gres=nvme:13000

Työn paikalliseen scratch-tilaan pääsee ympäristömuuttujan $LOCAL_SCRATCH kautta, joka osoittaa käyttäjä- ja työ-ID-kohtaiseen levyalueeseen, jota voit käyttää polussa /local_scratch/${USER}/${SLURM_JOB_ID}/.

Esimerkki Slurm-skriptistä paikallisen scratch-muistin käyttämiseen hugemem-solmuissa
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=hugemem
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=1
#SBATCH --gres=nvme:100 # Varaa 100 GB paikallista scratch-muistia

# Siirry paikalliseen scratch-hakemistoon
cd "$LOCAL_SCRATCH"

# Aja ohjelma
srun myprog <options>

# Kopioi kaikki tarvittava data takaisin pysyvään tallennustilaan ennen työn päättymistä
cp "$LOCAL_SCRATCH"/output.dat /scratch/project_200XXXX/$USER/

Muokkaa komentoja ja tiedostopolkuja työnkulkusi mukaan.

Paikallisen scratchin tuki visualisointisolmuille lisätään myöhemmin

Paikallisen scratchin ominaisuutta visualisointisolmuilla ei ole vielä toteutettu. Käytä visualisointisolmuilla $TMPDIR-hakemistoa paikallisiin tallennustarpeisiisi, kunnes tämä ominaisuus lisätään.

Katso Roihun laskutusosio, josta löydät tietoa laskutusyksiköistä (BUs), joita paikallisen scratchin käyttö kuluttaa.

Eriytetty tallennus

Roihu tarjoaa jaetun poolin eriytettyä NVMe-tallennustilaa, jossa on noin 180 TB käytettävissä olevaa kokonaiskapasiteettia. Tätä nopeaa tallennustilaa käytetään verkon yli, ja se näkyy paikallisena scratch-tallennustilana Slurm-työn sisällä.

Tallennustilaa voidaan pyytää kaikissa Roihun partitioissa, mukaan lukien jaetun solmun työt. Koska tallennuspooli on töiden kesken jaettu, pyynnöt riippuvat resurssien saatavuudesta ja voivat joutua odottamaan, kunnes riittävästi kapasiteettia vapautuu.

Tällä hetkellä eriytetyn tallennustilan määrälle, jota työ voi pyytää, ei ole pakotettua rajaa. Koska kyseessä on kuitenkin jaettu resurssi, suosittelemme pyytämään enintään 2 TB tallennustilaa per työ ja varaamaan vain todellisuudessa tarvittavan määrän.

Eriytetyn tallennustilan käyttö kuluttaa laskutusyksiköitä (BUs).

Tallennustilan pyytäminen Slurmista

Jos haluat pyytää flash-tallennustilaa liitettäväksi sbatch-työhön, sinun on lisättävä seuraava rivi skriptisi resurssipyyntölohkoon:

#SBATCH --bb="#BB_LUA SBF storagesize=20GB path=/sbf/data"

Missä storagesize määrittää tarvitsemasi tallennustilan määrän ja path sijainnin, johon tallennustila liitetään.

Polun on alettava merkkijonolla /sbf/. Jokainen työ saa oman yksityisen liitoksensa, joten useat työt samalla solmulla voivat käyttää samaa polkua häiritsemättä toisiaan.

Voit myös pyytää resursseja suoraan komentoriviltä --bb-lipulla:

srun -p medium --nodes 1 --account <project> --bb="#BB_LUA SBF storagesize=10G path=/sbf/data" --pty bash -i

Vaihtoehtoisesti voit välittää pyynnön tiedostossa --bbf-lipulla, esimerkiksi:

srun -p medium --nodes 1 --account project_2001659 --bbf bb.spec --pty bash -i

Sama toimii myös jaetun solmun ja GPU-partitioissa, esimerkiksi:

srun -p gpumedium --nodes 1 --account project_2001659 --gres=gpu:gh200:1 --bbf bb.spec --pty bash -i

Vaiheissa on käytettävä srun-komentoa!

Kun ajat monisolmutyötä sbatchilla ja jokaisen vaiheen odotetaan käyttävän eriytettyä levyä, vaiheet on käynnistettävä srun-komennolla. Muussa tapauksessa vain se laskentasolmu, joka ajaa sbatch-skriptiä, pystyy käyttämään tallennustilaa.

Muista siirtää datasi!

Siirrä kaikki tarvitsemasi data pois flash-tallennustilasta ennen työn päättymistä, eli sbatch-skriptisi sisällä.

Onko tämä sivu hyödyllinen?
Kiitos palautteestasi!
Kiitos! Arvostamme palautettasi.

Kerro meille miten voisimme parantaa tätä sivua ottamalla meihin yhteyttä .