System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种多节点MPI集合通信性能建模方法及系统技术方案_技高网

一种多节点MPI集合通信性能建模方法及系统技术方案

技术编号:44725104 阅读:5 留言:0更新日期:2025-03-21 17:51
本发明专利技术公开了一种多节点MPI集合通信性能建模方法及系统,首先根据节点内多核处理器信息和平台网络层次信息,确定所需测量的模型参数;然后在平台上测量节点内通信参数以及位于不同网络层次上的节点间通信参数;接下来分析集合通信源码并模拟通信算法行为,获得算法每一轮通信的所有通信特征;最后结合通信特征选择对应的参数,将每一轮的通信时间用对应参数的数学公式表示。本发明专利技术相比于现有模型,引入了超算网络层次结构信息和通信算法底层使用的点对点通信原语类型,将模型应用范围由单节点共享内存模型拓展至多节点共享内存和互连网络的混合模型,模型能够更精准地预测多节点集合通信操作的通信时间。

【技术实现步骤摘要】

所属的技术人员能够理解,本专利技术的各个方面可以实现为系统、方法或程序产品。因此,本专利技术的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。实施例2本专利技术提供一种多节点mpi集合通信性能建模系统,该系统能够用于实现上述多节点mpi集合通信性能建模方法,具体的,该多节点mpi集合通信性能建模系统包括参数模块、测量模块以及构建模块。其中,参数模块,根据节点内多核处理器信息和平台网络层次信息,确定所需测量的模型参数;测量模块,测量得到的所有模型参数,对于单节点内共享内存通信,分别测量位于不同numa域上的点对点通信参数;对于跨节点通信参数,分别测量位于不同网络层次上的点对点通信参数;构建模块,分析mpi源码中具体集合通信算法的通信行为,结合得到的模型参数,通过模拟通信算法的执行过程得到由各模型参数表示的通信时间公式。实施例3本专利技术提供了一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、图形处理器(graphics processing unit,gpu)、张量处理器(tensorprocessing unit,tpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本专利技术实施例所述的处理器可以用于多节点mpi集合通信性能建模方法的操作,包括:根据节点内多核处理器信息和平台网络层次信息,确定所需测量的模型参数;测量得到的所有模型参数,对于单节点内共享内存通信,分别测量位于不同numa域上的点对点通信参数;对于跨节点通信参数,分别测量位于不同网络层次上的点对点通信参数;分析mpi源码中具体集合通信算法的通信行为,结合得到的模型参数,通过模拟通信算法的执行过程得到由各模型参数表示的通信时间公式。请参阅图3,终端设备为计算机设备,该实施例的计算机设备60包括:处理器61、存储器62以及存储在存储器62中并可在处理器61上运行的计算机程序63,该计算机程序63被处理器61执行时实现实施例中的多节点mpi集合通信性能建模方法,为避免重复,此处不一一赘述。或者,该计算机程序63被处理器61执行时实现实施例多节点mpi集合通信性能建模系统中各模型/单元的功能,为避免重复,此处不一一赘述。计算机设备60可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备60可包括,但不仅限于,处理器61、存储器62。本领域技术人员可以理解,图3仅仅是计算机设备60的示例,并不构成对计算机设备60的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。所称处理器61可以是中央处理单元(central processing unit,cpu),还可以是其它通用处理器、图形处理器(graphics processing unit,gpu)、张量处理器(tensorprocessing unit,tpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器62可以是计算机设备60的内部存储单元,例如计算机设备60的硬盘或内存。存储器62也可以是计算机设备60的外部存储设备,例如计算机设备60上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器62还可以既包括计算机设备60的内部存储单元也包括外部存储设备。存储器62用于存储计算机程序以及计算机设备所需的其它程序和数据。存储器62还可以用于暂时地存储已经输出或者将要输出的数据。请参阅图4,终端设备为电子设备600,电子设备600以通用计算设备的形式表现。电子设备的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述方法部分中描述的根据本专利技术各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(rom)6203。存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任一总线结构的局域总线。电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储平台等。实施例4本专利技术还提供了一种存储介质,具体为计算机可读存储介质(memory),所述计算机可读存储介质是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端设备中的内置存储介质,当然也本文档来自技高网...

【技术保护点】

1.一种多节点MPI集合通信性能建模方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的多节点MPI集合通信性能建模方法,其特征在于,根据节点内多核处理器信息和平台网络层次信息,确定所需测量的模型参数,对于节点内通信,模型使用表示一次在共享内存信道上并发传输个长度为的消息的点对点通信时间;表示两进程绑定的核心位置,位于同一NUMA、跨NUMA以及同时存在两种情况;取或,表示底层使用MPI_Send和MPI_Recv进行通信,表示底层使用MPI_Sendrecv进行通信;

3.根据权利要求1所述的多节点MPI集合通信性能建模方法,其特征在于,对于单节点内共享内存通信,通过改变消息长度、并发传输数、进程绑核方式和点对点通信类型,测量不同特征下收发消息所需耗时,从而得到不同特征下的参数值;

4.根据权利要求3所述的多节点MPI集合通信性能建模方法,其特征在于,对于单节点内共享内存通信,特征变化范围描述如下:消息长度从1字节到1M字节;并发传输数从1到n/2,n为单节点最大核数;进程绑核方式取、和;点对点通信原语分别使用或两种;

5.根据权利要求1所述的多节点MPI集合通信性能建模方法,其特征在于,分析MPI源码中具体集合通信算法的通信行为,结合得到的模型参数,通过模拟通信算法的执行过程得到由各模型参数表示的通信时间公式,具体为:

6.根据权利要求5所述的多节点MPI集合通信性能建模方法,其特征在于,根据代码确定本轮通信使用的点对点通信类型中,若为MPI_Send和MPI_Recv原语,后续将使用型参数表示时间成本;

7.根据权利要求5所述的多节点MPI集合通信性能建模方法,其特征在于,累加所有轮次的通信时间,将一个集合通信操作的整体通信时间用参数的数学公式表示中,对于binomial广播算法,整个通信操作的耗时表示为:

8.根据权利要求5所述的多节点MPI集合通信性能建模方法,其特征在于,累加所有轮次的通信时间,将一个集合通信操作的整体通信时间用参数的数学公式表示中,对于recursive doubling allgather算法,整个通信操作的耗时表示为:

9.根据权利要求5所述的多节点MPI集合通信性能建模方法,其特征在于,累加所有轮次的通信时间,将一个集合通信操作的整体通信时间用参数的数学公式表示中,对于ringallgather算法,整个通信操作的耗时表示为:

10.一种多节点MPI集合通信性能建模系统,其特征在于,包括:

...

【技术特征摘要】

1.一种多节点mpi集合通信性能建模方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的多节点mpi集合通信性能建模方法,其特征在于,根据节点内多核处理器信息和平台网络层次信息,确定所需测量的模型参数,对于节点内通信,模型使用表示一次在共享内存信道上并发传输个长度为的消息的点对点通信时间;表示两进程绑定的核心位置,位于同一numa、跨numa以及同时存在两种情况;取或,表示底层使用mpi_send和mpi_recv进行通信,表示底层使用mpi_sendrecv进行通信;

3.根据权利要求1所述的多节点mpi集合通信性能建模方法,其特征在于,对于单节点内共享内存通信,通过改变消息长度、并发传输数、进程绑核方式和点对点通信类型,测量不同特征下收发消息所需耗时,从而得到不同特征下的参数值;

4.根据权利要求3所述的多节点mpi集合通信性能建模方法,其特征在于,对于单节点内共享内存通信,特征变化范围描述如下:消息长度从1字节到1m字节;并发传输数从1到n/2,n为单节点最大核数;进程绑核方式取、和;点对点通信原语分别使用或两种;

5.根据权利要求1所述的多节点mpi集合通信性能建模方法,其特征在于,分析mpi源码中具体集合通信...

【专利技术属性】
技术研发人员:董小社程鑫黄泽卿夏秦王强王子衡
申请(专利权)人:西安交通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1