Star-CCM+/fr: Difference between revisions

Updating to match new version of source page
(Updating to match new version of source page)
(Updating to match new version of source page)
 
Line 29: Line 29:
* <code>starccm-mixed</code> pour le format précision mixte, soit <code>module load starccm-mixed/19.04.007</code>.
* <code>starccm-mixed</code> pour le format précision mixte, soit <code>module load starccm-mixed/19.04.007</code>.


<div class="mw-translate-fuzzy">
Quand vous soumettez des tâches sur une grappe pour la première fois, vous devrez configurer votre environnement pour l’utilisation de votre licence. Si vous utilisez le serveur CD-adapco qui vous permet de payer uniquement pour votre consommation, créez simplement un fichier <code>~/.licenses/starccm.lic</code> comme décrit ci-dessus dans <i>Fichier pour une licence POD</i>.
Quand vous soumettez des tâches sur une grappe pour la première fois, vous devrez configurer votre environnement pour l’utilisation de votre licence. Si vous utilisez le serveur CD-adapco qui vous permet de payer uniquement pour votre consommation, créez simplement un fichier <code>~/.licenses/starccm.lic</code> comme décrit ci-dessus dans <i>Fichier pour une licence POD</i>.
Par contre, si vous utilisez un serveur de licence interne, créez d'abord le fichier <code>~/.licenses/starccm.lic</code> et soumettez un billet d'assistance au [[Technical support/fr|soutien technique]].  Nous vous aiderons à coordonner les modifications ponctuelles du pare-feu réseau nécessaires pour y accéder. Si vous rencontrez toujours des problèmes pour faire fonctionner la licence, essayez de supprimer ou de renommer le fichier <code>~/.flexlmrc</code> car les chemins de recherche et/ou les paramètres précédents du serveur de licence peuvent y être stockés et entrer en conflit avec vos paramètres <code>starccm.lic</code> actuels. Notez que les fichiers des versions précédentes peuvent avoir accumulé une quantité importante d'espace disque dans des répertoires cachés nommés <code>.star-version_number</code> si vous avez exécuté de nombreuses tâches longues par le passé en utilisant des scripts slurm plus anciens ou si vous exécutez régulièrement starccm+ en mode graphique. Ceux-ci peuvent être supprimés périodiquement en exécutant soigneusement <code>rm -ri ~/.starccm*</code> et en répondant <i>oui</i> à l'affichage de l'invite.
Par contre, si vous utilisez un serveur de licence interne, créez d'abord le fichier <code>~/.licenses/starccm.lic</code> et soumettez un billet d'assistance au [[Technical support/fr|soutien technique]].  Nous vous aiderons à coordonner les modifications ponctuelles du pare-feu réseau nécessaires pour y accéder. Si vous rencontrez toujours des problèmes pour faire fonctionner la licence, essayez de supprimer ou de renommer le fichier <code>~/.flexlmrc</code> car les chemins de recherche et/ou les paramètres précédents du serveur de licence peuvent y être stockés et entrer en conflit avec vos paramètres <code>starccm.lic</code> actuels. Notez que les fichiers des versions précédentes peuvent avoir accumulé une quantité importante d'espace disque dans des répertoires cachés nommés <code>.star-version_number</code> si vous avez exécuté de nombreuses tâches longues par le passé en utilisant des scripts slurm plus anciens ou si vous exécutez régulièrement starccm+ en mode graphique. Ceux-ci peuvent être supprimés périodiquement en exécutant soigneusement <code>rm -ri ~/.starccm*</code> et en répondant <i>oui</i> à l'affichage de l'invite.
</div>
Sur [[Niagara/fr|Niagara]], les nœuds de calcul configurent le système de fichiers <code>$HOME</code> en lecture seule (<i>read only</i>). Il est donc important de définir la variable d'environnement <code>$STARCCM_TMP</code> et de la diriger vers <code>$SCRATCH</code>, ce qui est unique à la version de StarCCM+. Autrement, StarCCM+ tente de créer le répertoire dans <code>$HOME</code> et se termine de façon anormale.


<tabs>
<tabs>
Line 53: Line 57:
module load starccm-mixed/18.06.006
module load starccm-mixed/18.06.006


