Skip to content

Instantly share code, notes, and snippets.

@xulman
Created February 2, 2021 08:48
Show Gist options
  • Save xulman/deece254470b8375f5813f099118e6fb to your computer and use it in GitHub Desktop.
Save xulman/deece254470b8375f5813f099118e6fb to your computer and use it in GitHub Desktop.
how to compile and run MitoGen on IT4I cluster
# once on a cluster, say after `ssh salomon`
# --------------- prepare and compile ---------------
# add necessary dev modules
. /scratch/work/project/open-19-3/simulators_libs/addModulesAtIT4I
# get sources and prepare env
git clone ...daPath...
cd $clonedFolder
mkdir BUILD
cd BUILD
# setup cmake
. /scratch/work/project/open-19-3/simulators_setupCmake.cmd
# review setup, compile
ccmake ..
make -j10
# check: should list only sys and compiler libs, no 3rd party such as lapack or TIFF
ldd ./mitogen
# test (notice it reports git commit hash)
./mitogen
# --------------- ready to go ---------------
# review time limit (or number of requested nodes) for the planned run,
# probably make own copy and edit it
cp /scratch/work/project/open-19-3/simulators_runOnCluster.cmd simulators_runOnCluster.cmd
vim simulators_runOnCluster.cmd
# run through your copy of the aux batch that sets up scheduling & accounting for you
mkdir run2; cd run2
# now in ....../BUILD/run2
#
. ../simulators_runOnCluster.cmd ../mitogen \
-c ../../config-synthHeLa/standard_masks/config-synthHela.ini \
-g ../../config-synthHeLa/standard_masks/initialII.ics \
\| tee log.txt
# notes:
. operator executes content of the file in the running shell (not in a new one as with scripts)
..._runOnCluster.cmd creates a script runCmd*.sh to be executed in the cluster,
one can use it again to rerun the simulation anytime later
..._runOnCluster.cmd submits this script as a job into the cluster for you,
after the job is over, two files (MG*.o* and MG*.e*) are created in the folder where job was submitted (this folder),
the files contain stdout and stderr outputs from the runCmd* script
# inspect job status
qstat -u yourLogin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment