Fluidity sur IO

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