MPI 标准没有指定 MPI 等级是如何启动的,而是由特定的实现来提供一种机制。它仅建议(有关详细信息,请参阅MPI 3.1 标准的第 8.8 节)mpiexec提供调用的启动器(如果有必要),并且-n #procs是指定 MPI 进程初始数量的公认方法之一。因此,除非您准确指定正在使用的 MPI 实现,否则提出的问题没有任何意义。正如我在评论中已经说过的,在大多数实现中,这两个选项是同义词。
请注意,某些 MPI 实现可以与批处理调度系统(例如 Slurm、Torque 等)集成,并且这些系统可能会提供自己的机制来启动 MPI 作业。例如,Open MPI 提供了orterun进程启动器,符号链接为mpirunand mpiexec,它可以理解-n和-np选项。但是,当在 Slurm 作业中运行时,srun会改为使用它并且它只能理解-n(它实际上有一组完全不同的选项)。