Rate This Document
Findability
Accuracy
Completeness
Readability

KuComm Instructions

The KuComm component is added to the collective communication framework COLL at the HMPI layer of Hyper MPI, providing the hierarchical topology framework capability. The framework uses a hierarchical approach based on the cluster's physical topology (node-socket-core). It optimizes performance by selecting and executing the most efficient collective algorithms for each communication domain—whether inter-node, intra-node, or intra-socket.

The current version provides blocking collective operation interfaces of Bcast and Alltoall. Other collective operations and point-to-point interfaces reuse the original functions of Hyper MPI. This component allows the subsequent communication domains at different levels to use the most suitable collective communication components for superior performance optimization.

Component Enablement Method

You can add --mca coll_kucomm_priority 100 to the mpirun command to set the priority of the KuComm component to 100 (higher than the default priority of other collective communication components) to enable the KuComm component.

Command Examples

The following example uses four nodes with four processes per node.

  • Before KuComm is enabled:

    mpirun -np 16 -N 4 --hostfile hf4 -x UCX_TLS=sm,rc osu_bcast

  • After KuComm is enabled:

    mpirun -np 16 -N 4 --hostfile hf4 -x UCX_TLS=sm,rc --mca coll_kucomm_priority 100 osu_bcast

Feature Support and Rollback Conditions

  • Currently, the KuComm component supports only the Bcast and Alltoall interfaces.
  • Currently, the KuComm component supports the Bcast and Alltoall interfaces only in single-thread scenarios.
  • Currently, the KuComm component supports the Bcast and Alltoall interfaces only when processes are evenly distributed on multiple nodes. Otherwise, the Bcast and Alltoall interfaces of Hyper MPI are automatically called.
  • Currently, the KuComm component does not support the Alltoall interface on a single node. The original Alltoall interface of Hyper MPI is automatically called.