- Timestamp:
- 03/07/18 16:10:33 (6 years ago)
- Location:
- trunk/libIGCM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/libIGCM/libIGCM_config/libIGCM_config.ksh
r1421 r1426 705 705 exit 706 706 fi 707 if [ ${comp}_PROC_NOD -gt 1 ] ; then 708 if ( [ ${comp}_PROC_MPI -gt 1 ] && [ ${comp}_PROC_OMP -gt 1 ] ) ; then 709 IGCM_debug_Print 2 "Error using MPI/OMP/NOD parameters !!!" 710 IGCM_debug_Exit "It is not allowed to use MPI and OMP and NOD parameters for the same component" 711 IGCM_debug_Exit "Check your config.card. Exit now" 712 IGCM_debug_Verif_Exit 713 fi 714 if [ "${comp}" != "IOS" ] ; then 715 IGCM_debug_Print 2 "Error using NOD parameter !!!" 716 IGCM_debug_Exit "NOD parameter is only available for IOS component " 717 IGCM_debug_Exit "Check your config.card. Exit now" 718 IGCM_debug_Verif_Exit 719 fi 720 fi 721 707 722 eval tempvarMPI=\${${comp}_PROC_MPI} 708 723 eval tempvarNOD=\${${comp}_PROC_NOD} … … 716 731 717 732 # SUM UP NUMBER OF CORES 718 (( coreNumber = coreNumber + tempvarMPI * tempvarNOD * tempvarOMP )) 719 733 if [ ${comp}_PROC_NOD -gt 1 ] ; then 734 (( coreNumber = coreNumber + tempvarNOD * NB_CORE_PER_NODE )) 735 else 736 (( coreNumber = coreNumber + tempvarMPI * tempvarNOD * tempvarOMP )) 737 fi 720 738 # SUM UP NUMBER OF MPI TASKS 721 739 (( mpiTasks = mpiTasks + tempvarMPI * tempvarNOD )) -
trunk/libIGCM/libIGCM_sys/libIGCM_sys_curie.ksh
r1413 r1426 193 193 DEFAULT_NUM_PROC_CPL=1 194 194 (( DEFAULT_NUM_PROC_ATM = BATCH_NUM_PROC_TOT - DEFAULT_NUM_PROC_OCE - DEFAULT_NUM_PROC_CPL )) 195 196 #==================================================== 197 #- Number of computing cores per node 198 #- 199 NB_CORE_PER_NODE=16 195 200 196 201 #D-#================================================== … … 1298 1303 rank=0 1299 1304 current_core=0 1300 core_per_node=161301 1305 init_exec=n 1302 1306 … … 1319 1323 eval comp_proc_mpi_loc=\${${comp}_PROC_MPI} 1320 1324 eval comp_proc_omp_loc=\${${comp}_PROC_OMP} 1325 eval comp_proc_nod_loc=\${${comp}_PROC_NOD} 1321 1326 1322 1327 echo "#!/bin/ksh" > script_${ExeNameOut}.ksh … … 1368 1373 #OMP_NUM_THREADS=4 1369 1374 #./lmdz.x 1370 1375 if [ ${comp_proc_nod_loc} -gt 1 ] ; then 1376 (( offset_comp_proc_loc = NB_CORE_PER_NODE / comp_proc_mpi_loc * comp_proc_nod_loc )) 1377 else 1378 (( offset_comp_proc_loc = comp_proc_omp_loc )) 1379 fi 1371 1380 for nb_proc_mpi in `seq 0 $(($comp_proc_mpi_loc-1))`; do 1372 (( index_host = current_core / core_per_node))1373 1374 (( slot = current_core % core_per_node))1375 1376 1377 1378 1379 1380 done1381 string_final=$( echo $string_final | sed "s/.$//" )1382 echo "rank $rank=$host_value slot=$string_final" >> rankfile1383 (( rank = rank + 1 ))1384 (( current_core = current_core + comp_proc_omp_loc ))1381 (( index_host = current_core / NB_CORE_PER_NODE )) 1382 host_value=${host[${index_host}]} 1383 (( slot = current_core % NB_CORE_PER_NODE )) 1384 virg="," 1385 string_final="" 1386 for index in `seq $slot $(($slot+$comp_proc_omp_loc-1))`; do 1387 string=$index$virg 1388 string_final=$string_final$string 1389 done 1390 string_final=$( echo $string_final | sed "s/.$//" ) 1391 echo "rank $rank=$host_value slot=$string_final" >> rankfile 1392 (( rank = rank + 1 )) 1393 (( current_core = current_core + offset_comp_proc_loc )) 1385 1394 done 1386 1395 fi
Note: See TracChangeset
for help on using the changeset viewer.