Star-CCM+/fr: Difference between revisions

Jump to navigation Jump to search
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 22: Line 22:
*[https://software.intel.com/en-us/intel-mpi-library Intel MPI] est indiquée avec l'option <tt>-mpi intel</tt>.  
*[https://software.intel.com/en-us/intel-mpi-library Intel MPI] est indiquée avec l'option <tt>-mpi intel</tt>.  


<div class="mw-translate-fuzzy">
Étant donné que ces implémentations MPI ne sont pas complètement intégrées avec l’ordonnanceur Slurm, il faut préparer un fichier contenant la liste des serveurs que vous voulez utiliser. Pour ce faire, vous pouvez utiliser le script <tt>slurm_hl2hl.py</tt> qui, lancé avec l’option <tt>--format STAR-CCM+</tt> fournira cette liste; copiez la liste dans un fichier qui pourra ensuite être lu par STAR-CCM+.
Étant donné que ces implémentations MPI ne sont pas complètement intégrées avec l’ordonnanceur Slurm, il faut préparer un fichier contenant la liste des serveurs que vous voulez utiliser. Pour ce faire, vous pouvez utiliser le script <tt>slurm_hl2hl.py</tt> qui, lancé avec l’option <tt>--format STAR-CCM+</tt> fournira cette liste; copiez la liste dans un fichier qui pourra ensuite être lu par STAR-CCM+.
En raison de l’intégration limitée de MPI avec Slurm, il faut aussi utiliser les options <tt>--ntasks-per-node=1</tt> et <tt>--cpus-per-task=32</tt> lorsque vous soumettez vos tâches. En particulier, quand vous soumettez une tâche sur Cedar avec les modules de la version 14.02.012, vous devez ajouter <code>-fabric psm2</code> à la ligne de commande de starccm+ (dernière ligne de l'exemple de script sous l'onglet Cedar ci-dessous) pour que les tâches sur plusieurs nœuds s'effectuent sans problème, autrement aucun résultat ne sera produit.
En raison de l’intégration limitée de MPI avec Slurm, il faut aussi utiliser les options <tt>--ntasks-per-node=1</tt> et <tt>--cpus-per-task=32</tt> lorsque vous soumettez vos tâches. En particulier, quand vous soumettez une tâche sur Cedar avec les modules de la version 14.02.012, vous devez ajouter <code>-fabric psm2</code> à la ligne de commande de starccm+ (dernière ligne de l'exemple de script sous l'onglet Cedar ci-dessous) pour que les tâches sur plusieurs nœuds s'effectuent sans problème, autrement aucun résultat ne sera produit.
</div>


<div class="mw-translate-fuzzy">
Vous devrez aussi configurer votre environnement pour l’utilisation de votre licence. Cette opération est plutôt simple si vous utilisez le serveur CD-adapco qui vous permet de payer uniquement pour votre consommation. Par contre, si vous utilisez un serveur de licence interne, contactez le [[Technical support/fr|soutien technique]] pour obtenir de l'aide.
Vous devrez aussi configurer votre environnement pour l’utilisation de votre licence. Cette opération est plutôt simple si vous utilisez le serveur CD-adapco qui vous permet de payer uniquement pour votre consommation. Par contre, si vous utilisez un serveur de licence interne, contactez le [[Technical support/fr|soutien technique]] pour obtenir de l'aide.
</div>


Sur [[Niagara/fr|Niagara]], les nœuds de calcul configurent le système de fichiers <tt>$HOME</tt> en lecture seule (''read only''). Il est donc important de définir la variable d'environnement <tt>$STARCCM_TMP</tt> et de la diriger vers <tt>$SCRATCH</tt>, ce qui est unique à la version de StarCCM+. Autrement, StarCCM+ tente de créer le répertoire dans <tt>$HOME</tt> et se termine de façon anormale.
Sur [[Niagara/fr|Niagara]], les nœuds de calcul configurent le système de fichiers <tt>$HOME</tt> en lecture seule (''read only''). Il est donc important de définir la variable d'environnement <tt>$STARCCM_TMP</tt> et de la diriger vers <tt>$SCRATCH</tt>, ce qui est unique à la version de StarCCM+. Autrement, StarCCM+ tente de créer le répertoire dans <tt>$HOME</tt> et se termine de façon anormale.


<tabs>
<tabs>
<tab name="Graham" >
<tab name="Beluga" >
{{File
{{File
|name=starccm_job.sh
|name=starccm_job.sh
Line 36: Line 40:
|contents=
|contents=
#!/bin/bash
#!/bin/bash
#SBATCH --account=def-group  # specify some account
#SBATCH --account=def-group  # Specify some account
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --nodes=2            # Specify 1 or more nodes
#SBATCH --nodes=2            # Specify 1 or more nodes
#SBATCH --cpus-per-task=32   # Request all cores per node
#SBATCH --cpus-per-task=40   # Request all cores per node
#SBATCH --mem=0              # Request all memory per node
#SBATCH --mem=0              # Request all memory per node
#SBATCH --ntasks-per-node=1  # Do not change this value
#SBATCH --ntasks-per-node=1  # Do not change this value


# Pick an appropriate STARCCM version and precision
module load StdEnv/2020      # Uncomment for 15.04.010 or newer versions
 
# module load starccm/14.06.013-R8
# module load starccm/14.06.013-R8
module load starccm-mixed/14.06.013
# module load starccm-mixed/14.06.013
# module load starccm/15.04.010-R8
module load starccm-mixed/15.04.010


export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
Line 57: Line 64:
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))


starccm+ -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $SLURM_SUBMIT_DIR/machinefile -mpi intel -batch /path/to/your/simulation/file
starccm+ -batch -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $PWD/machinefile $PWD/your-file.sim


}}</tab>
}}</tab>
Line 66: Line 73:
|contents=
|contents=
#!/bin/bash
#!/bin/bash
#SBATCH --account=def-group  # specify some account
#SBATCH --account=def-group  # Specify some account
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --nodes=2            # Specify 1 or more nodes
#SBATCH --nodes=2            # Specify 1 or more nodes
Line 73: Line 80:
#SBATCH --ntasks-per-node=1  # Do not change this value
#SBATCH --ntasks-per-node=1  # Do not change this value


