Child pages
  • How to run Comsol on FAS Odyssey (SEAS users only)

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Due to the limited number of COMSOL licenses, we sometimes run out of licenses. If you get a message to that effect, wait for some time before trying again.  Also, please log out of any sessions when not in use. If your work requires regular use of COMSOL, please consider purchasing a copy from COMSOL.
  2. With the introduction of OnDemand VDI (see below), the only supported use of comsol will be on Odyssey.
  3. SEAS Comsol licenses are to be used for only academic non-profit work.

OnDemand Virtual Desktop (VDI)

...

Comsol versions available via the new module system:

module-query comsol

Older COMSOL versions available under the old module system:

module load centos6
source new-modules.sh
module load legacy

module av 2>&1 | grep -i comsol | grep -i seas

Newer versions: comsol 5.3a

These are under the new module system. Once you determine a version to use, run it interactively as follows:

Code Block
languagebash
module load comsol/5.3a4-fasrc01
comsol

Note that the SLURM command 'srun' requires memory to be specified. The options '–mem 4000' requests 4 Gigs of memory, which is a reasonable amount to start with; '-t 0-2:00' specifies a 2 hour session; and '-n 1 -N 1' requests 1 core on 1 node.

Older modules: comsol 5.1,5.0,4.4,4.3a

(Note that you need to load the legacy module)

Code Block
languagebash
module load centos6
source new-modules.sh
module load legacy
module load seas/comsol5.1
srun -p test --mem 4000 --pty --x11=first -t 0-2:00 -n 1 -N 1 /bin/bash
comsol

Running comsol in batch via slurm

In order to run Comsol mph files in the batch mode (i.e. solving the model without using the GUI interface) you need an input file (usually with extension .mph) created with COMSOL GUI. Once you have an input file (we use, for eg. busbar.mph in the following example), prepare a batch submission script for COMSOL using the following template (called "runscript_comsol.sh"):

Code Block
languagebash
#!/bin/bash 
#
#SBATCH -n 8        # Number of cores 
#SBATCH -N 1        # Number of nodes (all cores will be on this node)
#SBATCH -t 0-1:00   # Runtime in D-HH:MM format 
#SBATCH -p general  # Partition to submit to 
#
# Memory per CPU for multinode/MPI work
# use --mem= for single node work, and specify -N 1
#SBATCH --mem-per-cpu=500 #Memory per cpu in MB (see also --mem) 

module load comsol/5.3a4-fasrc01
 
# To run with an older module (example):
# source new-modules.sh
# module load legacy

#For an earlier version:
#module load centos6
#source new-modules.sh
#module load legacy
# module load seas/comsol5.1
# The input file, for example, is assumed to be a COMSOL generated
# file called 'busbar.mph'.

INPUT_FILENAME=busbar.mph
OUTPUT_FILENAME=busbar_out.mph
OUTLOG=busbar_out.log
SCRATCH_DIR=.

# use $SLURM_NTASKS env set by #SBATCH -n value
export COMSOL_NUM_THREADS=$SLURM_NTASKS
comsol batch -np $COMSOL_NUM_THREADS -inputfile $INPUT_FILENAME -outputfile $OUTPUT_FILENAME -batchlog $OUTLOG

# Report some useful info
/bin/uname -a

date

exit

...

Comsol documentation is usually found under html and pdf directories. You can open the pdf documentation with the following SLURM command:(Please do not use evince directly on the login node.) (from an OnDemand remote desktop terminal):

Alternatively, you can copy the pdf files to your local desktop/laptop.

Code Block
languagebash
srun -p interact --mem 4000 --pty --x11=first -t 0-2:00 /bin/bash
evince /n/sw/comsol53a/doc/pdf/COMSOL_Multiphysics/IntroductionToCOMSOLMultiphysics.pdf

...