这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
adf:openmpin2019 [2019/11/26 09:25] – liu.jun | adf:openmpin2019 [2024/04/14 22:45] (当前版本) – liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ======AMS2019中,ReaxFF单进程为何CPU占用率变成了800%左右====== | + | ======AMS2019以后的版本中,ReaxFF单进程为何CPU占用率变成了800%左右====== |
+ | MPI和OpenMP是两种不同的并行计算机制,在旧版本中,只有MPI并行,没有OpenMP并行。从AMS2019开始,ReaxFF在原先MPI并行的基础上,增加了OpenMP并行,效率提高了一个数量级,但其核数占用,是另一套机制,也就是NSCM设置为某个数值的时候,OpenMP也会调用更多的核数(默认情况下,会调用所有核)。如果用户希望降低单个任务的CPU占用率,可以新增环境变量OMP_NUM_THREADS,赋值为1(取消OpenMP并行,或者到一个比较低的自然数,例如2、4)。 | ||
+ | Linux、Intel-MPI版通过PBS、Slurm、LSF提交的情况,不需要设置该变量,它会自动调整到一个合适的值上。 | ||
- | 从AMS2019开始,ReaxFF在原先MPI并行的基础上,增加了OpenMP并行,效率提高了一个数量级,CPU占用率也提高了。如果用户希望降低CPU占用率,可以修改环境变量OMP_NUM_THREADS为1(取消OpenMP并行,或者到一个比较低的自然数,例如2、4)。 | ||
- | Linux、Intel-MPI版通过PBS、Slurm、LSF提交的情况,不需要设置该变量,它会自动调整到一个合适的值上。其他情况,会默认调用所有CPU。 | + | |
- | + | * Linux的环境变量设置,是在ams20*/amsbashrc.sh中增加一行,例如export OMP_NUM_THREADS=1,退出重新登入,即可生效。 | |
- | + | ||
- | | + | |
- | * Linux的环境变量设置,是在adf20*/adfbashrc.sh中增加一行,例如export OMP_NUM_THREADS=1,退出重新登入,即可生效。 | + |