Hyper MPI针对Allreduce、Bcast、Barrier、Alltoallv、Allgatherv、Gatherv和Scatterv的阻塞与非阻塞接口这七种集合操作,进行了算法和拓扑感知层面的优化,达到特定集合通信小包情形下的极致性能。相较于其他MPI,Hyper MPI具有以下关键特性:
Hyper MPI除了包含Open MPI的所有特性之外,增加了集合通信模块(UCG),该模块中含有大量自研集合通信算法,大幅度提升Allreduce、Bcast、Barrier、Alltoallv、Allgatherv、Gatherv和Scatterv的阻塞与非阻塞接口等集合通信函数的性能。该模块还包含部分集合通信接口的硬件卸载算法,大幅提升计算、通信交叠率。
Hyper MPI在hmpi层集合通信coll框架下新增KuComm分层拓扑组件,提供分层次拓扑框架能力,同时提供Bcast/Alltoall的阻塞集合操作接口,其他集合操作及点对点接口复用OpenMPI 4.x提供的功能。该组件为后续不同层级通信域使用各自最适合的集合通信组件,进行极致性能优化提供了良好基础。
Hyper MPI开源版本安装后,可以将Hyper MPI闭源组件安装到开源Hyper MPI安装目录进行闭源特性使能,无需重新编译安装Hyper MPI开源版本,Hyper MPI闭源组件提供进一步的优化特性。