Hyppää sisältöön

A new version of SD Connect and SD Desktop will be available from Monday, September 28. The major upgrade will introduce significant improvements, but also includes changes that are not compatible with the current version of the service. Click here to review the available support materials.

Warning!

Puhti and Mahti computing services have been decommissioned and no new jobs are accepted or executed on its compute nodes. Puhti and Mahti login nodes and storage services are planned to remain available until 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.

AMS

Amsterdam Modeling Suite (AMS) on kattava laskennallisen kemian ohjelmistopaketti. Sen mukana tulee graafinen käyttöliittymä, AMS-GUI, joka tarjoaa intuitiivisen tavan simulaatioiden määrittämiseen, ajamiseen ja analysointiin.

Saatavuus

  • Puhti: AMS, versio 2024.102, 2025.105
  • Mahti: AMS, versio 2024.102, 2025.105
  • Roihu-CPU: AMS, versio 2026.104

Lisenssi

  • Lisenssi oikeuttaa ohjelmiston käyttöön kaikki akateemiset tutkijat ja opiskelijat akateemisessa instituutissa, jossa "Academic" tarkoittaa "tutkintoja myöntävään instituuttiin kuuluvaa".
  • Lisenssi ei sisällä oikeutta ohjelmiston käyttöön valtion laboratorioiden työntekijöille tai muiden ei-akateemisten voittoa tavoittelemattomien tutkimuslaitosten työntekijöille.
  • Lisenssi sallii vain voittoa tavoittelemattoman ei-kaupallisen käytön.
  • Lisenssi sulkee pois kaiken sopimustutkimuksen, rojaltituloja tuottavan toiminnan ja muun rahalliseen hyötyyn johtavan toiminnan.
  • Tutkimusryhmät, jotka tarvitsevat AMS-ohjelmistopaketin muita moduuleja, voivat hankkia itselleen lisenssin ohjelmien ajamiseen CSC:n tietokoneilla.

Käyttö

Alusta AMS Puhdissa ja Mahdissa:

module load ams/2025.105

Alusta AMS Roihu-CPU:ssa:

module load ams/2026.104

Esimerkkieräajokomennostot

Huomio

Erityisesti jotkin ominaisuuslaskennat voivat olla hyvin levy-I/O-intensiivisiä. Tällaiset ajot hyötyvät nopean paikallisen tallennustilan (NVMe) käytöstä Roihussa. Paikallisen levyn käyttö tällaisissa ajoissa vähentää myös Lustre-rinnakkaistiedostojärjestelmän kuormitusta.

#!/bin/bash
#SBATCH --partition=test
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=40      # MPI tasks per node
#SBATCH --account=yourproject     # insert here the project to be billed 
#SBATCH --time=00:15:00           # time as `hh:mm:ss`
#SBATCH --mem-per-cpu=1500        # requested memory per process in MB
module purge
module load ams/2025.105
export SCM_TMPDIR=$PWD/$SLURM_JOB_ID
mkdir -p $SCM_TMPDIR
# Create an example input file from the examples 
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run  > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log
#!/bin/bash
#SBATCH --partition=large
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=40      # MPI tasks per node
#SBATCH --account=yourproject     # insert here the project to be billed
#SBATCH --time=00:15:00           # time as `hh:mm:ss`
#SBATCH --mem-per-cpu=1500        # requested memory per process in MB
#SBATCH --gres=nvme:100           # requested local disk space in GB
module load ams/2025.105
export SCM_TMPDIR=$LOCAL_SCRATCH
# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run  > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log
#!/bin/bash
#SBATCH --partition=medium
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=128 # MPI tasks per node
#SBATCH --account=yourproject # insert here the project to be billed
#SBATCH --time=00:20:00       # time as `hh:mm:ss`
module purge
module load ams/2025.105
export SCM_TMPDIR=$PWD/$SLURM_JOB_ID
mkdir -p $SCM_TMPDIR

# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run  > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log
#!/bin/bash
#SBATCH --partition=small
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=128 # MPI tasks per node
#SBATCH --account=yourproject # insert here the project to be billed
#SBATCH --time=00:20:00       # time as `hh:mm:ss`
#SBATCH --gres=nvme:100
module purge
module load ams/2025.105
export SCM_TMPDIR=$LOCAL_SCRATCH
mkdir -p $SCM_TMPDIR

# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run  > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log
#!/bin/bash
#SBATCH --partition=small
#SBATCH --nodes=1
#SBATCH --ntasks=128              # MPI tasks
#SBATCH --account=yourproject     # insert here the project to be billed
#SBATCH --time=00:20:00           # time as `hh:mm:ss`
#SBATCH --mem-per-cpu=1500M       # requested memory per process
module purge
module load ams/2026.104
export SCM_TMPDIR=$PWD/$SLURM_JOB_ID
mkdir -p $SCM_TMPDIR
# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log

Ydinmäärän valinta Roihu-CPU:ssa

