-
Notifications
You must be signed in to change notification settings - Fork 3
Phase 2
In this phase you are going to run the MPI code on the cluster, first compile and install the code. Note that you will need to modify the DEFINE statements at the top of the c++ code to point to your input files, you will also have to modify the install directory in the makefile if you are going to run the install target.
Note that debugging output is turned on by default, you can change this in the source code by defining the debug print DEFINE statement as 0. Note that the directory where debug files are created needs to be also set to your own directory. Every process will create a .debug text file that will contain the debug output for that process.
$ cd ~/emulator/src
$ make
$ make install
Go into your install directory and submit the slurm script to run the job. Note that you will have to modify some of the variables inside the slurm script.
MAKE SURE YOU TURN DEBUG OFF FOR LARGE SAMPLES IF YOUR RUNNING ON THE CLUSTER
$ cd /panasas/scratch/kmarcus2/emulator/run
$ sbatch emulator.slurm
There are also command line arguments that you can set to test the code on the head node. Note that there are default vales for each argument so you only need to specify the ones that you want to change.
$ mpirun -np 1 ./final_emulator_fork --help
Options:
--help Help message
--radius arg (=100) Radius of neighbour search for spatial points
--ndim arg (=4) Number of dimensions - parametric
--procPerGroup arg (=32) Number of processors in a group
--sims arg (=2048) Number of Titan simulations
--macroScaledRadius arg (=0.2) Radius of search for macro-parameters
--covarNeighbours arg (=120) Number of neighbours needed to be considered
for setting up co-variance matrix. should be <
500
--netezzaBuff arg (=800) Number of emulator constructions after which
data is piped to Netezza
--spatialNeighbours arg (=10) Number of neighbours for a spatial point. for
10 points or less
--mergeCount arg (=200) Merge count
--mergeSafe arg (=25) Merge safe
--NewtonIter arg (=10) Newton Iterations