#! /bin/bash echo "Preparing:" set -x # Output commands set -e # Abort on errors cd @RUNDIR@-active echo "Checking:" pwd hostname date cat ${PBS_NODEFILE} > SIMFACTORY/NODES echo "Environment:" export GMON_OUT_PREFIX=gmon.out export OMP_NUM_THREADS=@NUM_THREADS@ export MPD_NODEFILE=mpd_nodefile export MV2_SRQ_SIZE=4000 # ??? export MPI_NODEFILE=mpi_nodefile export MPICHDIR=/usr/local/mvapich2-0.9.8p2patched-intel-ofed-1.2 env | sort > SIMFACTORY/ENVIRONMENT echo "Starting:" uniq ${PBS_NODEFILE} > ${MPD_NODEFILE} ${MPICHDIR}/bin/mpdboot -v -n @NODES@ -f ${MPD_NODEFILE} ${MPICHDIR}/bin/mpdtrace -l for node in $(cat ${MPD_NODEFILE}); do for ((proc=0; proc<@(@PPN_USED@/@NUM_THREADS@)@; ++proc)); do echo ${node} done done > ${MPI_NODEFILE} export CACTUS_STARTTIME=$(date +%s) time ${MPICHDIR}/bin/mpirun -machinefile ${MPI_NODEFILE} -np @NUM_PROCS@ @EXECUTABLE@ -L 3 @PARFILE@ echo "Stopping:" ${MPICHDIR}/bin/mpdallexit date echo "Done."