Levyalueet
CSC:n supertietokoneissa on kolme pääasiallista levyaluetta: home, projappl ja scratch. Näiden kaikkien laskenta- ja kirjautumissolmujen nähtävissä olevien levyalueiden lisäksi jokaisella solmulla on paikallinen väliaikainen levyalue, joka on näkyvissä vain kyseiselle laskentasolmulle eräajon tai komentotulkkisession aikana. Tutustu huolellisesti levyalueisiin ja niiden erityisiin käyttötarkoituksiin. Eri supertietokoneiden levyalueet ovat erillisiä, eli home, projappl ja scratch Puhdissa eivät ole suoraan käytettävissä Mahdista. Saatavilla on myös teknisempi kuvaus näissä hakemistoissa käytetystä Lustre-tiedostojärjestelmästä.
CSC ei varmuuskopioi dataasi!
Mitään levyalueista ei varmuuskopioida automaattisesti CSC:n toimesta! Tämä tarkoittaa, että käyttäjän vahingossa poistamaa dataa ei voida palauttaa millään tavalla. 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 saatavilla | /projappl/<project> |
Ei | Ei |
| scratch | Projekti | Ei saatavilla | /scratch/<project> |
180 päivää Puhdissa | Ei |
Näillä levyalueilla on kiintiöt sekä datan määrälle että tiedostojen kokonaismäärälle:
| Kapasiteetti | Tiedostojen määrä | |
|---|---|---|
| home | 10 GiB | 100 000 tiedostoa |
| projappl | 50 GiB | 100 000 tiedostoa |
| scratch | 1 TiB | 1 000 000 tiedostoa |
LUE
Jos haluat tarkistaa helposti rinnakkaistiedostojärjestelmässä olevan kansion
datamäärän ja tiedostojen lukumäärän, harkitse LUE-työkalun
käyttöä. Tämä työkalu on merkittävästi 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ä jakotiedostojärjestelmään tallentamasi data on todella tarpeellista ja aktiivisessa käytössä. Käyttämätön data kannattaa siirtää esimerkiksi Altaaseen. Saatavilla on myös yleinen ohje datan hallintaan ja siivoamiseen Puhtin ja Mahdin levyillä.
Kotihakemisto
Jokaisella käyttäjällä on kotihakemisto ($HOME), joka voi sisältää enintään 10 GB dataa.
Kotihakemisto on oletushakemisto, johon päädyt CSC:n supertietokoneille kirjautumisen jälkeen.
Tyypillisesti sinun tulisi kuitenkin vaihtaa projektisi scratch-hakemistoon työskennellessäsi, koska
kotihakemistoa ei ole tarkoitettu data-analyysiin tai laskentaan. Sen tarkoitus on säilyttää
asetustiedostoja ja muuta vähäistä henkilökohtaista dataa. Kapasiteettinsa ylittävä kotihakemisto
aiheuttaa erilaisia ongelmia käyttäjätilille.
Kotihakemisto on supertietokoneiden 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.
Scratch-hakemisto
Jokaisella projektilla on oletuksena 1 TB scratch-levytilaa hakemistossa /scratch/<project>.
Tämä nopea rinnakkainen scratch-tila on tarkoitettu väliaikaiseksi tallennustilaksi datalle, jota käytetään supertietokoneessa. Scratch-hakemistoa ei ole tarkoitettu datan pitkäaikaiseen säilytykseen. Jotta levyt eivät täyttyisi, CSC poistaa säännöllisesti tiedostoja, joita ei ole käytetty pitkään aikaan. Puhdissa 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). Mahdissa otetaan käyttöön vastaava siivouskäytäntö, mutta se ei ole vielä aktiivinen. Katso ajantasaiset tiedot Käyttöehdot-sivulta.
Muista tutustua ohjeeseemme, jossa on vinkkejä ja ohjeita datan hallintaan
scratch-alueella.
Projappl-hakemisto
Jokaisella projektilla on myös 50 GB projektin sovelluslevytilaa hakemistossa
/projappl/<project>.
Se on tarkoitettu käännettyjen ohjelmistobinäärien, lähdekoodin, kirjastojen, skriptien ja pienimuotoisen projektin sisällä jaettavan viitedatan säilyttämiseen. Se ei ole henkilökohtainen tallennustila, vaan kaikkien projektin jäsenten yhteinen. Huomaa, että tämän kansion tiedostoja ei poisteta automaattisesti.
Huomaa, että projappl-kiintiö on rajallinen eikä levyaluetta ole tarkoitettu
aktiivisen tutkimusdatan säilyttämiseen. Älä siis lähetä töitä ajettavaksi tästä hakemistosta
äläkä kirjoita laajamittaista dataa projektisi projappl-hakemistoon, vaan käytä tähän tarkoitukseen
scratch-hakemistoa. Huomaa, että itse asentamasi sovellukset, joita ajat,
voidaan ja kannattaa silti säilyttää projappl-hakemistossa.
Scratch- ja projappl-hakemistojen käyttö
Yleiskatsaus hakemistoihisi siinä supertietokoneessa, johon olet parhaillaan kirjautunut, voidaan näyttää komennolla:
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 kahden projektin jäsen, joiden unix-ryhmät ovat project_2000123
ja project_2001234, sinulla on pääsy kahteen scratch- ja projappl-hakemistoon:
[kkayttaj@puhti-login11 ~]$ csc-workspaces
Disk area Capacity(used/max) Files(used/max) Cleanup
----------------------------------------------------------------------
Personal home folder
/users/kkayttaj 4.4G/10G 24K/100K n/a
----------------------------------------------------------------------
Project: project_2000123 "Project X"
/projappl/project_2000123 24G/50G 36K/100K n/a
/scratch/project_2000123 103G/1.0T 389K/1.0M 180d
----------------------------------------------------------------------
Project: project_2001234 "Project Y"
/projappl/project_2001234 85G/100G 282K/600K n/a
/scratch/project_2001234 7.2T/8.0T 2.7M/5.0M 90d
----------------------------------------------------------------------
Siirtyminen projektin project_2000123 scratch-hakemistoon:
Huomaa, että kaikilla CSC-projekteilla ei ole käyttöoikeutta Puhtiin/Mahtiin, joten et välttämättä
löydä scratch- tai projappl-hakemistoa kaikille CSC-projekteillesi.
Note
scratch- ja projappl-hakemistot ovat kaikkien projektin jäsenten yhteisiä.
Kaikki uudet tiedostot ja hakemistot ovat myös täysin muiden ryhmän jäsenten käytettävissä
(mukaan lukien luku-, kirjoitus- ja suoritusoikeudet).
Jos haluat rajoittaa ryhmäsi jäsenten käyttöoikeuksia, voit muuttaa oikeudet uudelleen
chmod-komennolla. Jos haluat asettaa ryhmäsi jäsenille vain luku -oikeudet
hakemistolle my_directory:
Kuten aiemmin mainittiin, scratch-hakemisto on tarkoitettu vain datan käsittelyyn.
Kaikki data, joka halutaan säilyttää pidempään, tulee kopioida Allas-objektitallennuspalveluun.
Ohjeet tiedostojen varmuuskopiointiin CSC:n supertietokoneilta Altaaseen löytyvät
Allas-oppaasta.
Datan siirtäminen supertietokoneiden välillä
Dataa voidaan siirtää supertietokoneiden välillä Allaksen kautta lataamalla data ensin palveluun yhdellä supertietokoneella ja sitten lataamalla se toisella supertietokoneella. Tämä on suositeltu tapa, jos data halutaan myös säilyttää pidempään.
Dataa voidaan siirtää suoraan supertietokoneiden välillä myös rsync-komennolla.
Esimerkiksi jotta voit kopioida my_results-kohteen (joka voi olla joko tiedosto tai hakemisto)
Puhdista Mahdin hakemistoon /scratch/project_2002291, voit antaa Puhdissa komennon:
Katso tarkemmat rsync-ohjeet sivulta Using rsync.
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 kohteena, tulee säilyttää Allas-tallennuspalvelussa.
Muista myös, että voit kasvattaa näitä arvoja vain tiettyyn rajaan asti. Erityisesti
tiedostojen määrän osalta sinun kannattaa harkita datan työvuotasi uudelleen, jos se vaatii
kymmenien miljoonien tiedostojen säilyttämistä scratch-alueella.
Info
Jos haluat selvittää, kuinka paljon dataa/tiedostoja levylläsi on, käytä LUE-
työkalua, joka on huomattavasti suorituskykyisempi kuin
tavalliset työkalut kuten stat tai du.
Paikalliset väliaikaiset levyalueet
Jos sovellus riippuu väliaikaisten tiedostojen käytöstä, tiedostojärjestelmän soveltuvuudella voi olla suuri vaikutus sovelluksen suorituskykyyn, katso kohta Mind your I/O - it can make a big difference sivulla Performance checklist.
Huomaa, että jotkin sovellukset käyttävät väliaikaisia tiedostoja "kulissien takana". Tavallisesti nämä
sovellukset lukevat jotakin ympäristömuuttujaa, joka osoittaa sopivaan levyalueeseen, kuten
$TMPDIR.
Joissakin solmuissa on paikallisia levyjä, joita voidaan käyttää työskentelyn nopeuttamiseen silloin, kun väliaikaisia tiedostoja tarvitaan vain yhden kirjautumis- tai laskentasolmun sisällä.
Kirjautumissolmut
Jokaisella kirjautumissolmulla on 2900 GiB nopeaa paikallista tallennustilaa. Tallennustila sijaitsee polussa
$TMPDIR ja on erillinen jokaiselle kirjautumissolmulle.
Paikallinen tallennustila soveltuu hyvin 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, joissa on paikalliset SSD-levyt (NVMe)
Puhdin ja Mahdin I/O- ja GPU-solmuissa ajettavissa töissä on käytettävissä paikallista nopeaa tallennustilaa.
Interaktiivisissa eräajoissa, jotka käynnistetään sinteractive-komennolla,
tämä paikallinen levyalue määritellään ympäristömuuttujalla $TMPDIR ja tavallisissa eräajoissa
ympäristömuuttujalla $LOCAL_SCRATCH. Tämän tallennustilan koko määritellään eräajon resurssipyynnössä.
Eri solmuissa on eri määrä levytilaa, katso Puhdin tekniset tiedot
saadaksesi yksityiskohtaisen luettelon kaikista Puhdin solmutyypeistä. Tavallisissa laskentasolmuissa on 1490 GiB:n ja 3600 GiB:n
levyt. Suurmuistisissa solmuissa on 1490 GiB:n ja 5960 GiB:n levyt, ja GPU-solmuissa on
3600 GiB:n levyt. Resurssien säästämiseksi ja sen varmistamiseksi, etteivät työsi joudu odottamaan resursseja liian
pitkään jonossa, on hyvä varata vain se määrä, jota todella tarvitset. Mahdissa on 60 CPU-solmua, joissa on 3500 GiB:n
paikalliset levyt small- ja interactive-partitioissa. GPU-solmuissa on 3600 GiB:n paikalliset levyt.
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. Nämä hakemistot siivotaan, kun
eräajo päättyy. Siksi eräajon lopussa sinun täytyy kopioida kaikki data, jonka haluat säilyttää,
näiltä väliaikaisilta levyalueilta scratch-hakemistoon tai Altaaseen.
Lisätietoja on sivulla creating job scripts.
Laskentasolmut, joissa ei ole paikallisia SSD-levyjä (NVMe)
Puhdissa suosittelemme yksinkertaisesti käyttämään NVMe-levyillä varustettuja laskentasolmuja ($LOCAL_SCRATCH)
sovelluksille, jotka tarvitsevat paikallista väliaikaista tallennustilaa.
Mahdissa, jossa vain osassa laskentasolmuista on paikalliset NVMe-levyt, on myös mahdollista tallentaa suhteellisen
pieni määrä väliaikaisia tiedostoja muistiin. Käytännössä sovellukset voivat käyttää tähän hakemistoa
/dev/shm, esimerkiksi asettamalla export TMPDIR=/dev/shm. Huomaa, että
/dev/shm:n käyttö kuluttaa muistia, joten sovelluksille jää vähemmän käytettäväksi. Tämä voi johtaa siihen, että
sovelluksilta loppuu muisti odotettua aiemmin ja ne epäonnistuvat laskentasolmussa, mutta
tästä ei yleensä aiheudu muuta haittaa. Hyvä puoli on se, että jos tämä toimii, sen pitäisi olla nopeaa.
Puhdissa sekä Mahdin small-, interactive- ja GPU-partitioissa, joissa useiden käyttäjien sovellukset
voivat jakaa saman solmun, muistin loppuminen /dev/shm:n täyttymisen vuoksi kaataa myös muiden käyttäjien sovellukset!
Näissä tapauksissa /dev/shm:n käyttöä ei suositella lainkaan.