MPI启动这么多程序有多厉害

时间:2019-07-14 01:43:53

标签: c parallel-processing compilation mpi mpich

在拥有一些在群集上使用MPI的经验之后,我最近开始在计算机上运行MPI进行一些练习。我有一个双核处理器,但对如果指定大量进程会发生什么感到好奇,令我惊讶的是它能起作用。

mpirun -np 40 ./wha

这到底是怎么回事。即使考虑到单个处理器可能产生的线程数,这似乎也不可能。

1 个答案:

答案 0 :(得分:0)

在使用OpenMPI的情况下,如果运行的进程数大于处理器的数量(即发生超额订购时),则OpenMPI开始以降级模式运行MPI进程。在降级模式下运行意味着将其处理器分配给其他MPI进程以取得进展(即发生时间共享)。可以将mpi_yield_when_idle设置为0,以明确地使模式变为 aggressive ,在这种情况下,MPI进程不会自动将处理器分配给其他进程。

请参见here