mpi cpu的使用没有意义

时间:2015-04-27 18:25:02

标签: mpi cpu-usage

我的Windows系统有8个核心。

当我使用8个CPU和我的MPI:mpiexec.exe -n 8时,我的8个可用处理器中的所有处理器都忙于任务管理器,这是有道理的。

当我使用2个核心:mpiexec.exe -n 2时,我预计只有2个核心应该忙,但事实并非如此,而且我的CPU使用率不规则分布在8个核心上。

这是预期的吗?

1 个答案:

答案 0 :(得分:5)

是的,这种行为是预料之中的。诸如(大多数版本)Windows之类的通用操作系统会在核心周围移动进程。其中一个原因是确保没有任何进程缺乏执行时间。不要忘记,在大多数Windows计算机上,将会有与您的计算过程同时运行的各种进程。使用任务管理器查看正在发生的事情,如果除了运行MPI程序的2个进程外还有许多进程在运行,请不要感到惊讶。

所以,是的,有两个进程运行计算密集型程序,您可以预期核心使用情况不规律,但随着时间的推移平均为2/8

当然,对于并行MPI程序的特殊情况,这种行为可能会对性能造成损害。通常,MPI实现提供了某种方式来固定'进程到核心。有关如何执行此操作,请参阅MPI实现的文档。但如果发现性能下降,请不要感到惊讶