@@ -30,27 +30,25 @@ void Init_ResetParameter()
3030# ifdef OPENMP
3131 if ( OMP_NTHREAD <= 0 )
3232 {
33- int NCPU_Node, NNode_PBS , NNode_SLURM;
33+ int NCPU_PBS , NNode_SLURM;
3434 FILE *fp;
3535
3636// determine if the PBS/SLURM software is used
37- fp = popen ( " echo ${PBS_NUM_NODES :-0}" , " r" );
38- fscanf ( fp, " %d" , &NNode_PBS );
37+ fp = popen ( " echo ${PBS_NP :-0}" , " r" );
38+ fscanf ( fp, " %d" , &NCPU_PBS );
3939
4040 fp = popen ( " echo ${SLURM_JOB_NUM_NODES:-0}" , " r" );
4141 fscanf ( fp, " %d" , &NNode_SLURM );
4242
4343// set up the number of OpenMP threads
44- if ( NNode_PBS ) // PBS system
44+ if ( NCPU_PBS ) // PBS system
4545 {
46- fp = popen ( " echo $PBS_NUM_PPN" , " r" );
47- fscanf ( fp, " %d" , &NCPU_Node );
48-
49- OMP_NTHREAD = NCPU_Node * NNode_PBS / MPI_NRank;
46+ OMP_NTHREAD = NCPU_PBS / MPI_NRank;
5047 }
5148
5249 else if ( NNode_SLURM ) // SLURM system
5350 {
51+ int NCPU_Node;
5452 fp = popen ( " echo $SLURM_CPUS_ON_NODE" , " r" );
5553 fscanf ( fp, " %d" , &NCPU_Node );
5654
0 commit comments