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页面。