中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

产品介绍

概念介绍

Message Passing Interface(MPI)是支持多编程语言编程的并行计算通讯应用接口。它基于Open MPI,结合Open UCX P2P点对点通讯框架开发,专为集合通讯的UCX COLL、UCG优化框架,并在该框架中实现了优化算法加速库。具有高性能、大规模性和可移植性,以支持制造、气象、中小超算场景的解决方案,其长远意义在于构建以鲲鹏服务器为硬件基础的高性能计算生态。

价值

MPI集合通信函数包罗万象,仅MPI 3.1标准中定义的集合通信函数就达30多种。在众多集合通信操作函数中,MPI_Allreduce,MPI_Bcast和MPI_Barrier地位突出,调用占比较高,而在诸多应用中,MPI集合操作多是小包通信。

  • 性价比最优

    Hyper MPI当前针对以上三种集合通讯函数做了算法和拓扑感知层面的优化,以保证其在相同组网环境下MPI_Bcast小包情况下性能全面超越友商,MPI_Allreduce小包情况下性能接近友商。

  • 构筑自由生态

    业界中公认性能最优的MPI实现是intel公司的Intel MPI,但由于硬件的依赖性,Intel MPI只能使能于以x86芯片为核心的服务器和集群上;Hyper MPI则不仅可以在x86服务器上使能,而且可以在以ARM芯片为核心的服务器和集群上发挥作用。相比于x86服务器,ARM服务器具有单节点核数多、指令集简单、耗能低、价格实惠等特点,因此这有利于构建以ARM芯片为硬件核心的计算生态。

功能

Hyper MPI是基于Open MPI,结合Open UCX P2P点对点通讯框架,新增了UCX COLL集合通讯优化框架,并在该框架实现了优化算法加速库,构建MPI的集合通信操作性能竞争力。本MPI产品化版本支持的集合通讯操作主要包括:

  • AllReduce集合操作。

    函数原型:int MPI_Allreduce(void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)

    MPI_Allreduce是MPI组规约函数。Allreduce将各个独立进程中的send buffer进行某种数学的(如:加法或者乘法)或者逻辑的(如:求逻辑与、逻辑或)运算,然后将结果同步到通信域内所有进程的receive buffer中。

  • Bcast集合操作。

    函数原型:int MPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm)

    MPI_Bast是MPI广播操作函数,root进程将buffer中的信息发送给通讯域内其余进程,使得所有进程获取相同的信息。

  • Barrier集合操作。

    函数原型:int MPI_Barrier(MPI_Comm comm)

    MPI_Barrier是MPI同步函数,其作用是:该通讯域中全部进程进行同步操作,即保证进程调用函数后具有良好的同步性。

    Hyper MPI集合通讯算法支持最大发送数据包长度为2^32字节,超过2^32字节后提示错误信息并退出。对于超过2^32字节的情况,用户需手动切换至Open MPI原生算法。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词