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 scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

Elmer

Elmer on CSC:n avoimen lähdekoodin elementtimenetelmään perustuva monifysikaalinen simulointiohjelmistopaketti. Se sisältää moduuleja virtaus- ja kiinteän aineen mekaniikkaan, akustiikkaan sekä sähkömagneettiseen dynamiikkaan.

Elmer hyödyntää kolmansien osapuolten avoimen lähdekoodin ohjelmia esi- (esim. Gmsh) ja jälkikäsittelyyn (esim. ParaView, Visit). Asennettu versio sisältää Elmer/Ice-ratkaisijat, joita tarvitaan glasiologisiin simulaatioihin (jäätiköt, mannerjäätiköt). Elmer hyödyntää MPI-kirjastoa rinnakkaislaskentaan, ja joihinkin ratkaisijoihin on jo toteutettu OpenMP-rinnakkaissäikeistysohjeet.

Saatavuus

  • Puhti: 9.0
  • Mahti: 9.0
  • LUMI: 9.0
  • Roihu-CPU: 26.2.1

Lisenssi

Elmer on lisensoitu GPL-lisenssillä ja (elmersolver.lib-kirjaston osalta) LGPL-lisenssillä. Sen käyttö on maksutonta kaikille.

Käyttö

Puhdissa ja Mahdissa saatavilla olevat Elmer-versiot voidaan listata komennolla

module avail elmer

Roihu-CPU:ssa Elmer-versiot on nimetty elmerfem, ja ne listataan komennolla

module avail elmerfem

LUMIssa on ensin otettava käyttöön CSC:n asentamien ohjelmistojen moduulitiedostot:

module use /appl/local/csc/modulefiles/
module avail elmer

Elmerin oletusversio ladataan komennolla

module load elmer/latest

Suosittelemme tämän version käyttöä kaikilla alustoilla (paitsi erityisistä syistä).

Huomaa, että tätä versiota päivitetään usein. Jos tapauksessasi on mukana käännettynä koodina lisättyjä User Functions -toimintoja, varmista, että käännät ne uudelleen tällaisen päivityksen jälkeen (päivämäärä näytetään moduulia ladattaessa).

Esimerkki rinnakkaisesta eräajokomentosarjasta

Tämä on peruskomentosarja 30 minuutin yhden solmun työlle, jossa käytetään kaikkia 40 ydintä ja varataan 2 Gt muistia jokaiselle ytimelle. Elmerin syötetiedosto on myrun.sif.

#!/bin/bash 
#SBATCH --time=00:30:00
#SBATCH --job-name=jobname
#SBATCH --output=%x.%j.out
#SBATCH --error=%x.%j.err
#SBATCH --partition=small
#SBATCH --ntasks-per-node=40
#SBATCH --nodes=1
#SBATCH --mem-per-cpu=2G
#SBATCH --account=<project>

module load elmer/latest
# make sure the SIF is in the start-info
echo myrun.sif > ELMERSOLVER_STARTINFO
echo "starting Elmer simulation with SIF file"
cat ELMERSOLVER_STARTINFO
srun ElmerSolver
echo "done"

Suurin ero Mahdissa on se, että vain kokonaisia solmuja voidaan varata. Yksi solmu sisältää 128 ydintä (emme suosittele käyttämään monisäikeistystä). Seuraava komentosarja lähettää 6 tunnin työn käyttäen 4 solmua ja kaikkia 128 ydintä per solmu (eli yhteensä 512 ydintä).

#!/bin/bash 
#SBATCH --time=06:00:00
#SBATCH --job-name=jobname
#SBATCH --output=%x.%j.out
#SBATCH --error=%x.%j.err
#SBATCH --partition=medium
#SBATCH --account=<project>
#SBATCH --nodes=4
#SBATCH --ntasks-per-node=128

export OMP_NUM_THREADS=1
module load elmer/latest
# make sure the SIF is in the start-info
echo myrun.sif > ELMERSOLVER_STARTINFO
echo "starting Elmer simulation with SIF file"
cat ELMERSOLVER_STARTINFO
srun ElmerSolver
echo "done"

Peruskomentosarja 1 tunnin työlle, jossa käytetään 4 solmua ja yhteensä 128 ydintä. Elmerin syötetiedosto on myrun.sif.

#!/bin/bash 
#SBATCH --time=01:00:00
#SBATCH --job-name=jobname
#SBATCH --output=%x.%j.out
#SBATCH --error=%x.%j.err
#SBATCH --partition=small
#SBATCH --account=<project>
#SBATCH --nodes=4
#SBATCH --ntasks=128

module use /appl/local/csc/modulefiles/
module load elmer/latest
# make sure the SIF is in the start-info
echo myrun.sif > ELMERSOLVER_STARTINFO
echo "starting Elmer simulation with SIF file"
cat ELMERSOLVER_STARTINFO
srun ElmerSolver
echo "done"

Ohjeet töiden lähettämiseen ja seurantaan löytyvät CSC:n dokumentaatiosta ja LUMIn dokumentaatiosta.

Joissakin Elmer-tapauksissa voi olla hyödyllistä käyttää vähemmän ytimiä per solmu kuin mitä on saatavilla suorituskyvyn parantamiseksi. Katso esimerkki solmujen alikäytöstä.

Lisätietoja

Suomenkielinen tekoälykäännös

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

Klikkaa tästä antaaksesi palautetta