# Pick an appropriate STARCCM module/version and precision;
module load StdEnv/2020      # Uncomment for 15.04.010 or newer versions
# module load starccm/12.04.011-R8
 
module load starccm-mixed/14.06.013
# module load starccm/14.06.013-R8
# module load starccm-mixed/14.06.013
# module load starccm/15.04.010-R8
module load starccm-mixed/15.04.010


export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
Line 87: Line 97:
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))


starccm+ -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile `pwd`/machinefile -mpi intel -batch `pwd`/your-simulation-file.sim
starccm+ -batch -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $PWD/machinefile $PWD/your-file.sim -mpi intel
 
}}</tab>
<tab name="Graham" >
{{File
|name=starccm_job.sh
|lang="bash"
|contents=
#!/bin/bash
#SBATCH --account=def-group  # Specify some account
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --nodes=2            # Specify 1 or more nodes
#SBATCH --cpus-per-task=32    # or 44 Request all cores per node
#SBATCH --mem=0              # Request all memory per node
#SBATCH --ntasks-per-node=1  # Do not change this value
 
module load StdEnv/2020      # Uncomment for 15.04.010 or newer versions
 
# module load starccm/14.06.013-R8
# module load starccm-mixed/14.06.013
# module load starccm/15.04.010-R8
module load starccm-mixed/15.04.010
 
export LM_PROJECT='YOUR CD-ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"
 
export STARCCM_TMP="${SCRATCH}/.starccm-${EBVERSIONSTARCCM}"
mkdir -p "$STARCCM_TMP"
 
slurm_hl2hl.py --format STAR-CCM+ > machinefile
 
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))
 
# Append -fabric psm2 to next line when using module versions 15.04.010 or newer ...
 
starccm+ -jvmargs -Xmx4G -jvmargs -Djava.io.tmpdir=$SLURM_TMPDIR -batch -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $PWD/machinefile $PWD/your-file.sim -mpi intel -fabric psm2


}}</tab>
}}</tab>
Line 96: Line 141:
|contents=
|contents=
#!/bin/bash
#!/bin/bash
#SBATCH --account=def-group  # Specify some account
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --time=00-01:00      # Time limit: dd-hh:mm
#SBATCH --nodes=2            # Specify 1 or more nodes
#SBATCH --nodes=2            # Specify 1 or more nodes
Line 121: Line 167:
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))
NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))


starccm+ -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $SLURM_SUBMIT_DIR/machinefile -batch /path/to/your/simulation/file
starccm+ -batch -power -np $NCORE -podkey $LM_PROJECT -licpath $CDLMD_LICENSE_FILE -machinefile $PWD/machinefile $PWD/your-file.sim


}}</tab>
}}</tab>
38,760

edits

Navigation menu