版本: Open MPI 3.0.1

编译好可执行的C语言程序后,使用 mpirun -np 3 Test 命令,发现没有正常运行,而是报错:

There are not enough slots available in the system to satisfy the 3 slots
that were requested by the application:
/home/~/xxx

Either request fewer slots for your application, or make more slots available
for use.

在我之前运行的机器上开10个进程也没问题啊,安装步骤也一致,后来一想不对,如果CPU配置的不同,可能能支持的性能也不同。

果然发现机器1有24个processors,出问题的机器有 2 个processors, - - !!

采用“把好的玩成坏的”的方式,把机器一多次改变进程数运行,发现改到25就会报这个错。

也就是说,Open MPI 会估算我们的CPU承载能力,用一定算法计算出进程的上限。

当然,也可以使用 --oversubscribe 参数去超出上限个数运行,不过参考文档上说明了,不建议这样做,会有未定义行为 - - !!

相关文章:

  • 2022-12-23
  • 2021-12-06
  • 2021-10-14
  • 2022-02-02
  • 2022-12-23
  • 2022-02-24
  • 2021-09-28
猜你喜欢
  • 2022-12-23
  • 2021-08-08
  • 2022-02-21
  • 2022-01-15
  • 2021-08-22
  • 2021-07-26
  • 2022-01-15
相关资源
相似解决方案