Roihun M-solmuissa on 384 ydintä, mutta ADF ei skaalaudu tyypillisissä ajoissa tehokkaasti koko solmun laajuuteen. Alla oleva taulukko näyttää Si35_TZ2P-vertailuajon skaalautuvuuden — huomaa, että skaalautuvuus riippuu voimakkaasti järjestelmästä ja mallista, joten näitä lukuja kannattaa käyttää ohjeellisina eikä absoluuttisina arvoina. 128–192 ydintä tarjoaa tässä tapauksessa parhaan tasapainon tehokkuuden ja nopeuden välillä. Tämän jälkeen seinäkelloaika paranee tuskin lainkaan, kun taas muistinkäyttö ja laskutuskustannukset kasvavat merkittävästi. Koko solmun ajoissa käytä paikallista NVMe-väliaikaistallennusta (katso välilehdet "Roihu-CPU, paikallinen levy"), jotta vältät AMS:n rank-kohtaisten väliaikaistiedostojen aiheuttaman I/O-kilpailun.

MPI-rankit CPU-tehokkuus Seinäkelloaika
48 ~95% ~437 s
96 ~91% ~385 s
128 ~90% ~302 s
192 ~85% ~252 s
384 (koko solmu) ~75% ~247 s
#!/bin/bash
#SBATCH --partition=small
#SBATCH --nodes=1
#SBATCH --ntasks=128              # MPI tasks
#SBATCH --account=yourproject     # insert here the project to be billed
#SBATCH --time=00:20:00           # time as `hh:mm:ss`
#SBATCH --mem-per-cpu=1500M       # requested memory per process
module purge
module load ams/2026.104
# On Roihu, local NVMe scratch is available via $TMPDIR (no --gres flag needed)
export SCM_TMPDIR=$TMPDIR/ams_$SLURM_JOB_ID
mkdir -p $SCM_TMPDIR
# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log

Katso myös

Katso välilehti "Roihu-CPU" ydinmääräsuosituksia varten. Jos koko solmun ajo vaatii maksimaalista I/O-suorituskykyä, harkitse hajautetun NVMe:n vaihtoehtoa välilehdellä "Roihu-CPU, hajautettu NVMe".

Paikallisen NVMe-levyn enimmäismäärä, joka on käytettävissä hakemistossa $TMPDIR, riippuu Slurm-osiosta ja solmutyypistä. Jaetuilla solmuilla (esim. osioissa small ja longrun) käytettävissäsi on 20 GiB väliaikaistallennustilaa. Koko solmuilla (medium- ja large-osiot) käytettävissäsi on 600 GiB paikallista tallennustilaa. Katso lisätietoja Roihun tallennusdokumentaatiosta.

Hajautettu NVMe Roihussa

Roihu tarjoaa keskitetyn 307,2 TB:n nopean NVMe-tallennuspoolin, jota palvellaan InfiniBand NDR:n yli. I/O-intensiivisissä koko solmun ajoissa tämä voi olla suorituskykyisempi kuin sekä Lustre scratch että solmukohtainen $TMPDIR. Se vaatii koko solmun osion (medium tai large) ja #BB_LUA burst-buffer -direktiivin — tuki jaetuille solmuille ei ole vielä saatavilla. Katso Roihun levyalueet täydet tiedot.

#!/bin/bash
#SBATCH --partition=medium
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=384     # full node required for disaggregated NVMe
#SBATCH --account=yourproject     # insert here the project to be billed
#SBATCH --time=00:20:00           # time as `hh:mm:ss`
#BB_LUA SBF storagesize=100GB path=/run/sbb/<user>
module purge
module load ams/2026.104
# Disaggregated NVMe is mounted at the path specified in #BB_LUA above
export SCM_TMPDIR=/run/sbb/<user>/ams_$SLURM_JOB_ID
mkdir -p $SCM_TMPDIR
# Create an example input file from the examples
sed '1,4d;$d;/Print/,/End/d' $AMSHOME/examples/Benchmarks/ADF/Si35_TZ2P/Si35_TZ2P.run > ./Si35_TZ2P.inp
"$AMSBIN/ams" < ./Si35_TZ2P.inp > ./Si35_TZ2P.log

Si35_TZ2P:n vertailuajotulokset 384 rankilla

Vertailuajot osoittivat, että hajautettu NVMe tarjoaa parhaan suorituskyvyn koko solmun ADF-ajoille ja päihittää sekä Lustre scratchin että solmukohtaisen $TMPDIR:n:

Väliaikaistallennuksen sijainti Seinäkelloaika CPU-tehokkuus Laskutusyksiköt
Lustre scratch ~247 s ~75% ~20 BU
$TMPDIR (solmukohtainen) ~230 s ~91% ~19 BU
Hajautettu NVMe ~190 s ~89% ~15 BU

Huomaa, että skaalautuvuus riippuu voimakkaasti järjestelmästä ja mallista. Katso välilehti "Roihu-CPU" saadaksesi ohjeita ydinmäärän valintaan.

AMS-GUI

AMS:n mukana tulee integroitu graafinen käyttöliittymä, AMS-GUI, joka tekee mallinnustehtävien määrittämisestä, ajamisesta ja analysoinnista helppoa. Voit testata käyttöliittymää Puhdin selainkäyttöliittymän kautta, mutta laajempaan käyttöön suosittelemme asentamaan käyttöliittymän omalle kannettavallesi tai työasemallesi. Yksityiskohtaiset ohjeet löydät AMS-GUI-dokumentaatiosta.

Viitteet

Käyttötavastasi riippuen huolehdi siitä, että viittaat asianmukaisesti AMS-ajuriin, käytettyihin laskentamoottoreihin sekä ominaisuuksien viitteisiin. Lisätietoja on asiaankuuluvassa AMS-dokumentaatiossa

Lisätietoja

Suomenkielinen tekoälykäännös

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

Klikkaa tästä antaaksesi palautetta