# chargez le module starccm/18.04.008-R8
module load starccm-mixed/18.04.008
<div class="mw-translate-fuzzy">
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
</div>


<div class="mw-translate-fuzzy">
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
mkdir -p "$STARCCM_TMP"
</div>


<div class="mw-translate-fuzzy">
slurm_hl2hl.py --format STAR-CCM+ > $STARCCM_TMP/machinefile-$SLURM_JOB_ID
slurm_hl2hl.py --format STAR-CCM+ > $STARCCM_TMP/machinefile-$SLURM_JOB_ID
 
</div>
NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 68: Line 79:
</div>
</div>


}}</tab>
<div class="mw-translate-fuzzy">
<tab name="Cedar" >
{{File
|name=starccm_job.sh
|lang="bash"
|contents=
#!/bin/bash
 
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
Line 82: Line 86:
#SBATCH --mem=0              # demandez toute la mémoire par nœud
#SBATCH --mem=0              # demandez toute la mémoire par nœud
#SBATCH --ntasks-per-node=1  # ne pas modifier
#SBATCH --ntasks-per-node=1  # ne pas modifier
</div>


#module load StdEnv/2020      # Versions < 18.06.006
#module load StdEnv/2020      # Versions < 18.06.006
Line 89: Line 94:
module load starccm-mixed/18.06.006
module load starccm-mixed/18.06.006


<div class="mw-translate-fuzzy">
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
</div>


export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
mkdir -p "$STARCCM_TMP"


slurm_hl2hl.py --format STAR-CCM+ > $STARCCM_TMP/machinefile-$SLURM_JOB_ID
slurm_hl2hl.py --format STAR-CCM+ > machinefile-$SLURM_JOB_ID


NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))
<div class="mw-translate-fuzzy">
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
</div>


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 104: Line 114:
</div>
</div>


}}</tab>
<div class="mw-translate-fuzzy">
<tab name="Graham" >
{{File
|name=starccm_job.sh
|lang="bash"
|contents=
#!/bin/bash
 
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
Line 118: Line 121:
#SBATCH --mem=0              # demandez toute la mémoire par nœud
#SBATCH --mem=0              # demandez toute la mémoire par nœud
#SBATCH --ntasks-per-node=1  # ne pas modifier
#SBATCH --ntasks-per-node=1  # ne pas modifier
</div>


#module load StdEnv/2020      # Versions < 18.06.006
#module load StdEnv/2020      # Versions < 18.06.006
Line 125: Line 129:
module load starccm-mixed/18.06.006
module load starccm-mixed/18.06.006


<div class="mw-translate-fuzzy">
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
</div>
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
slurm_hl2hl.py --format STAR-CCM+ > machinefile-$SLURM_JOB_ID


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
slurm_hl2hl.py --format STAR-CCM+ > $SLURM_TMPDIR/machinefile
slurm_hl2hl.py --format STAR-CCM+ > $SLURM_TMPDIR/machinefile
</div>
</div>
NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 138: Line 147:
starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -podkey $LM_PROJECT -np $NCORE -nbuserdir -licpath $CDLMD_LICENSE_FILE -nbuserdir $SLURM_TMPDIR -machinefile $SLURM_TMPDIR/machinefile $SLURM_SUBMIT_DIR/your-file.sim -mpi intel -fabric psm2
starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -podkey $LM_PROJECT -np $NCORE -nbuserdir -licpath $CDLMD_LICENSE_FILE -nbuserdir $SLURM_TMPDIR -machinefile $SLURM_TMPDIR/machinefile $SLURM_SUBMIT_DIR/your-file.sim -mpi intel -fabric psm2
</div>
</div>
}}</tab>
<tab name="Narval" >
{{File
|name=starccm_job.sh
|lang="bash"
|contents=
#!/bin/bash


#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --account=def-group  # indiquez le nom du compte
Line 160: Line 161:
module load starccm-mixed/18.06.006
module load starccm-mixed/18.06.006


<div class="mw-translate-fuzzy">
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
</div>


<div class="mw-translate-fuzzy">
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
mkdir -p "$STARCCM_TMP"
</div>


<div class="mw-translate-fuzzy">
slurm_hl2hl.py --format STAR-CCM+ > $STARCCM_TMP/machinefile-$SLURM_JOB_ID
slurm_hl2hl.py --format STAR-CCM+ > $STARCCM_TMP/machinefile-$SLURM_JOB_ID
</div>


<div class="mw-translate-fuzzy">
NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))
NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))
</div>


