Les images SIF de Fluidity sur IO (fluidity_02122025.sif et fluidity_spud_diamond_07112025.sif) sont disponibles dans le dossier :

/storage/simple/projects/fluidity-apptainer

Les fichiers de tests sont disponibles dans le dossier : /scratch/projects/geodyn/tests_fluidity_apptainer/

Pour ouvrir une fenêtre “diamond” (si connexion en ssh -X) :
apptainer exec /storage/simple/projects/geodyn/fluidity-apptainer/fluidity_spud_diamond_27102025.sif diamond Myfile.flml

Pour que diamond fonctionne (i.e. lise les fichiers type .flml de fluidity), il faut ajouter dans son $HOME un dossier et sous-dossier “.diamond/schemata” avec à l’intérieur un fichier nommé “flml” qui contienne les 2 lignes suivantes :

nano $HOME/.diamond/schemata/flml

Fluidity Markup Language
/storage/simple/projects/geodyn/fluidity_schemas/fluidity_options.rng

 

Exemple pour lancer un code en série avec Fluidity sur le nouveau cluster IO :

#!/bin/sh
#SBATCH --job-name=sub16
#SBATCH --time=00-05:00:00
#SBATCH --mail-type=ALL
#SBATCH --mail-user=  ##your email
#SBATCH --partition=  ##your partition
#SBATCH --account=   #your account
#SBATCH --mem=20GB
#SBATCH --output=Resultat_conv_serial_%j.out
#SBATCH --error=Erreur_conv_serial_%j.err

###----Cleans modules
module purge

###--- Declare variables
path_to_scratch="/scratch/users/$USER"
path_to_image="/storage/simple/projects/geodyn/fluidity-apptainer"      ## Path to fluidity image and environment file
flmlfile="convection"          ## Name of flml-Input file

###########################################################

###--- Commands to Run fluidity through apptainer in serial  ---###

###########################################################

###--- Define commands
exec2="fluidity ${flmlfile}.flml" ## To run fluidity

###---Redirect the cache
export APPTAINER_CACHEDIR="$path_to_scratch/apptainer/cache"
mkdir -p "$APPTAINER_CACHEDIR"


##---- Run Fluidity
apptainer exec $path_to_image/fluidity_spud_diamond_07112025.sif $exec2

 

Exemple pour lancer un code en parallèle avec Fluidity sur le nouveau cluster IO :

#!/bin/sh
#SBATCH --job-name=conv
#SBATCH --time=00-05:00:00
#SBATCH --mail-type=ALL
#SBATCH --mail-user=   ##your mail
#SBATCH --partition=  ##your partition
#SBATCH --account=   ##your account
#SBATCH --ntasks=10
#SBATCH --mem=20GB
#SBATCH --output=Resultat_conv_para_%j.out
#SBATCH --error=Erreur_conv_para_%j.err


###---- Clean the  modules
module purge

###--- Declare variables
path_to_scratch="/scratch/users/$USER"
path_to_image="/storage/simple/projects/geodyn/fluidity-apptainer"      ## Path to fluidity image and environment file
flmlfile="convection"          ## Name of flml-Input file


export TMPDIR=$PWD/tmp
export APPTAINER_TMPDIR=$TMPDIR
mkdir -p $TMPDIR

export APPTAINER_CACHEDIR="$path_to_scratch/apptainer/cache"
mkdir -p "$APPTAINER_CACHEDIR"

export OMPI_MCA_btl='^openib'
export OMPI_MCA_btl_openib_warn_no_device_params_found=0
export PMIX_MCA_gds=hash
export PMIX_MCA_verbose=0

# Étape 1 : décomposition MPI
srun apptainer exec --bind $PWD --pwd $PWD $path_to_image/fluidity_spud_diamond_07112025.sif \
    flredecomp -i 1 -o ${SLURM_NTASKS} ${flmlfile} para_${flmlfile}

# Étape 2 : simulation parallèle
srun apptainer exec --bind $PWD --pwd $PWD $path_to_image/fluidity_spud_diamond_07112025.sif \
    fluidity para_${flmlfile}.flml