---
title: 关键特性
description: "Hyper MPI针对Allreduce、Bcast、Barrier、Alltoallv、Allgatherv、Gatherv、Gather、Scatterv、reduce_scatter和reduce_scatter_block的阻塞与非阻塞接口这七种集合操作，进行了算法和拓扑感知层面的优化，达到特定集合通信小包情形下的极致性能。相较于其他MPI，Hyper MPI具有以下关键特性："
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0005.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0005.html
indexId: 1ea6816940650788cbdd69c7e610424ea80bf14ce7a0c2783b5cd25ceeb21e2a60
---
# 关键特性

Hyper MPI针对Allreduce、Bcast、Barrier、Alltoallv、Allgatherv、Gatherv、Gather、Scatterv、reduce_scatter和reduce_scatter_block的阻塞与非阻塞接口这七种集合操作，进行了算法和拓扑感知层面的优化，达到特定集合通信小包情形下的极致性能。相较于其他MPI，Hyper MPI具有以下关键特性：

- 新增UCG模块
  Hyper MPI除了包含Open MPI的所有特性之外，增加了集合通信模块（UCG），该模块中含有大量自研集合通信算法，大幅度提升Allreduce、Bcast、Barrier、Alltoallv、Allgatherv、Gatherv、Gather、Scatterv、reduce_scatter和reduce_scatter_block的阻塞与非阻塞接口等集合通信函数的性能。该模块还包含部分集合通信接口的硬件卸载算法，大幅提升计算、通信交叠率。


- 新增KuComm组件
  Hyper MPI在hmpi层集合通信coll框架下新增KuComm分层拓扑组件，提供分层次拓扑框架能力，同时提供Bcast/Alltoall的阻塞集合操作接口，其他集合操作及点对点接口复用OpenMPI 4.x提供的功能。该组件为后续不同层级通信域使用各自最适合的集合通信组件，进行极致性能优化提供了良好基础。

- 新增FP16数据类型
  Hyper MPI在hmpi层新增FP16半精度数据类型支持，支持AI4S场景基础加速库的开发。

  在mpi扩展模块中新增c/c++语言的半精度数据类型：MPIX_SHORT_FLOAT、MPIX_C_SHORT_FLOAT_COMPLEX、MPIX_CXX_SHORT_FLOAT_COMPLEX类型，使用时需要引入<mpi-ext.h>头文件。当前HPCKit中的编译器不支持Fortran的半精度类型real2和complex4，因此hmpi内部也暂不使能Fortran的半精度特性。

- 支持鲲鹏环境
  Hyper MPI可以在以鲲鹏芯片为核心的服务器和集群上发挥作用。

- 支持动态加载闭源组件
  Hyper MPI开源版本安装后，可以将Hyper MPI闭源组件安装到开源Hyper MPI安装目录进行闭源特性使能，无需重新编译安装Hyper MPI开源版本，Hyper MPI闭源组件提供进一步的优化特性。
