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.

SNAP

SNAP (Sentinel Application Platform) on Euroopan avaruusjärjestön kehittämä kaukokartoituksen työkalupakkiarkkitehtuuri. Se sisältää työkaluja ESA:n satelliittidatalle.

Saatavuus

SNAP on saatavilla Roihussa seuraavina versioina:

  • SNAP 13.0 + Python 3.12.3, mukaan lukien esa_snappy ja pyroSAR + JupyterLab

Versioita, jotka sisältävät JupyterLabin, voidaan käyttää Roihun selainkäyttöliittymän Jupyter-sovelluksessa custom module -valinnan kautta.

Käyttö

SNAP sisältyy snap-moduuliin, ja sen voi ladata komennolla:

module load snap

Tämä lataa uusimman saatavilla olevan version. Vanhemman version voi ladata komennolla:

module load snap/<VERSION>

SNAPin käyttäminen graafisella käyttöliittymällä (GUI) Roihun selainkäyttöliittymässä

Helpoin tapa käyttää SNAPia on avata se Roihun selainkäyttöliittymässä.

  1. Kirjaudu selainkäyttöliittymään: Roihu
  2. Avaa Desktop-sovellus.
  3. Kun etätyöpöytä on käynnistynyt, käynnistä SNAP kohdasta Applications (vasen yläkulma) -> Geosciences.

Vaihtoehtoisesti avaa pääte kohdasta Applications -> Terminal emulator:

module load snap
source snap_add_userdir $TMPDIR
snap -J-Xmx10G

SNAPin userdir- ja Java temp dir -asetukset

SNAP käyttää huomattavan määrän tallennustilaa välimuistille ja väliaikaistiedostoille. Oletuksena nämä kirjoitetaan HOME-hakemistoosi, ja ne voivat helposti täyttää sen. Tämän välttämiseksi määritä snap-käyttäjähakemisto ja Javan väliaikaishakemisto. Tämä skripti kannattaa suorittaa aina, kun aloitat SNAPin käytön Roihussa tai haluat vaihtaa käytettäviä kansioita. Applications-valikon SNAP-käynnistin asettaa userdirin automaattisesti arvoon $TMPDIR.

Roihussa on oletuksena 20 Gt tilaa hakemistossa $TMPDIR. Jos se ei riitä, aseta userdir projektisi scratch-hakemistoon. Tämä onnistuu vain, jos käynnistät SNAPin päätteestä.

mkdir /scratch/project_200XXXX/snap-tmp
source snap_add_userdir /scratch/project_200XXXX/snap-tmp

Tämä skripti asettaa myös Javan väliaikaishakemiston; se asetetaan määrittelemäsi kansion snap/temp-alikansioksi. Jos haluat asettaa Javan väliaikaishakemiston muualle, käytä komentoa: export _JAVA_OPTIONS="$_JAVA_OPTIONS -Djava.io.tmpdir=<SOME-FOLDER>" käyttäjähakemiston asettamisen jälkeen.

Note

Graafinen käyttöliittymä ei noudata snap.userdir-asetusta, mutta se huomioi Java-asetuksen. SNAPin GUI:n käyttö luo HOME-hakemistoosi .snap-kansion ja täyttää sitä. Tyhjennä se, jos HOME-hakemistosi tila loppuu.

Javan muistiasetukset

Oletuksena SNAP käyttää Javalle enintään 2 Gt muistia. Voit kasvattaa tätä lisäämällä -J-xmx10G tai vastaavan asetuksen snap- tai gpt-komentoon. -J-Xmx10G kasvattaa Javan enimmäismuistin 10 gigatavuun. Säädä tämä tarpeidesi ja työsi muistivarauksen mukaan. Käytä Javalle muutama gigatavu vähemmän kuin työsi kokonaismuistivaraus.

SNAPin käyttäminen Graph Processing Tool (gpt) -komennolla

Graph Processing Tool gpt on komentorivityökalu eräajokäsittelyyn. GPT:tä käyttämällä voidaan hyödyntää enemmän laskentatehoa kuin SNAPin graafisella käyttöliittymällä, koska sitä voidaan käyttää skripteissä ja siten sisällyttää töihin, jotka voidaan lähettää mihin tahansa osioon.

GPT-komento näyttää usein tältä:

gpt -J-Xmx10G <full_path_to_graph_xml_file> -Pfile=<inputfile> -t <outputfile>

