10.5. 仅在本地节点上启动

通常会在单个工作站或笔记本电脑上开发MPI应用程序,待MPI应用准备就绪后,再迁移到更大的并行/HPC环境中。

Open MPI 支持在单台机器上运行多进程MPI作业。 在这种情况下,您可以简单地避免列出主机文件或远程 主机,只需指定要启动的MPI进程数量。例如:

shell$ mpirun -n 6 mpi-hello-world
Hello world, I am 0 of 6 (running on my-laptop))
Hello world, I am 1 of 6 (running on my-laptop)
...
Hello world, I am 5 of 6 (running on my-laptop)

如果不指定-n选项,mpirun默认会启动与机器处理器核心数(不包括超线程)相同数量的MPI进程。

10.5.1. MPI通信

在单台机器上运行时,Open MPI 很可能会使用 ob1 PML 以及以下 BTL 进行对等节点间的 MPI 通信:

  • self: 用于发送和接收MPI回环消息 - 即源和目标MPI进程相同的情况。

  • sm: 用于在源和目标MPI进程可以共享内存的情况下(例如通过SYSV或POSIX共享内存机制)发送和接收MPI消息。

    注意

    有关使用共享内存进行MPI通信的更多信息,请参阅Shared Memory页面。