Star-CCM+

Revision as of 13:29, 12 December 2017 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:

STAR-CCM+ is an all-in-one solution that delivers accurate and efficient multidisciplinary technologies in a single integrated user interface. It is developed by Siemens

License limitations

Compute Canada has the authorization to host STAR-CCM+ binaries on its servers, but does not provide licenses to users. You will need to have your own license in order to use this software.

Running Star-CCM+ on Compute Canada servers

We have two flavours of Star-CCM+ installed on our servers: a double precision one, and a mixed precision one. You will first need to figure out which version is best suited for your computations. The starccm module is the double-precision flavour, while the starccm-mixed module is the mixed precision flavour. Star-CCM+ comes bundled with two different distributions of MPI: IBM Platform MPI and Intel MPI. The default distribution is IBM Platform MPI. However, this distribution does not work on Cedar's Intel Omnipath network fabric. One must therefore tell starccm+ to use intel as the MPI distribution. This is done with the options -mpi intel.

Moreover, since neither IBM Platform MPI nor Intel MPI are tightly coupled with our scheduler, you must tell starccm+ what hosts to use by means of a file containing the list of hosts. To produce that file, we provide a script called slurm_hl2hl.py which, when called with the option --format STAR-CCM+, will output the list of hosts. This list can then be written to a file and read by Star-CCM+. Also, because these distributions of MPI are not tightly integrated with our scheduler, you should use the options --ntasks-per-node=1 and --cpus-per-task=32 for your job submission.

Finally, you will need to setup your job environment to use your license. If you are using Adapco's online "pay-on-usage" server, it is rather simple to configure. If you are using an internal license server, please contact us so that we can help you setup the access to it. When all is done, your submit script should look like this (this example uses 2 nodes for 1 hour, adjust these numbers based on the needs of your job):

File : mysub.sh

#!/bin/bash
#SBATCH --time=01:00:00
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=32
module load starccm/12.04.011-R8
export LM_PROJECT='YOUR ADAPCO PROJECT ID GOES HERE'
export CDLMD_LICENSE_FILE="1999@flex.cd-adapco.com"

slurm_hl2hl.py --format STAR-CCM+ > machinefile

NCORE=$((SLURM_NTASKS * SLURM_CPUS_PER_TASK))

starccm+ -power -np $NCORE -machinefile machinefile -batch -mpi intel /path/to/your/simulation/file