...
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
#!/bin/bash #PBS -l select=1:ncpus=###CORES###:mem=32gb #PBS -l walltime=999:00:00 #PBS -r n #PBS -N ###JOB NAME### #PBS -A ###myJAM PROJECT### export LOGFILE=$PBS_O_WORKDIR/$PBS_JOBNAME"."$PBS_JOBID".log" #make unique scratch directory on GPFS filesystem SCRATCHDIR=/gpfs/scratch_gs/$USER/$PBS_JOBID mkdir -p "$SCRATCHDIR" cd $PBS_O_WORKDIR echo "$PBS_JOBID ($PBS_JOBNAME) @ `hostname` at `date` in "$RUNDIR" START" > $LOGFILE echo "`date +"%d.%m.%Y-%T"`" >> $LOGFILE #load TurboMole Environment and set scratch directory module load TurboMole/7.3.1 export TURBOTMPDIR=$SCRATCHDIR #copy input files to scratch directory cp -r $PBS_O_WORKDIR/* $SCRATCHDIR/. cd $SCRATCHDIR rm $PBS_JOBNAME"."$PBS_JOBID".log" #some output for debugging CPUSET=/dev/cpuset/PBSPro/$PBS_JOBID CPUSET_CPUS=`cat $CPUSET/cpus` CPUSET_MEMS=`cat $CPUSET/mems` echo >> $LOGFILE echo "GLOBAL PARAMETERS" >> $LOGFILE echo "---------------------------" >> $LOGFILE echo "Node : "`hostname` >> $LOGFILE echo "RunDir : "$PBS_O_WORKDIR >> $LOGFILE echo "TurboBins : "$TURBOBINS >> $LOGFILE echo "ScratchDir: "$SCRATCHDIR >> $LOGFILE echo "# CPUs : "$NCPUS >> $LOGFILE echo " \`-CPUSet: "$CPUSET_CPUS >> $LOGFILE echo " \`-MEMs : "$CPUSET_MEMS >> $LOGFILE echo "# Threads : "$OMP_NUM_THREADS >> $LOGFILE echo "KMP_AFFINITY = "$KMP_AFFINITY >> $LOGFILE echo >> $LOGFILE echo "STARTING TURBOMOLE..." >> $LOGFILE echo "---------------------------" >> $LOGFILE #INSERT TURBOMOLE CALLS HERE, e.g. # actual -r 2>&1 >> $LOGFILE # dscf_omp 2>&1 >> $LOGFILE # or whatever # copy back results to home directory cp -r "$SCRATCHDIR"/* $PBS_O_WORKDIR/. cd $PBS_O_WORKDIR #print the last known statistics of the job (memory usage, cpu time, etc...) echo >> $LOGFILE qstat -f $PBS_JOBID >> $LOGFILE echo "$PBS_JOBID ($PBS_JOBNAME) @ `hostname` at `date` in "$RUNDIR" END" >> $LOGFILE echo "`date +"%d.%m.%Y-%T"`" >> $LOGFILE |
...