3 # This is the generic jobscript to run jobs on GridEngine
5 # The script supports up to 7 parameters.
7 # The user specific part of the script is indicated below.
21 echo "Usage : jobScript.sh par1 [par2] [par2] [par3] [par4] [par5] [par6] [par7]"
63 *) echo "Unsupported number of arguments"
64 echo "Usage : jobScript.sh par1 [par2] [par2] [par3] [par4] [par5] [par6] [par7]"
70 echo "--------------------------------"
71 echo "SLURM_JOBID : " $SLURM_JOBID
72 echo "SLURM_ARRAY_JOB_ID : " $SLURM_ARRAY_JOB_ID
73 echo "SLURM_ARRAY_TASK_ID: " $SLURM_ARRAY_TASK_ID
74 echo "--------------------------------"
82 ((myline=${SLURM_ARRAY_TASK_ID}+${arrayoffset}))
83 # map back params for the job
84 input=$(awk "NR==${myline}" $jobarrayFile) # get all params for this job
87 par1=$(echo $input | cut -d " " -f1)
88 par2=$(echo $input | cut -d " " -f2)
89 par3=$(echo $input | cut -d " " -f3)
90 par4=$(echo $input | cut -d " " -f4)
91 par5=$(echo $input | cut -d " " -f5)
92 par6=$(echo $input | cut -d " " -f6)
93 par7=$(echo $input | cut -d " " -f7)
100 echo "par5 = ${par5}"
101 echo "par6 = ${par6}"
102 echo "par7 = ${par7}"
105 format='+%Y/%m/%d-%H:%M:%S'
111 echo "--------------------------------"
112 echo "RUNNING ON HOST : " $host
113 echo "WORKING DIR : " $(pwd)
114 echo "USER is : " $USER
115 echo "DISK USAGE /tmp :"
117 echo "--------------------------------"
121 echo "--------------------------------"
122 echo "par1 = ${par1}"
123 echo "par2 = ${par2}"
124 echo "par3 = ${par3}"
125 echo "par4 = ${par4}"
126 echo "par5 = ${par5}"
127 echo "par6 = ${par6}"
128 echo "par7 = ${par7}"
129 echo "--------------------------------"
135 echo "--------------------------------"
137 echo "==> Kernel version information :"
139 echo "==> C compiler that built the kernel:"
141 echo "==> load on this node:"
143 echo "==> actual compiler is"
145 echo "--------------------------------"
155 ###################################################################
156 ###################################################################
157 # EDIT THIS PART TO EXECUTE YOUR JOB!
161 #----------------------
163 echo "==> running enironment script ${par1}"
165 #----------------------
167 echo "==> ldd ${par2}"
170 echo "==> execute program "
174 files=$(echo $par3 | sed 's/,/ /g')
177 file=$(echo $file | sed 's/#/,/g')
178 echo "==> $par2 $file $outdir $par5"
179 time $par2 $file $outdir $par5
184 echo "------------------------------------"
185 echo "MOVING OUTPUTFILES:"
187 isList=$(echo $file | grep ",")
189 if [ "${isList}" == "" ]
191 filename=$(basename ${file} | sed 's/.root$//')
192 mv -v ${outdir}/${filename}_dst_apr12.root ${outdir}/root/
195 for f in $(echo $file | sed 's/,/ /g')
197 filename=$(basename ${f} | sed 's/.root$//')
198 mv -v ${outdir}/${filename}_dst_apr12.root ${outdir}/root/
202 #---------------------------------------------------------------------
206 # END EDIT YOUR EXECUT JOB!
207 ###################################################################
208 ###################################################################
217 echo "--------------------------------"
218 echo "Job with params "
219 echo "par1 = ${par1}"
220 echo "par2 = ${par2}"
221 echo "par3 = ${par3}"
222 echo "par4 = ${par4}"
223 echo "par5 = ${par5}"
224 echo "par6 = ${par6}"
225 echo "par7 = ${par7}"
227 echo "--------------------------------"
232 echo "--------------------------------"
233 echo "MONITOR ENVIRONMENT:"
234 echo "SLURM_JOBID : " $SLURM_JOBID
235 echo "SLURM_ARRAY_JOB_ID : " $SLURM_ARRAY_JOB_ID
236 echo "SLURM_ARRAY_TASK_ID: " $SLURM_ARRAY_TASK_ID
237 echo "RUNNING ON HOST : " $(hostname)
238 echo "WORKING DIR : " $(pwd)
239 echo "USER is : " $USER
240 echo "DISK USAGE /tmp :------------"
242 echo "--------------------------------"
249 # when running single file move log file name
251 if [ "$par3" == "$files" ]
253 echo "MOVING LOG FILE"
254 outfile=$(basename $par3)
255 mv ${pathoutputlog}/slurm-${SLURM_ARRAY_JOB_ID}_${SLURM_ARRAY_TASK_ID}.out ${pathoutputlog}/${outfile}.log