<div class="mw-translate-fuzzy">
# supprimez <i>-power -podkey $LM_PROJECT</i> si vous utilisez un serveur de licence de votre établissement
# supprimez <i>-power -podkey $LM_PROJECT</i> si vous utilisez un serveur de licence de votre établissement
starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -podkey $LM_PROJECT -np $NCORE -licpath $CDLMD_LICENSE_FILE -nbuserdir $SLURM_TMPDIR -machinefile $STARCCM_TMP/machinefile-$SLURM_JOB_ID $PWD/your-file.sim -mpi openmpi
starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -podkey $LM_PROJECT -np $NCORE -licpath $CDLMD_LICENSE_FILE -nbuserdir $SLURM_TMPDIR -machinefile $STARCCM_TMP/machinefile-$SLURM_JOB_ID $PWD/your-file.sim -mpi openmpi
</div>


}}
<div class="mw-translate-fuzzy">
</tab>
<tab name="Niagara" >
{{File
|name=starccm_job.sh
|lang="bash"
|contents=
#!/bin/bash
 
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --account=def-group  # indiquez le nom du compte
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
#SBATCH --time=00-01:00      # indiquez la limite de temps (jj-hh:mm)
Line 192: Line 195:
   
   
module load CCEnv
module load CCEnv
</div>


#module load StdEnv/2020      # Versions < 18.06.006
#module load StdEnv/2020      # Versions < 18.06.006
Line 199: Line 203:
module load starccm-mixed/18.06.006
module load starccm-mixed/18.06.006


<div class="mw-translate-fuzzy">
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@127.0.0.1"
export CDLMD_LICENSE_FILE="1999@127.0.0.1"
</div>
# Comment the next line when using an institutional license server
LM_PROJECT='my22digitpodkey'  # Specify your Siemens Power on Demand (PoD) Key


ssh nia-gw -L 1999:flex.cd-adapco.com:1999 -L 2099:flex.cd-adapco.com:2099 -N -f
# These settings are used instead of your ~/.licenses/starccm.lic
# (settings shown will use the cd-adapco pod license server)
FLEXPORT=1999                   # Specify server static flex port
VENDPORT=2099                   # Specify server static vendor port
LICSERVER=flex.cd-adapco.com     # Specify license server hostname


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 227: Line 240:
</tabs>
</tabs>
</div>
</div>
<div class="mw-translate-fuzzy">
ssh nia-gw -L 1999:flex.cd-adapco.com:1999 -L 2099:flex.cd-adapco.com:2099 -N -f
</div>
slurm_hl2hl.py --format STAR-CCM+ > $SLURM_TMPDIR/machinefile
NCORE=$((SLURM_NNODES * SLURM_CPUS_PER_TASK * SLURM_NTASKS_PER_NODE))
# Workaround for license failures:
# until the exit status is equal to 0, we try to get Star-CCM+ to start (here, for at least 5 times).
i=1
RET=-1
while [ $i -le 5 ] && [ $RET -ne 0 ]; do
        [ $i -eq 1 ] {{!}}{{!}} sleep 5
          echo "Attempt number: "$I
          if [ -n "$LM_PROJECT" ]; then
          # Siemens PoD license server
          starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -podkey $LM_PROJECT -np $NCORE -nbuserdir $SLURM_TMPDIR -machinefile $SLURM_TMPDIR/machinefile $JAVA_FILE $SIM_FILE
        else
          # Institutional license server
          starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -np $NCORE -nbuserdir $SLURM_TMPDIR -machinefile $SLURM_TMPDIR/machinefile $JAVA_FILE $SIM_FILE
        fi
        RET=$?
        i=$((i+1))
done
exit $RET
}}
</tab>
</tabs>


= Visualisation à distance =
= Visualisation à distance =
38,757

edits