Muutamia olennaisia gpt-valitsimia ovat:

  • -J-Xmx10G Javan käyttämä enimmäismuisti.
  • -q Säikeiden määrä, jota gpt-instanssi käyttää.
  • -c Datan välimuistin koko tavuina. Muuta tätä, jos tallennustila muodostuu ongelmaksi
  • -x Tyhjennä sisäinen tile-välimuisti sen jälkeen, kun kokonainen rivi tilejä on kirjoitettu tulostiedostoon. Lisää tämä, jos muistista tulee ongelma

Katso lisätietoja GPT:stä tämän sivun lopussa olevista viitelinkeistä.

Myös seuraava komento on erittäin hyödyllinen luotaessa graafeja eri operaattoreille. Sen voi suorittaa interaktiivisessa istunnossa

sinteractive -i
module load snap
gpt <snap-operator> -h

Komentoa gpt --diag -J-Xmx60G -c 40G voidaan käyttää sen tarkistamiseen, mitä muisti- ja välimuistiasetuksia gpt käyttää.

GPT-esimerkkejä Roihulle

SNAPin käyttäminen Python-rajapinnoilla

SNAPin toiminnallisuuksia on mahdollista käyttää myös Pythonista.

SNAP 9.0 ja 13.0

Python-skriptien ajaminen eräajotöissä:

python3 <YOUR-PYTHON-SCRIPT>

Katso saatavilla olevat paketit:

pip list

Uusien pakettien asentaminen $HOME-hakemistoosi:

pip <NEW-PACKAGE-NAME> --user

Paketteja on myös mahdollista asentaa muihin hakemistoihin kuin $HOME. Katso ohjeet Pythonin käyttöoppaasta.

SNAP 8.0

snappy-skriptien ajaminen eräajotöissä:

apptainer_wrapper exec python3 <YOUR-PYTHON-SCRIPT>

Katso saatavilla olevat paketit:

apptainer_wrapper exec pip list

Uusien pakettien asentaminen $HOME-hakemistoosi:

apptainer_wrapper exec pip <NEW-PACKAGE-NAME> --user

Paketteja on myös mahdollista asentaa muihin hakemistoihin kuin $HOME. Katso ohjeet Pythonin käyttöoppaasta.

Python-paketin käyttäminen JupyterLabin kanssa

  1. Kirjaudu selainkäyttöliittymään: Roihu
  2. Avaa Jupyter-sovellus.
  3. Valitse custom module ja kirjoita moduuliksi snap.

Muista asettaa väliaikaishakemistot Jupyterissa. Aloita seuraamalla SNAPin asennusmuistikirjaa.

SNAPin päivittäminen

SNAPin pienversio- ja moduulipäivitykset tallennetaan hakemistoon $HOME/.snap. Tämä tarkoittaa, että käyttäjän täytyy asentaa kaikki pienversiopäivitykset itse. Voit tehdä tämän SNAP Desktopissa seuraamalla käynnistyksen yhteydessä avautuvan ponnahdusikkunan ohjeita.

Paikkatietoaineistot CSC:n laskentaympäristössä

Roihussa on paikallisesti saatavilla satoja suomalaisia paikkatietoaineistoja, ja lisäksi niitä on lisää Altaassa ja cPoudassa. Lisätietoja on sivulla Paikkatietodata CSC:n laskentaympäristössä

Lisenssi

Kaikki SNAP-ohjelmistot on julkaistu GPL-3 -lisenssillä.

Viittaus

SNAP - ESA Sentinel Application Platform v{VERSION}, http://step.esa.int

Kiitokset

Pyydämme mainitsemaan CSC:n ja Geoportin julkaisuissanne; tämä on tärkeää projektin jatkuvuuden ja rahoitusraportoinnin kannalta. Esimerkiksi voitte kirjoittaa: "The authors wish to thank CSC - IT Center for Science, Finland (urn:nbn:fi:research-infras-2016072531) and the Open Geospatial Information Infrastructure for Research (Geoportti, urn:nbn:fi:research-infras-2016072513) for computational resources and support".

Asennus

SNAP 13.0 asennettiin Singularitylla käyttäen ESA:n tarjoamaa asennustyökalua, ja pipillä lisättiin Jupyter, esa_snappy ja pyroSAR. Lopuksi kontti käärittiin Tykyn wrap-container-toiminnallisuudella.

wrap-container -w /usr/local/snap/bin,/usr/bin snap9_py.sif --prefix install_dir

CSC:n SNAP Singularity -määrittelytiedostot.

Viitteet

Suomenkielinen tekoälykäännös

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

Klikkaa tästä antaaksesi palautetta