指定算法说明

以下算法序号对应的算法内容请参见算法地图

关于Allreduce指定算法的说明

为提高性能,也可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Allreduce和MPI_Iallreduce时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_ALLREDUCE_ATTR=I:nS:200R:0- test_case

关于Bcast指定算法的说明

为提高性能,也可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Bcast和MPI_Ibcast时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_BCAST_ATTR=I:nS:200R:0- test_case

关于Barrier指定算法的说明

算法地图可知,Barrier的算法是Allreduce算法的子集,因此可参考Allreduce指定算法说明,此处不再赘述。

关于Alltoallv指定算法的说明

在选用算法1时,可通过调整以下参数值,寻找最优参数值,从而获得最佳性能。命令示例如下:

-x UCG_PLANC_UCX_ALLTOALLV_MIN_SEND_BATCH=7

-x UCG_PLANC_UCX_ALLTOALLV_MAX_SEND_BATCH=8

为提高性能,也可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Alltoallv和MPI_Ialltoallv时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_ALLTOALLV_ATTR=I:nS:200R:0- test_case

关于Scatterv指定算法的说明

为提高性能,也可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Scatterv和MPI_Iscatterv时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_SCATTERV_ATTR=I:nS:200R:0- test_case

关于Allgatherv指定算法的说明

为提高性能,可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Allgatherv和MPI_Iallgatherv时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_ALLGATHERV_ATTR=I:nS:200R:0- test_case

关于Gatherv指定算法的说明

为提高性能,可加入以下选项,调整传输模式:

-x UCX_TLS=sm,rc_x

综上,在调用MPI_Gatherv和MPI_Igatherv时运行命令示例如下(鲲鹏芯片):

mpirun -np 16 -N 2 --hostfile hf8 --mca btl ^vader,tcp,openib -x UCX_TLS=sm,rc_x -x UCG_PLANC_UCX_GATHERV_ATTR=I:nS:200R:0- test_case