运行MPI作业(Coll模式)

背景信息

Coll模式支持的MPI集合操作包含Allreduce、Bcast、Barrier、Allgatherv和Scatterv。Coll模式包含默认算法和指定算法两种模式,Hyper MPI默认使用Coll模式运行MPI作业,即在运行作业时不需要添加--mca coll ^ucg参数。

如果需要采用Open MPI原有的集合通信方式运行MPI作业,则需要在运行作业时添加--mca coll ^ucg参数。示例如下:

mpirun -np 16 -N 2 --hostfile hf --mca coll ^ucg test_case

  • -np:表示所有节点总进程数。计算公式=单节点的进程数量(N)*节点数量。
  • -N:表示每个节点的进程数。
  • --hostfile:表示进程运行节点的配置文件。
  • test_case:表示mpicc编译后的二进制文件。

通过默认算法运行MPI作业

Hyper MPI在默认情况下根据包长、每个节点的进程数(PPN)和节点数三个参数选择算法,在使用时直接运行mpirun命令即可,不用添加额外参数。

运行命令示例如下:

mpirun -np 16 -N 2 --hostfile hf test_case

在一些不支持场景下,算法会发生切换,参见特性支持与功能回退说明

通过指定算法运行MPI作业

以Allreduce的算法参数UCG_PLANC_UCX_ALLREDUCE_ATTR为例进行介绍。通过指定算法运行MPI作业的命令参数请参见指定算法支持的命令参数

指定算法支持的命令参数