Changeset 1528 for trunk/libIGCM/libIGCM_sys/libIGCM_sys_irene-amd.ksh
- Timestamp:
- 05/11/20 08:37:51 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/libIGCM/libIGCM_sys/libIGCM_sys_irene-amd.ksh
r1524 r1528 1149 1149 file=$1 1150 1150 1151 # In case of use of DEDICATED option XIOS servers, do not share xios nodes with xios clients 1152 # Compute the number of core to add to force the use of a new node for xios servers 1153 if [ ${IOS_OK_DEDICATED} -eq 1 ] ; then 1154 (( current_core_noxios = coreNumber - IOS_PROC_MPI * IOS_PROC_OMP * IOS_PROC_DEP )) 1155 (( first_comp_proc_dep_loc = 1 + NB_CORE_PER_NODE - current_core_noxios % NB_CORE_PER_NODE )) 1156 (( second_comp_proc_mpi_loc = IOS_PROC_MPI - 1 )) 1157 (( coreNumber = current_core_noxios + first_comp_proc_dep_loc + second_comp_proc_mpi_loc * IOS_PROC_OMP * IOS_PROC_DEP )) 1158 fi 1159 1151 1160 if [ ${executionType} -eq 1 ] ; then 1152 1161 # MPMD + MPI 1153 1162 sed -e "/::openMPthreads::/d" \ 1154 1163 -e "s/::JobNumProcTot::/${coreNumber}/" \ 1155 -e "/#MSUB -x/d" \1156 1164 ${file} > ${file}.tmp 1157 1165 … … 1270 1278 eval comp_proc_mpi_loc=\${${comp}_PROC_MPI} 1271 1279 eval comp_proc_omp_loc=\${${comp}_PROC_OMP} 1272 echo "${comp_proc_mpi_loc} ./${ExeNameOut}" >> run_file 1280 eval comp_proc_dep_loc=\${${comp}_PROC_DEP} 1281 1282 # In case of use of DEDICATED option XIOS servers, do not share xios nodes with xios clients 1283 # Compute the number of core to add to force the use of a new node for xios servers 1284 if ( [ "X${ExeNameOut}" != X\"\" ] && [ "X${comp}" = "XIOS" ] ) ; then 1285 if [ ${IOS_OK_DEDICATED} -eq 1 ] ; then 1286 (( current_core_noxios = coreNumber - comp_proc_mpi_loc * comp_proc_dep_loc )) 1287 (( first_comp_proc_dep_loc = 1 + NB_CORE_PER_NODE - current_core_noxios % NB_CORE_PER_NODE )) 1288 (( second_comp_proc_mpi_loc = comp_proc_mpi_loc - 1 )) 1289 if [ ${comp_proc_dep_loc} -lt ${first_comp_proc_dep_loc} ] ; then 1290 echo "1-${first_comp_proc_dep_loc} ./${ExeNameOut}" >>run_file 1291 if [ ${comp_proc_mpi_loc} -gt 1 ] ; then 1292 echo "${second_comp_proc_mpi_loc}-${comp_proc_dep_loc} ./${ExeNameOut}" >>run_file 1293 fi 1294 else 1295 echo "${comp_proc_mpi_loc}-${comp_proc_dep_loc} ./${ExeNameOut}" >>run_file 1296 fi 1297 else 1298 echo "${comp_proc_mpi_loc}-${comp_proc_dep_loc} ./${ExeNameOut}" >>run_file 1299 fi 1300 else 1301 echo "${comp_proc_mpi_loc}-${comp_proc_dep_loc} ./${ExeNameOut}" >>run_file 1302 fi 1303 1304 1273 1305 fi 1274 1306 done 1307 1308 ## module advised by TGCC (instead of 2 variables) 1309 module load feature/bridge/heterogenous_mpmd 1275 1310 1276 1311 EXECUTION="${HOST_MPIRUN_COMMAND} -f ./run_file" … … 1432 1467 eval comp_proc_mpi_loc=\${${comp}_PROC_MPI} 1433 1468 eval comp_proc_omp_loc=\${${comp}_PROC_OMP} 1469 eval comp_proc_dep_loc=\${${comp}_PROC_DEP} 1470 1471 # Compute number of cores per process 1472 (( comp_proc_omp_dep_loc = comp_proc_omp_loc * comp_proc_dep_loc )) 1434 1473 1435 1474 # Build script files … … 1467 1506 # Complete run_file 1468 1507 1469 echo "${comp_proc_mpi_loc}-${comp_proc_omp_loc} env OMP_NUM_THREADS=${comp_proc_omp_loc} ./script_${ExeNameOut}.ksh " >>run_file 1508 # In case of use of DEDICATED option XIOS servers, do not share xios nodes with xios clients 1509 # Compute the number of core to add to force the use of a new node for xios servers 1510 if ( [ "X${ExeNameOut}" != X\"\" ] && [ "X${comp}" = "XIOS" ] ) ; then 1511 if [ ${IOS_OK_DEDICATED} -eq 1 ] ; then 1512 (( current_core_noxios = coreNumber - comp_proc_mpi_loc * comp_proc_omp_dep_loc )) 1513 (( first_comp_proc_dep_loc = 1 + NB_CORE_PER_NODE - current_core_noxios % NB_CORE_PER_NODE )) 1514 (( second_comp_proc_mpi_loc = comp_proc_mpi_loc - 1 )) 1515 if [ ${comp_proc_omp_dep_loc} -lt ${first_comp_proc_dep_loc} ] ; then 1516 echo "1-${first_comp_proc_dep_loc} env OMP_NUM_THREADS=1 ./script_${ExeNameOut}.ksh " >>run_file 1517 if [ ${comp_proc_mpi_loc} -gt 1 ] ; then 1518 echo "${second_comp_proc_mpi_loc}-${comp_proc_omp_dep_loc} ./${ExeNameOut}" >>run_file 1519 fi 1520 else 1521 echo "${comp_proc_mpi_loc}-${comp_proc_omp_dep_loc} env OMP_NUM_THREADS=1 ./script_${ExeNameOut}.ksh " >>run_file 1522 fi 1523 else 1524 echo "${comp_proc_mpi_loc}-${comp_proc_omp_dep_loc} env OMP_NUM_THREADS=1 ./script_${ExeNameOut}.ksh " >>run_file 1525 fi 1526 else 1527 echo "${comp_proc_mpi_loc}-${comp_proc_omp_dep_loc} env OMP_NUM_THREADS=${comp_proc_omp_loc} ./script_${ExeNameOut}.ksh " >>run_file 1528 fi 1470 1529 1471 1530 fi
Note: See TracChangeset
for help on using the changeset viewer.