Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

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äikeistysohjeistukset.

Saatavuus

  • Puhti: 9.0
  • Mahti: 9.0
  • LUMI: 9.0

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

LUMIssa pitää ensin ottaa 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öä (paitsi erityisistä syistä) kaikilla alustoilla.

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 yhteydessä (päivämäärä näytetään moduulia ladattaessa).

Esimerkkieräajo rinnakkaislaskentaan

Tämä on perusskripti 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 skripti lähettää 6 tunnin työn, jossa käytetään 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"

Perusskripti 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 on saatavilla suorituskyvyn parantamiseksi. Katso esimerkki solmujen vajaakä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