Changeset 5600 for branches/2014/dev_r4650_UKMO14.12_STAND_ALONE_OBSOPER/NEMOGCM/SETTE/prepare_job.sh
- Timestamp:
- 2015-07-15T17:46:12+02:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_r4650_UKMO14.12_STAND_ALONE_OBSOPER/NEMOGCM/SETTE/prepare_job.sh
r5034 r5600 226 226 # round up the number of nodes required. 227 227 # 228 NB_NODES=$( echo $NB_NODES $NXIO_PROC | awk '{print ($1 + ( $2 / 4 ) + 1)}') 228 NB_NODES=$( echo $NB_NODES $NXIO_PROC | awk '{print ($1 + ( $2 / 4 ) + 1)}') 229 229 fi 230 230 ;; 231 ifort_MERCATOR_CLUSTER) 231 XC40_METO*) #Setup for Met Office XC40 with any compiler 232 # ocean cores are packed 32 to a node 233 # If we need more than one node then have to use parallel queue and XIOS must have a node to itself 234 NB_REM=$( echo $NB_PROC | awk '{print ( $1 % 32 ) }') 235 if [ ${NB_REM} == 0 ] ; then 236 # number of processes required is an integer multiple of 32 237 # 238 NB_NODES=$( echo $NB_PROC $NXIO_PROC | awk '{print ($1) / 32}') 239 else 240 # 241 # number of processes required is not an integer multiple of 32 242 # round up the number of nodes required. 243 # 244 NB_NODES=$( echo $NB_PROC $NXIO_PROC | awk '{printf("%d",($1) / 32 + 1 )}') 245 fi 246 # xios cores are sparsely packed at 4 to a node 247 if [ $NXIO_PROC == 0 ] ; then 248 NB_XNODES=0 249 else 250 NB_REM=$( echo $NXIO_PROC | awk '{print ( $1 % 4 ) }') 251 if [ ${NB_REM} == 0 ] ; then 252 # number of processes required is an integer multiple of 4 253 # 254 NB_XNODES=$( echo $NXIO_PROC | awk '{print (( $1 / 4 ) + 1)}') 255 else 256 # 257 # number of processes required is not an integer multiple of 4 258 # round up the number of nodes required. 259 # 260 NB_XNODES=$( echo $NXIO_PROC | awk '{printf("%d",($1) / 4 + 1) }') 261 fi 262 fi 263 if [ ${NB_XNODES} -ge 1 ] ; then 264 NB_NODES=$((NB_NODES+NB_XNODES)) 265 fi 266 echo NB_XNODES=${NB_XNODES} 267 echo Total NB_NODES=${NB_NODES} 268 if [ ${NB_NODES} -eq 1 ] ; then 269 QUEUE=shared 270 #Not using XIOS in detatched mode and using less than one node so should be ok on shared node 271 #Load snplauncher module to allow use of mpiexec 272 SELECT="select=1:ncpus=$((NXIO_PROC + NB_PROC))":mem=15GB 273 module load cray-snplauncher 274 echo 'Shared Queue' 275 else 276 QUEUE=normal 277 SELECT="select=$NB_NODES" 278 module unload cray-snplauncher #Make sure snplauncher module is not loaded 279 echo 'Normal Queue' 280 fi 281 ;; 282 openmpi_NAVITI_MERCATOR) 232 283 echo NB_PROCS ${NB_PROC} 233 284 echo NB_NODES ${NB_NODES} … … 238 289 NB_PROC_NODE=${NB_PROC} 239 290 else 240 if [ ${NB_PROC} -le 8] ; then291 if [ ${NB_PROC} -le 16 ] ; then 241 292 NB_NODES=1 242 293 QUEUE=mono 243 294 NB_PROC_NODE=${NB_PROC} 244 295 else 245 NB_NODES=$( echo $NB_PROC | awk '{print $1 - $1 % 8}' | awk '{print $1 / 8}')296 NB_NODES=$( echo $NB_PROC | awk '{print $1 - $1 % 16}' | awk '{print $1 / 16 }') 246 297 QUEUE=multi 247 NB_PROC_NODE= 8298 NB_PROC_NODE=16 248 299 fi 249 300 fi … … 273 324 274 325 case ${COMPILER} in 275 ifort_MERCATOR_CLUSTER) 276 #cat run_sette_test.job | sed -e"s:QUEUE:${QUEUE}:" > run_sette_test1.job 277 #cat run_sette_test.job | sed -e"s/NPROC_NODE/${NB_PROC_NODE}/" > run_sette_test1.job 278 #-e"s/NPROC_NODE/${NB_PROC_NODE}/" > run_sette_test1.job 326 openmpi_NAVITI_MERCATOR) 279 327 cat run_sette_test.job | sed -e"s/NPROC_NODE/${NB_PROC_NODE}/" \ 280 328 -e"s:QUEUE:${QUEUE}:" > run_sette_test1.job 329 mv run_sette_test1.job run_sette_test.job 330 ;; 331 XC40_METO*) 332 cat run_sette_test.job | sed -e"s/QUEUE/${QUEUE}/" \ 333 -e"s/SELECT/${SELECT}/" > run_sette_test1.job 281 334 mv run_sette_test1.job run_sette_test.job 282 335 ;;
Note: See TracChangeset
for help on using the changeset viewer.