- Timestamp:
- 2015-07-10T13:28:53+02:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_r4765_CNRS_agrif/NEMOGCM/SETTE/prepare_job.sh
r4687 r5581 200 200 fi 201 201 ;; 202 ifort_MERCATOR_CLUSTER) 202 XC_ARCHER_INTEL) 203 # ocean cores are packed 24 to a node 204 NB_REM=$( echo $NB_PROC | awk '{print ( $1 % 24 ) }') 205 if [ ${NB_REM} == 0 ] ; then 206 # number of processes required is an integer multiple of 24 207 # 208 NB_NODES=$( echo $NB_PROC $NXIO_PROC | awk '{print ($1) / 24}') 209 else 210 # 211 # number of processes required is not an integer multiple of 24 212 # round up the number of nodes required. 213 # 214 NB_NODES=$( echo $NB_PROC | awk '{printf("%d",($1) / 24 + 1 )}') 215 fi 216 # xios cores are sparsely packed at 4 to a node 217 # but can not share nodes with the ocean cores 218 NB_REM=$( echo $NXIO_PROC | awk '{print ( $2 % 4 ) }') 219 if [ ${NB_REM} == 0 ] ; then 220 # number of processes required is an integer multiple of 4 221 # 222 NB_NODES=$( echo $NB_NODES $NXIO_PROC | awk '{print ($1 + ( $2 / 4 ))}') 223 else 224 # 225 # number of processes required is not an integer multiple of 4 226 # round up the number of nodes required. 227 # 228 NB_NODES=$( echo $NB_NODES $NXIO_PROC | awk '{print ($1 + ( $2 / 4 ) + 1)}') 229 fi 230 ;; 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) 203 283 echo NB_PROCS ${NB_PROC} 204 284 echo NB_NODES ${NB_NODES} … … 209 289 NB_PROC_NODE=${NB_PROC} 210 290 else 211 if [ ${NB_PROC} -le 8] ; then291 if [ ${NB_PROC} -le 16 ] ; then 212 292 NB_NODES=1 213 293 QUEUE=mono 214 294 NB_PROC_NODE=${NB_PROC} 215 295 else 216 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 }') 217 297 QUEUE=multi 218 NB_PROC_NODE= 8298 NB_PROC_NODE=16 219 299 fi 220 300 fi … … 244 324 245 325 case ${COMPILER} in 246 ifort_MERCATOR_CLUSTER) 247 #cat run_sette_test.job | sed -e"s:QUEUE:${QUEUE}:" > run_sette_test1.job 248 #cat run_sette_test.job | sed -e"s/NPROC_NODE/${NB_PROC_NODE}/" > run_sette_test1.job 249 #-e"s/NPROC_NODE/${NB_PROC_NODE}/" > run_sette_test1.job 326 openmpi_NAVITI_MERCATOR) 250 327 cat run_sette_test.job | sed -e"s/NPROC_NODE/${NB_PROC_NODE}/" \ 251 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 252 334 mv run_sette_test1.job run_sette_test.job 253 335 ;;
Note: See TracChangeset
for help on using the changeset viewer.