【技术实现步骤摘要】
分布式计算系统,分布式计算系统中数据传输方法和装置
[0001]本申请是分案申请,原申请的申请号是201710769632.8,原申请日是2017年8月31日,原申请的全部内容通过引用结合在本申请中。
[0002]本专利技术涉及计算机领域,尤其涉及分布式计算系统,分布式计算系统中的数据传输方法和装置。
技术介绍
[0003]随着大数据产业和人工智能技术的发展,各类计算平台不断涌现,例如机器学习平台,图计算平台和流计算平台等等。这些计算平台常常被部署在分布式计算系统中以执行大数据计算。例如,机器学习平台通常以数据流图为计算对象,通过将数据流图划分为多个子图或者副本,以及将该多个子图或者副本部署在分布式计算系统中的多个计算节点上,进而可以使用该多个计算节点对数据流图进行协同计算,以提升数据的计算效率。其中,该多个计算节点中的计算节点可以包括多个用于计算的设备,如CPU(Center Processing Unit,中央处理器)以及在该计算节点的主机中配备的加速硬件,例如加速硬件可以是GPU(Graphics Processing Unit,图形处理器)。
[0004]而数据流图在分布式计算系统的计算过程中,需要进行节点间的数据流图参数的通信,这种通信直接影响机器学习平台对数据流图的计算效率。一种现有的方案中,将通常应用于高性能计算领域的消息传递接口(Message Passing Interface,MPI)库技术作为一个外接的插件引入分布式计算系统,以支持该系统中的数据通信,然而,在MPI库技术在进行数 ...
【技术保护点】
【技术特征摘要】
1.一种分布式计算系统,所述分布式计算系统包括第一计算节点和第二计算节点,其特征在于,所述第一计算节点保存有第一数据流图中的第一数据流图参数的名称、大小和通信对端标识,其中所述第一数据流图参数为所述第一数据流图的一连接边所承载的参数;所述第二计算节点保存有第二数据流图中的所述第一数据流图参数的名称、大小和通信对端标识;所述第一数据流图中的第一数据流图参数的通信对端标识对应于所述第二计算节点,所述第二数据流图中的第一数据流图参数的通信对端标识对应于所述第一计算节点;所述第一计算节点用于,利用第一接口参数生成算法生成第一三元组,所述第一三元组包括消息标记、消息大小和目的进程序列号,其中,所述消息标记对应于所述第一计算节点中的所述第一数据流图参数的名称,所述消息大小对应于所述第一计算节点中的所述第一数据流图参数的大小,所述目的进程序列号对应于所述第二计算节点中接收所述第一计算节点中的所述第一数据流图参数的进程;所述第二计算节点用于,利用第二接口参数生成算法生成第二三元组,所述第二接口参数生成算法与所述第一接口参数生成算法相同,所述第二三元组包括所述消息标记、所述消息大小和源进程序列号,其中,所述源进程序列号对应于所述第一计算节点中发送所述第一数据流图参数的进程;所述第一计算节点用于,以所述第一三元组作为接口参数,向所述第二计算节点发送所述第一数据流图参数;所述第二计算节点用于,根据所述第二三元组,所述第一数据流图参数。2.根据权利要求1所述的系统,其特征在于,在以所述第一三元组作为接口参数,向所述第二计算节点发送所述第一数据流图参数的方面,所述第一计算节点用于以所述第一三元组作为接口参数,通过消息传递接口MPI发送原语从所述第一计算节点的主机内存中读取所述第一数据流图参数,以向所述第二计算节点发送所述第一数据流图参数。3.根据权利要求2所述的系统,其特征在于,所述第一计算节点还保存有所述第一数据流图参数所在的存储设备的信息,第一数据流图参数所述第一计算节点还用于在所述存储设备的信息指示为其他存储设备的情况下,将所述第一数据流图参数从所述其他存储设备复制到所述第一计算节点的主机内存,所述其他存储设备为所述第一计算节点中除主机内存外的内存。4.根据权利要求1到3任一权利要求所述的系统,其特征在于,所述第一接口参数生成算法包括第一算法、第二算法和第三算法,在利用第一接口参数生成算法生成第一三元组第一数据流图参数的方面,所述第一计算节点用于:根据所述第一图数据结构中的第一数据流图参数的名称第一数据流图参数和所述第一算法,得到所述第一三元组中的消息标记,根据所述第一图数据结构中的第一数据流图参数的大小和所述第二算法,得到所述第一三元组中的消息大小,以及根据第一图数据结构中的第一数据流图参数的通信对端标识和所述第三算法,得到所述第一三元组中的目的进程序列号;相应的,在根据所述第二图数据结构中的第一数据流图参数的名称、大小和通信对端标识,利用第二接口参数生成算法生成第二三元组第一数据流图参数的方面,所述第二计算节点用于:
根据所述第二图数据结构中的第一数据流图参数的名称和所述第二接口参数生成算法中的第一算法,得到所述第二三元组中的消息标记;根据所述第二图数据结构中的第一数据流图参数的大小和所述第二接口参数生成算法中的第二算法,得到所述第二三元组中的消息大小;以及根据第二图数据结构中的第一数据流图参数的通信对端标识和所述第二接口参数生成算法中的第三算法,得到所述第二三元组中的源进程序列号。5.根据权利要求1到4任一权利要求所述的系统,其特征在于,在根据所述第二三元组,处理所述第一数据流图参数的方面第一数据流图参数,所述第二计算节点用于通过MPI探测原语检测所述第二计算节点主机内存中的数据缓存区,以获得所述第一数据流图参数的第二三元组,所述数据缓存区专用于存储由MPI原语处理的数据;调用MPI接收原语,以处理所述第一数据流图参数,所述MPI接收原语的接口参数包括所述第二三元组。6.根据权利要求1到4任一权利要求所述的系统,其特征在于,所述第一数据流图参数接收原语携带所述第一数据流图参数的目的地址,在通过第一数据流图参数接收原语处理所述第一数据流图参数的方面,所述第二计算节点用于将所述第二三元组作为所述MPI接收原语的接口参数调用所述MPI接收原语,以将所述第一数据流图参数从所述数据缓存区存储到所述目的地址。7.一种分布式计算系统中的数据传输方法,所述分布式计算系统包括第一计算节点和第二计算节点,其特征在于,所述方法包括:其中所述第一数据流图参数为所述第一数据流图的一连接边所承载的参数,所述通信对端标识对应所述第二计算节点;利用第一接口参数生成算法生成第一三元组,所述第一三元组包括消息标记、消息大小和目的进程序列号,其中,所述消息标记对应于第一数据流图参数的名称,所述消息大小对应于所述第一数据流图参数的大小,所述目的进程序列号对应于所述第二计算节点中接收所述第一数据流图参数的进程,其中所述第一数据流图参数为第一数据流图的一连接边所承载的参数;以所述第一三元组作为接口参数,向所述第二计算节点发送所述第一数据流图参数,以便于所述第二计算节点以与所述第一三元组对应的第二三元组作为接口参数,处理所述第一数据流图参数,所述第二三元组是利用第二接口参数生成算法生成的,所述第二接口参数生成算法与所述第一接口生成算法相同。8.根据权利要求7所述的方法,其特征在于,在以所述第一三元组作为接口参数,向所述第二计算节点发送所述第一数据流图参数的方面,所述方法包括:以所述第一三元组作为接口参数,通过消息传递接口MPI发送原语从所述第一计算节点的主机内存中读取所述第一数据流图参数,以向所述第二计算节点发送所述第一流数据流图参数。9.根据权利要求8所述的方法,其特征在于,所述第一计算节点还保存有所述第一数据流图参数所在的存储设备的信息,所述方法还包括:在所述存储设备的信息指示为其他存储设备的情况下,将所述第一数据流图参数从所述其他存储设备复制到所述第一计算节点的主机内存,所述其他存储设备为所述第一计算节点中除主机内存外的内存。10.根据权利要求7到9任一所述的方法,其特征在于,所述第一接口参数生成算法包括
第一算法、第二算法和第三算法,在根据所述第一图数据结构中的第一数据流图参数的名称、大小和通信对端标识,利用第一接口参数生成算法生成第一三元组的方面,所述第一计算节点用于:根据所述第一图数据结构中的第一数据流图参数的名称和所述第一算法,得到所述第一三元组中的消息标记,根据所述第一图数据结构中的第一数据流图参数的大小和所述第二算法,得到所述第一三元组中的消息大小,以及根据第一图数据结构中的第一数据流图参数的通信对端标识和所述第三算法,得到所述第一三元组中的目的进程序列号。11.一种分布式计算系统中的数据传输装置,所述分布式计算系统包括第一计算节点和第二计算节点,其特征在于,所述数据传输装置位于所述第一计算节点,所述数据传输装置包括:确定模块,所述确定模块用于从所述第一计算节点中的第一图数据结构中,确定第一数据流图的第一数据流图参数的名称、大小和通信对端标识,其中...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。