Scripts for compilation and running of TCLB at Magnus cluster
Magnus cluster uses SLURM queue. So, to see queue you use squeue
, to run jobs you run sbatch
.
Computing nodes have different architecture then the login node - so nothing compiled for computational nodes can be runned on the login node. That why you need to submit a job for more or less anything you want to do. This includes configuration and compilation.
To ease the work with TCLB on Magnus, this repository of cluster-specific tools was created. If you clone it to p
subdirectory, you can use it to compile and run TCLB with the below instructions.
git clone https://github.com/CFD-GO/TCLB.git
cd TCLB
git clone https://github.com/llaniewski/TCLB-Magnus.git p
All the needed configuration and installation of R packages is done by:
p/config
As R can be only executed on computational nodes, you cannot run make
localy. Compilation (on 24 cores) can be executed using:
p/make d2q9
To run cases you can use the run
script:
p/run [model] [case.xml] [number of cores] [options for sbatch (optional)]
You can use the script from a different directory then TCLB main dir, so for instance:
cd /scratch/blarbla/blarbla/some_important_research/
~/TCLB/p/run d2q9 mycase.xml 48
If I understand the accouting on Magnus it rarely makes sens to run on less then 24 cores, as they bill you for 24.
You can change the default time (1h), name, etc by supplying additional options for sbatch like:
~/TCLB/p/run d2q9 mycase.xml 48 -J "new name" --time=24:00:00
The scripts support getting PushBullet notifications based on: https://github.com/llaniewski/my.prompt