CN113900976B - 联邦学习中dma连接建立方法 - Google Patents

联邦学习中dma连接建立方法 Download PDF

Info

Publication number
CN113900976B
CN113900976B CN202111087461.3A CN202111087461A CN113900976B CN 113900976 B CN113900976 B CN 113900976B CN 202111087461 A CN202111087461 A CN 202111087461A CN 113900976 B CN113900976 B CN 113900976B
Authority
CN
China
Prior art keywords
sender
target
dma
communication address
address information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111087461.3A
Other languages
English (en)
Other versions
CN113900976A (zh
Inventor
张翔宇
孙军欢
陈沫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhixing Technology Co Ltd
Original Assignee
Shenzhen Zhixing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Zhixing Technology Co Ltd filed Critical Shenzhen Zhixing Technology Co Ltd
Priority to CN202111087461.3A priority Critical patent/CN113900976B/zh
Publication of CN113900976A publication Critical patent/CN113900976A/zh
Application granted granted Critical
Publication of CN113900976B publication Critical patent/CN113900976B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0062Bandwidth consumption reduction during transfers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了联邦学习中DMA连接建立方法,所述联邦学习中DMA连接建立方法包括:生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接。本申请解决了现有技术中联邦学习网络传输效率低的技术问题。

Description

联邦学习中DMA连接建立方法
技术领域
本申请涉及通信技术领域,尤其涉及一种联邦学习中DMA连接建立方法、装置、电子设备、可读存储介质及产品。
背景技术
随着人工智能技术的不断发展,数据传输的方式也在不断换代更新,目前在联邦学习框架通常使用传统的TCP(Transmission Control Protocol,传输控制协议)通信进行不同参与方之间的通信,但是TCP通信过程中通常会在发送侧以及接收侧发生数据拷贝,并且TCP通信过程中稳定传输的功能实现依赖于软件,实际传输速度远低于物理带宽,网络传输效率低下,影响了联邦学习网络传输的效率。
发明内容
本申请的主要目的在于提供一种DMA(Direct Memory Access,远程直接数据存取)连接建立方法、装置、电子设备、可读存储介质及产品,旨在解决现有技术中联邦学习网络传输效率低的技术问题。
为实现上述目的,本申请提供一种联邦学习中DMA连接建立方法,所述联邦学习中DMA连接建立方法应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,所述联邦学习中DMA连接建立方法包括:
生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;
依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接。
可选地,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的步骤包括:
通过所述发送方转发进程依据所述目标进程标识,确定具备所述目标计算进程的目标数据接收方;
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求发送至所述目标数据接收方;
通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息,其中,所述目标计算进程的DMA通信地址信息是所述目标数据接收方基于所述所述目标进程标识查询得到的。
可选地,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的步骤包括:
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程;
通过所述发送方转发进程接收确定存在所述目标计算进程的数据接收方发送的DMA通信地址信息。
可选地,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的步骤包括:
通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息;
若查询成功,则将所述DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
若查询失败,则依据所述目标进程标识,查找所述发送方计算进程对应的目标计算进程的DMA通信地址信息。
可选地,在所述通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息的步骤之前,所述联邦学习中DMA连接建立方法还包括:
通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及对应的发送方DMA通信地址信息广播至各数据接收方,以供所述数据接收方将各所述发送方进程标识以及各所述发送方DMA通信地址信息存放至接收方本地缓存;
接收各所述数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各所述接收方进程标识以及各所述接收方DMA通信地址信息存放至发送方本地缓存。
为实现上述目的,本申请提供一种联邦学习中DMA连接建立方法,所述联邦学习中DMA连接建立方法应用于数据接收方,所述联邦学习中DMA连接建立方法包括:
接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;
通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接。
可选地,在所述通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方的步骤之前,所述联邦学习中DMA连接建立方法还包括:
查询是否存在所述目标进程标识对应的目标计算进程;
若存在,则查询所述目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;
若不存在,则不对所述通信地址请求进行应答。
本申请还提供一种联邦学习中DMA连接建立装置,所述联邦学习中DMA连接建立装置为虚拟装置,且所述联邦学习中DMA连接建立装置应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,所述联邦学习中DMA连接建立装置包括:
标识传递模块,用于生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
地址获取模块,用于通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;
联邦学习中DMA连接建立模块,用于依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接。
可选地,所述地址获取模块模块还用于:
通过所述发送方转发进程依据所述目标进程标识,确定具备所述目标计算进程的目标数据接收方;
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求发送至所述目标数据接收方;
通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息,其中,所述目标计算进程的DMA通信地址信息是所述目标数据接收方基于所述所述目标进程标识查询得到的。
可选地,所述地址获取模块模块还用于:
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程;
通过所述发送方转发进程接收确定存在所述目标计算进程的数据接收方发送的DMA通信地址信息。
可选地,所述地址获取模块模块还用于:
通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息;
若查询成功,则将所述DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
若查询失败,则依据所述目标进程标识,查找所述发送方计算进程对应的目标计算进程的DMA通信地址信息。
可选地,所述数据发送方至少包括一发送方计算进程,所述联邦学习中DMA连接建立装置还用于:
通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及对应的发送方DMA通信地址信息广播至各数据接收方,以供所述数据接收方将各所述发送方进程标识以及各所述发送方DMA通信地址信息存放至接收方本地缓存;
接收各所述数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各所述接收方进程标识以及各所述接收方DMA通信地址信息存放至发送方本地缓存。
本申请还提供一种联邦学习中DMA连接建立装置,所述联邦学习中DMA连接建立装置为虚拟装置,且所述联邦学习中DMA连接建立装置应用于数据接收方,所述联邦学习中DMA连接建立装置包括:
接收模块,用于接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;
反馈模块,用于通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接。
可选地,所述联邦学习中DMA连接建立装置还用于:
查询是否存在所述目标进程标识对应的目标计算进程;
若存在,则查询所述目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;
若不存在,则不对所述通信地址请求进行应答。
本申请还提供一种电子设备,所述电子设备为实体设备,所述电子设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述联邦学习中DMA连接建立方法的程序,所述联邦学习中DMA连接建立方法的程序被处理器执行时可实现如上述的联邦学习中DMA连接建立方法的步骤。
本申请还提供一种可读存储介质,所述可读存储介质上存储有实现联邦学习中DMA连接建立方法的程序,所述联邦学习中DMA连接建立方法的程序被处理器执行时实现如上述的联邦学习中DMA连接建立方法的步骤。
本申请还提供一种产品,所述产品为计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的联邦学习中DMA连接建立方法的步骤。
本申请提供了一种联邦学习中DMA连接建立方法、装置、电子设备、可读存储介质及产品,也即,首先生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程,进而通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息,进而实现了依据设置的目标进程标识,准确获取发送方计算进程对应的目标计算进程的DMA通信地址信息的目的,进而依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接,实现了将所述发送方计算进程与所述目标数据之间的TCP通信方式替换为DMA通信方式的目的,进而依据DMA连接可将发送方计算进程的数据直接传输至目标计算进程,而DMA通信过程中不发生数据拷贝,也不依赖于软件实现,进而克服了由于TCP通信过程中通常会在发送侧以及接收侧发生数据拷贝,并且TCP通信过程中稳定传输的功能实现依赖于软件,实际传输速度远低于物理带宽,网络传输效率低下,进而影响了联邦学习网络传输的效率的技术缺陷,所以,提升了联邦学习网络传输的效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请联邦学习中DMA连接建立方法第一实施例的流程示意图;
图2为本申请联邦学习中DMA连接建立方法中联邦学习网络传输的系统框架图;
图3为本申请联邦学习中DMA连接建立方法第二实施例的流程示意图;
图4为本申请联邦学习中DMA连接建立方法第三实施例的流程示意图;
图5为本申请实施例中联邦学习中DMA连接建立方法涉及的硬件运行环境的设备结构示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
实施例一
本申请实施例提供一种联邦学习中DMA连接建立方法,应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,在本申请联邦学习中DMA连接建立方法的第一实施例中,参照图1,联邦学习中DMA连接建立方法包括:
步骤S10,生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
步骤S20,通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;
步骤S30,依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接。
本申请实现了在发送方计算进程与目标计算进程之间建立DMA连接的目的,进而可将发送方计算进程与目标数据之间的TCP通信方式替换为DMA通信方式,进而依据DMA连接可将发送方计算进程的数据直接传输至目标计算进程,而DMA通信过程中不发生数据拷贝,也不依赖于软件实现,相比于在联邦学习网络中采用TCP通信方式进行数据传输,提升了联邦学习网络的数据传输效率。
其中,步骤S10,生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
在本实施例中,需要说明的是,数据发送方与数据接收方均为联邦学习的参与方,数据发送方至少包括一发送方计算进程,用于执行数据发送方的联邦学习计算任务,数据接收方至少包括一接收方计算进程,用于执行数据接收方的联邦学习计算任务,目标进程标识为与发送方计算进程对应的目标计算进程的唯一身份标识,用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程,其中,目标计算进程为数据接收方中需要接收发送方计算进程所发送的数据的接收方计算进程。
另外地,需要说明的是,联邦学习的参与方中各计算进程并不是均要和对应的目标计算进程进行DMA通信,参与方的计算进程是否需要与对应的目标计算进程进行DMA通信连接由参与方部署的程序算法所决定,而在利用DMA通信进行数据传输之前,需要进行DMA通信的至少一个计算进程需要与对应的目标计算进程建立DMA连接,而建立DMA连接之前需要预先确定好目标进程标识以获取目标计算进程的DMA通信地址。其中,DMA通信地址信息可以为服务器IP地址以及服务端口号。
另外地,需要说明的是,为了保护数据的安全性,执行计算的服务器通常不允许联网,以防止数据发送泄露或者防止外部的网络攻击,也即,发送方计算进程通常无法直接与外界进行联网通信,进而数据发送方中设置有发送方转发进程,发送方计算进程需要将待发送的数据传输至发送方转发进程,然后再发送至外界的数据接收方。
本申请实施例提供一种联邦学习中DMA连接建立方法中,步骤S20,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的一种实现方式具体包括步骤:
步骤A10,通过所述发送方转发进程依据所述目标进程标识,确定具备所述目标计算进程的目标数据接收方;
在本实施例中,具体地,目标进程标识标识了发送方计算进程对应的目标数据接收方的目标计算进程,进而以目标进程标识为索引,通过所述发送方转发进程查询对应的数据接收方作为具备目标计算进程的目标数据接收方。
步骤A20,通过发送方转发进程将携带目标进程标识的通信地址请求发送至目标数据接收方;
步骤A30,通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息,其中,所述目标计算进程的DMA通信地址信息是所述目标数据接收方基于所述目标进程标识查询得到的。
在本实施例中,需要说明的是,发送方转发进程与接收方转发进程之间可用TCP通信方式进行数据传输。
具体地,通过发送方转发进程将携带目标进程标识的通信地址请求发送至目标数据接收方的接收方转发进程,进而目标数据接收方通过接收方转发进程,查询目标进程标识对应的目标计算进程,并获取目标计算进程对应的DMA通信地址信息,进而目标数据接收方通过接收方转发进程将DMA通信地址信息反馈至数据发送方的发送方转发进程,进一步地,数据发送方的计算进程通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息。
进一步地,需要说明的是,在步骤A10至步骤A30中,目标进程标识标识了发送方计算进程对应的目标数据接收方的目标计算进程,进而数据发送方可利用目标进程标识确定需要将目标进程标识发送至哪个数据接收方,而目标数据接收方基于目标进程标识可进一步确定哪个接收方计算进程为目标计算进程,进而数据接收方即可将目标计算进程的DMA通信地址信息准确地反馈至数据发送方,实现了准确地实时解析DMA通信地址的目的,为建立DMA连接奠定了基础。
除此之外,步骤S20,通过发送方转发进程获取目标进程标识对应的目标计算进程的DMA通信地址信息的另一种实现方式具体包括步骤:
步骤B10,通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程;
在本实施例中,目标进程标识标识了发送方计算进程对应的目标计算进程,而没有标识该目标计算进程所在的数据接收方,通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程,具体地,将携带目标进程标识的通信地址请求广播至全部数据接收方,进而每一数据接收方接收携带目标进程标识的通信地址请求,并以目标进程标识为索引,查询是否存在发送方计算进程对应的目标计算进程。
步骤B20,通过所述发送方转发进程接收确定存在所述目标计算进程的数据接收方发送的DMA通信地址信息。
在本实施例中,需要说明的是,若数据接收方确定存在目标进程标识对应的目标计算进程,则通过接收方转发进程将目标计算进程对应的DMA通信地址反馈至数据发送方的发送方转发进程,若数据接收方确定不存在目标进程标识对应的目标计算进程,则数据接收方不对通信地址请求作出应答。
另外地,需要说明的是,若数据接收方确定存在目标进程标识对应的目标计算进程,除了仅将目标计算进程的DMA通信地址反馈给作为本次数据发送方的联邦学习参与方之外,还可以通过数据接收方转发进程获取目标计算进程的DMA通信地址,并将DMA通信地址广播至各其他联邦学习参与方,进而作为本次数据发送方的联邦学习参与方可依据DMA通信地址,建立与数据接收方的DMA连接,而不作为本次数据发送方的其他联邦学习参与方可将DMA通信地址存储至本地缓存,进而当不作为本次数据发送方的其他联邦学习参与方需要中的计算进程需要与目标计算进程建立DMA连接时,则可直接在本地缓存中提取对应的DMA通信地址信息。
另外地,需要说明的是,在步骤B10至步骤B20中,数据发送方将目标进程标识广播至数据接收方后,数据接收方即可基于目标进程标识,确定是否需要应答携带目标进程标识的通信地址请求,进而数据接收方即可将DMA通信地址信息准确地反馈至数据发送方,实现了准确地实时解析DMA通信地址的目的,为建立DMA连接奠定了基础,且相比于步骤A10至步骤A30中的实施方式,将查询目标进程标识对应的目标计算进程在哪个数据接收方的过程由数据发送方分散至各数据接收方,进而当数据接收方的数量较多时,数据发送方依据目标进程标识查询对应的目标计算进程在哪个数据接收方将产生比较高的耗时,而通过将查询目标进程标识对应的目标计算进程在哪个数据接收方的过程由数据发送方分散至各数据接收方,可降低查询耗时,进而提升了建立DMA连接的效率,同时也释放了数据发送方的设备资源。
进一步地,步骤S30,依据DMA通信地址信息,建立发送方计算进程与目标计算进程之间的DMA连接的具体实现方式包括:依据DMA通信地址信息中的服务器IP地址以及服务端口,通过发送方计算进程向数据接收方的目标计算进程发送DMA链接请求,建立发送方计算进程与目标计算进程之间的DMA连接,
如图2所示为本申请实施例中联邦学习网络传输的系统框架图,参与方1为数据发送方,参与方2为数据接收方,联邦学习计算进程为计算进程,参与方1与参与方2之间通过高性能网卡进行DMA通信,另外地,当联邦学习框架为异构框架时,转发进程可部署于CPU中,联邦学习计算进程可部署于异常处理器中,其中,异构处理器可以为CPU以及FPGA等。
本申请实施例提供了一种联邦学习中DMA连接建立方法,也即,首先获取发送方计算进程对应的目标进程标识,并将目标进程标识由发送方计算进程传递至对应的发送方转发进程,进而通过发送方转发进程获取目标进程标识对应的目标计算进程的DMA通信地址信息,进而实现了依据设置的目标进程标识,准确获取发送方计算进程对应的目标计算进程的DMA通信地址信息的目的,进而依据DMA通信地址信息,建立发送方计算进程与目标计算进程之间的DMA连接,实现了将发送方计算进程与目标数据之间的TCP通信方式替换为DMA通信方式的目的,进而依据DMA连接可将发送方计算进程的数据直接传输至目标计算进程,而DMA通信过程中不发生数据拷贝,也不依赖于软件实现,进而克服了由于TCP通信过程中通常会在发送侧以及接收侧发生数据拷贝,并且TCP通信过程中稳定传输的功能实现依赖于软件,实际传输速度远低于物理带宽,网络传输效率低下,进而影响了联邦学习网络传输的效率的技术缺陷,所以,提升了联邦学习网络传输的效率。
实施例二
基于本申请第一实施例,在本申请另一实施例中,上述实施例中的步骤S20,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的实现方式还可以包括:
步骤S21,通过发送方转发进程在本地缓存中查询目标进程标识对应的DMA通信地址信息;
步骤S22,若查询成功,则将DMA通信地址信息由发送方转发进程反馈至发送方计算进程;
步骤S23,若查询失败,则依据所述目标进程标识,查找所述发送方计算进程对应的目标计算进程的DMA通信地址信息。
下面结合图3对这种情况进行介绍。其中,本实施例中,与上述实施例一相同或相似的内容,可以参考上文介绍,后续不再赘述。
在本实施例中,需要说明的是,在执行步骤S21之前,联邦学习的每一参与方均需要将本地的各计算进程分别对应的进程标识和DMA通信地址信息广播至其他所有参与方,且同时也接收其他参与方广播的与其包含的计算进程所分别对应的本地进程标识和DMA通信地址信息,进而数据发送方可将各其他参与方包含的计算进程对应的进程标识以及DMA通信地址信息存放至本地缓存,而各其他参与方对于数据发送方来说即可作为数据接收方。即,在通过发送方转发进程在本地缓存中查询目标进程标识对应的DMA通信地址信息的步骤之前,联邦学习中DMA连接建立方法还包括:
步骤C10,通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及发送方DMA通信地址信息广播至全部数据接收方(其他参与方),以供所述数据接收方(其他参与方)将各所述发送方进程标识以及各所述发送方DMA通信地址信息对应存放至接收方本地缓存;
步骤C20,接收各数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各接收方进程标识以及各接收方DMA通信地址信息对应存放至发送方本地缓存。
在本实施例中,需要说明的是,对于联邦学习中的每一参与方,若将某参与方作为数据发送方,则其他参与方均可作为数据发送方对应的数据接收方,若将某参与方作为数据接收方,则其他参与方均可作为数据接收方对应的数据发送方。
另外地,需要说明的是,发送方进程标识为与发送方计算进程一一对应的唯一身份标识,发送方DMA通信地址信息为与发送方计算进程一一对应的DMA通信地址信息,接收方进程标识为与接收方计算进程一一对应的唯一身份标识,接收方DMA通信地址信息为与接收方计算进程一一对应的DMA通信地址信息。此外,接收方进程标识、接收方DMA通信地址信息、发送方进程标识和发送方DMA通信地址信息等概念中的“发送方”和“接收方”仅是为了方便描述在交互场景中各个参与方互相广播、存储其他参与方包含计算进程的进程标识和DMA通信地址信息的过程,并不作具体发送、接收功能的限制,并且,本领域技术人员应当知晓的是,接收方进程标识和发送方进程标识被存储到任一参与方本地之后,其都是被存储为进程标识,而不会标注发送方、接收方这一过程辨别概念,同样的,接收方DMA通信地址信息、发送方DMA通信地址信息存储到任一参与方本地之后,其都是被与进程标识一一对应地存储为DMA通信地址信息,而不会标注发送方、接收方这一过程辨别概念。
数据发送方将各接收方进程标识以及各接收方DMA通信地址信息存放至发送方本地缓存的步骤包括:
将各进程标识以及各进程标识对应的接收方DMA通信地址信息以键值对的形式存储至发送方本地缓存。
数据接收方将各发送方进程标识以及各发送方DMA通信地址信息存放至接收方本地缓存的步骤包括:
将各进程标识以及各进程标识对应的发送方DMA通信地址信息以键值对的形式存储至接收方本地缓存。
在本实施例中,若查询成功,则证明数据发送方预先缓存的进程标识和DMA通信地址信息中包括目标进程标识及其对应的DMA通信地址信息,进而将目标进程标识对应的DMA通信地址信息由发送方转发进程反馈至发送方计算进程,若查询失败,则证明数据发送方并未预先缓存目标进程标识及其对应的DMA通信地址信息,进而依据所述目标进程标识,通过发送方转发进程确定拥有所述目标进程标识对应的目标计算进程的目标数据接收方,并向所述目标数据接收方请求目标计算进程对应的DMA通信地址信息;或通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程,进而拥有所述目标进程标识的数据接收方响应所述通信地址请求,将所述目标计算进程对应的进程标识反馈至数据发送方。其中,目标数据接收方为具备该目标进程标识对应的目标计算进程的数据接收方,具体实现方法可参照步骤A10至步骤A30以及步骤B10至步骤B20中的具体实施内容,在此不再赘述。
本申请实施例提供了一种联邦学习中DMA连接建立方法,也即,首先通过发送方转发进程在本地缓存中查询目标进程标识对应的DMA通信地址信息,进而若查询成功,则将DMA通信地址信息由发送方转发进程反馈至发送方计算进程,所以,本申请实施例通过在本地缓存中预先存放各目标进程标识对应的DMA通信地址信息,可避免在获取发送方计算进程对应的DMA通信地址信息时,数据发送方与数据接收方之间的数据交互过程,进而提升了联邦学习中DMA连接建立的效率,若查询失败,则依据目标进程标识,向发送方计算进程对应的目标数据接收方请求对应的DMA通信地址信息,或通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程,也即,当没有在本地缓存中预先存放各目标进程标识对应的DMA通信地址信息时,则直接向目标计算进程所在的数据接收方请求对应的DMA通信地址信息,避免了当没有在本地缓存中预先存放各目标进程标识对应的DMA通信地址信息时,无法获取到DMA通信地址信息的情况发生,进而可保证总能以最快的速度准确获取目标进程标识对应的DMA通信地址信息,所以,提升联邦学习网络传输的效率。
实施例三
与上述实施例一和实施例二相对应的,本申请实施例还提供一种应用于数据接收方的联邦学习中DMA连接建立方法,其中,本实施例中,与实施例一或实施例二相同或相应的内容,请参考上文介绍,后续不再赘述。参照图4,在本申请实施例中提供的联邦学习中DMA连接建立方法,应用于数据接收方,该联邦学习中DMA连接建立方法包括:
步骤D10,接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;
步骤D20,通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接。
在本实施例中,需要说明的是,通信地址请求为数据发送方向数据接收方请求DMA通信地址的请求,目标进程标识为发送方计算进程对应的目标计算进程的唯一身份标识,用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程,其中,目标计算进程为数据接方中需要接收发送方计算进程所发送的数据的接收方计算进程。
接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程的目标进程标识,具体地,通过接收方转发进程接收数据发送方的发送方转发进程发送的携带目标进程标识的通信地址请求,其中,目标进程标识由数据发送方的发送方计算进程产生,并传递至发送方转发进程,其中,数据发送方向数据接收方发送携带目标进程标识的通信地址请求的具体方式步骤S10至步骤S20中的具体内容,在此不再赘述。
具体地,通过接收方转发进程在数据接收方的各接收方计算进程中查询是否包含目标进程标识对应的目标计算进程,并获取目标计算进程对应的DMA通信地址信息,进而通过接收方转发进程将DMA通信地址信息反馈至数据发送方的发送方转发进程,再由发送方转发进程将DMA通信地址信息传递给发送方计算进程,进而数据发送方的发送方计算进程依据DMA通信地址信息,建立发送方计算进程与目标计算进程之间的DMA连接,其中,数据发送方建立DMA连接的过程具体可参照步骤S30中的内容,在此不再赘述。
其中,在通过接收方转发进程将目标进程标识对应的目标计算进程的DMA通信地址信息反馈至数据发送方的步骤之前,联邦学习中DMA连接建立方法还包括:
步骤E10,查询是否存在目标进程标识对应的目标计算进程;
在本实施例中,具体地,查询是否存在目标进程标识对应的接收方计算进程,若存在目标进程标识对应的接收方计算进程,则将目标进程标识对应的接收方计算进程作为目标计算进程,若存在目标进程标识对应的接收方计算进程,则判定不存在目标进程标识对应的目标计算进程。
步骤E20,若存在,则查询目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将目标进程标识对应的目标计算进程的DMA通信地址信息反馈至数据发送方;
步骤E30,若不存在,则不对通信地址请求进行应答。
在本实施例中,若存在目标进程标识对应的目标计算进程,则证明当前数据接收方确定存在一个计算进程用于接收发送方计算进程计算得到的数据,该计算进程即为目标计算进程,进而查询目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将目标进程标识对应的目标计算进程的DMA通信地址信息反馈至数据发送方,以供数据发送方建立发送方计算进程与目标计算进程之间的DMA连接;若不存在目标进程标识对应的目标计算进程,则证明当前数据接收方不存在用于接收发送方计算进程产生的数据的计算进程,进而不对通信地址请求进行应答。
本申请实施例提供了一种联邦学习中DMA连接建立方法,也即,首先接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识,进而通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接,进而实现了通过解析目标计算进程的DMA通信地址,将发送方计算进程与目标数据之间的TCP通信方式替换为DMA通信方式的目的,进而依据DMA连接可将发送方计算进程的数据直接传输至目标计算进程,而DMA通信过程中不发生数据拷贝,进而克服了由于TCP通信过程中通常会在发送侧以及接收侧发生数据拷贝,并且TCP通信过程中稳定传输的功能实现依赖于软件,实际传输速度远低于物理带宽,网络传输效率低下,进而影响了联邦学习网络传输的效率的技术缺陷,所以,提升了联邦学习网络传输的效率。
实施例四
本申请实施例提供一种电子设备,电子设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施例一至实施例三中任一实施例提供的联邦学习中DMA连接建立方法。
下面参考图5,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM)中的程序或者从存储装置加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有电子设备操作所需的各种程序和数据。处理装置、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
通常,以下系统可以连接至I/O接口:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信装置。通信装置可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种系统的电子设备,但是应理解的是,并不要求实施或具备所有示出的系统。可以替代地实施或具备更多或更少的系统。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从ROM被安装。在该计算机程序被处理装置执行时,执行本公开实施例的方法中限定的上述功能。
本申请提供的电子设备,采用上述实施例一、实施例二或者实施例三中的联邦学习中DMA连接建立方法,解决联邦学习网络传输效率低的技术问题。与现有技术相比,本申请实施例提供的电子设备的有益效果与上述实施例一提供的联邦学习中DMA连接建立方法的有益效果相同,且该电子设备中的其他技术特征与上一实施例方法公开的特征相同,在此不做赘述。
实施例五
本申请实施例还提供一种联邦学习中DMA连接建立装置,联邦学习中DMA连接建立装置应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,联邦学习中DMA连接建立装置包括:
标识传递模块,用于生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
地址获取模块,用于通过发送方转发进程获取目标进程标识对应的目标计算进程的DMA通信地址信息;
联邦学习中DMA连接建立模块,用于依据DMA通信地址信息,建立发送方计算进程与目标计算进程之间的DMA连接。
可选地,地址获取模块模块还用于:
通过所述发送方转发进程依据所述目标进程标识,确定具备所述目标计算进程的目标数据接收方;
通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息,其中,所述目标计算进程的DMA通信地址信息是所述目标数据接收方基于所述所述目标进程标识查询得到的。
可选地,地址获取模块模块还用于:
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程;
通过所述发送方转发进程接收确定存在所述目标计算进程的数据接收方发送的DMA通信地址信息。
可选地,地址获取模块模块还用于:
通过发送方转发进程在本地缓存中查询目标进程标识对应的DMA通信地址信息;
若查询成功,则将DMA通信地址信息由发送方转发进程反馈至发送方计算进程;
若查询失败,则依据目标进程标识,向发送方计算进程对应的目标数据接收方请求对应的DMA通信地址信息。
可选地,数据发送方至少包括一发送方计算进程,联邦学习中DMA连接建立装置还用于:
通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及发送方DMA通信地址信息广播至各数据接收方,以供所述数据接收方将各所述发送方进程标识以及各所述发送方DMA通信地址信息存放至接收方本地缓存;
接收各数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各接收方进程标识以及各接收方DMA通信地址信息存放至发送方本地缓存。
本申请联邦学习中DMA连接建立装置的具体实施方式和有益效果与上述联邦学习中DMA连接建立方法各实施例基本相同,在此不再赘述。
实施例六
本申请实施例还提供一种联邦学习中DMA连接建立装置,联邦学习中DMA连接建立装置应用于数据接收方,联邦学习中DMA连接建立装置包括:
接收模块,用于接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;
反馈模块,用于通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接。
可选地,联邦学习中DMA连接建立装置还用于:
查询是否存在目标进程标识对应的目标计算进程;
若存在,则查询目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将目标进程标识对应的目标计算进程的DMA通信地址信息反馈至数据发送方;
若不存在,则不对通信地址请求进行应答。
本申请联邦学习中DMA连接建立装置的具体实施方式和有益效果与上述联邦学习中DMA连接建立方法各实施例基本相同,在此不再赘述。
实施例七
本申请还提供一种产品,产品为计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如上述的联邦学习中DMA连接建立方法的步骤。
本申请计算机程序产品具体实施方式和有益效果与上述联邦学习中DMA连接建立方法各实施例基本相同,在此不再赘述。
实施例八
本申请实施例提供了一种可读存储介质,且可读存储介质存储有一个或者一个以上程序,一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项的联邦学习中DMA连接建立方法的步骤。
本申请实施例提供的计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、系统或者器件使用或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。
上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。
或者,上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定,例如,联邦学习中DMA连接建立模块还可以被描述为“用于依据DMA通信地址信息,建立发送方计算进程与目标计算进程之间的DMA连接的模块”。
本申请可读存储介质具体实施方式和有益效果与上述联邦学习中DMA连接建立方法各实施例基本相同,在此不再赘述。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利处理范围内。

Claims (10)

1.一种联邦学习中DMA连接建立方法,其特征在于,应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,所述联邦学习中DMA连接建立方法包括:
生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;
依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接;
其中,所述通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息的步骤包括:
通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息;
若查询成功,则将所述目标进程标识对应的DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
若查询失败,则依据所述目标进程标识,向所述发送方计算进程对应的数据接收方请求所述目标进程标识对应的DMA通信地址信息;
其中,在所述通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息的步骤之前,所述联邦学习中DMA连接建立方法还包括:
通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及发送方DMA通信地址信息广播至各数据接收方,以供所述数据接收方将各所述发送方进程标识以及各所述发送方DMA通信地址信息对应存放至接收方本地缓存;
接收各所述数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各所述接收方进程标识以及各所述接收方DMA通信地址信息对应存放至发送方本地缓存。
2.如权利要求1所述联邦学习中DMA连接建立方法,其特征在于,所述依据所述目标进程标识,向所述发送方计算进程对应的数据接收方请求所述目标进程标识对应的DMA通信地址信息的步骤包括:
通过所述发送方转发进程依据所述目标进程标识,确定具备所述目标计算进程的目标数据接收方;
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求发送至所述目标数据接收方;
通过所述发送方转发进程接收所述目标数据接收方发送的DMA通信地址信息,其中,所述目标计算进程的DMA通信地址信息是所述目标数据接收方基于所述目标进程标识查询得到的。
3.如权利要求1所述联邦学习中DMA连接建立方法,其特征在于,所述依据所述目标进程标识,向所述发送方计算进程对应的数据接收方请求所述目标进程标识对应的DMA通信地址信息的步骤包括:
通过所述发送方转发进程将携带所述目标进程标识的通信地址请求广播至全部数据接收方,以供各所述数据接收方确定是否存在所述目标进程标识对应的目标计算进程;
通过所述发送方转发进程接收确定存在所述目标计算进程的数据接收方发送的DMA通信地址信息。
4.一种联邦学习中DMA连接建立方法,其特征在于,应用于数据接收方,所述联邦学习中DMA连接建立方法包括:
接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;其中,所述数据发送方在通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息失败的情况下,依据所述目标进程标识,向所述数据接收方请求所述目标进程标识对应的DMA通信地址信息;
通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接;
其中,所述联邦学习中DMA连接建立方法还包括:
通过所述接收方转发进程将各所述接收方计算进程的接收方进程标识以及接收方DMA通信地址信息广播至各全部数据发送方,以供所述数据发送方将各所述接收方进程标识以及各所述接收方DMA通信地址信息对应存放至发送方本地缓存,并在通过所述发送方转发进程在所述数据发送方本地缓存中查询所述目标进程标识对应的DMA通信地址信息成功的情况下,将所述目标进程标识对应的DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
接收各所述数据发送方发送的发送方进程标识以及对应的发送方DMA通信地址信息,并将各所述发送方进程标识以及各所述发送方DMA通信地址信息对应存放至接收方本地缓存。
5.如权利要求4所述联邦学习中DMA连接建立方法,其特征在于,在所述通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方的步骤之前,所述联邦学习中DMA连接建立方法还包括:
查询是否存在所述目标进程标识对应的目标计算进程;
若存在,则查询所述目标计算进程对应的DMA通信地址信息,并执行步骤:通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;
若不存在,则不对所述通信地址请求进行应答。
6.一种联邦学习中DMA连接建立装置,其特征在于,应用于数据发送方,所述数据发送方包括至少一个发送方计算进程,所述联邦学习中DMA连接建立装置包括:
标识传递模块,用于生成当前需要建立DMA连接的发送方计算进程的目标进程标识,并传递至发送方转发进程;其中,所述目标进程标识用于指定需要与所述发送方计算进程建立DMA连接的目标计算进程;
地址获取模块,用于通过所述发送方转发进程获取所述目标进程标识对应的目标计算进程的DMA通信地址信息;
联邦学习中DMA连接建立模块,用于依据所述DMA通信地址信息,建立所述发送方计算进程与所述目标计算进程之间的DMA连接;
其中,所述地址获取模块还用于:
通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息;
若查询成功,则将所述目标进程标识对应的DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
若查询失败,则依据所述目标进程标识,向所述发送方计算进程对应的数据接收方请求所述目标进程标识对应的DMA通信地址信息;
其中,所述联邦学习中DMA连接建立装置还用于:
通过所述发送方转发进程将各所述发送方计算进程的发送方进程标识以及发送方DMA通信地址信息广播至各数据接收方,以供所述数据接收方将各所述发送方进程标识以及各所述发送方DMA通信地址信息对应存放至接收方本地缓存;
接收各所述数据接收方发送的接收方进程标识以及对应的接收方DMA通信地址信息,并将各所述接收方进程标识以及各所述接收方DMA通信地址信息对应存放至发送方本地缓存。
7.一种联邦学习中DMA连接建立装置,其特征在于,用于数据接收方,所述联邦学习中DMA连接建立装置包括:
接收模块,用于接收数据发送方发送的通信地址请求,所述通信地址请求携带发送方计算进程产生的目标进程标识;其中,所述数据发送方在通过所述发送方转发进程在本地缓存中查询所述目标进程标识对应的DMA通信地址信息失败的情况下,依据所述目标进程标识,向所述数据接收方请求所述目标进程标识对应的DMA通信地址信息;
反馈模块,用于通过接收方转发进程将所述目标进程标识对应的目标计算进程的DMA通信地址信息反馈至所述数据发送方;其中,所述目标计算进程的DMA通信地址信息用于所述发送方计算进程与所述目标计算进程之间建立DMA连接;
其中,所述联邦学习中DMA连接建立装置还用于:
通过所述接收方转发进程将各所述接收方计算进程的接收方进程标识以及接收方DMA通信地址信息广播至各全部数据发送方,以供所述数据发送方将各所述接收方进程标识以及各所述接收方DMA通信地址信息对应存放至发送方本地缓存,并在通过所述发送方转发进程在所述数据发送方本地缓存中查询所述目标进程标识对应的DMA通信地址信息成功的情况下,将所述目标进程标识对应的DMA通信地址信息由所述发送方转发进程反馈至所述发送方计算进程;
接收各所述数据发送方发送的发送方进程标识以及对应的发送方DMA通信地址信息,并将各所述发送方进程标识以及各所述发送方DMA通信地址信息对应存放至接收方本地缓存。
8.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至3或者4至5中任一项所述联邦学习中DMA连接建立方法。
9.一种可读存储介质,其特征在于,所述可读存储介质上存储有实现联邦学习中DMA连接建立方法的程序,所述实现联邦学习中DMA连接建立方法的程序被处理器执行以实现如权利要求1至3或者4至5中任一项所述联邦学习中DMA连接建立方法的步骤。
10.一种产品,所述产品为计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3或者4至5中任一项所述联邦学习中DMA连接建立方法的步骤。
CN202111087461.3A 2021-09-16 2021-09-16 联邦学习中dma连接建立方法 Active CN113900976B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111087461.3A CN113900976B (zh) 2021-09-16 2021-09-16 联邦学习中dma连接建立方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111087461.3A CN113900976B (zh) 2021-09-16 2021-09-16 联邦学习中dma连接建立方法

Publications (2)

Publication Number Publication Date
CN113900976A CN113900976A (zh) 2022-01-07
CN113900976B true CN113900976B (zh) 2024-05-03

Family

ID=79028455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111087461.3A Active CN113900976B (zh) 2021-09-16 2021-09-16 联邦学习中dma连接建立方法

Country Status (1)

Country Link
CN (1) CN113900976B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114547612B (zh) * 2022-02-23 2024-08-02 安天科技集团股份有限公司 一种进程查询方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062493A (zh) * 2019-12-20 2020-04-24 深圳前海微众银行股份有限公司 基于公共数据的纵向联邦方法、装置、设备及介质
CN112445735A (zh) * 2020-11-20 2021-03-05 深圳致星科技有限公司 一种联邦学习数据传输方法、计算机设备、系统及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062493A (zh) * 2019-12-20 2020-04-24 深圳前海微众银行股份有限公司 基于公共数据的纵向联邦方法、装置、设备及介质
CN112445735A (zh) * 2020-11-20 2021-03-05 深圳致星科技有限公司 一种联邦学习数据传输方法、计算机设备、系统及存储介质

Also Published As

Publication number Publication date
CN113900976A (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
US10951395B2 (en) Data fetching in data exchange networks
CN113364795B (zh) 一种数据传输方法和代理服务器
CN109729115A (zh) 实现分布式计算的方法、装置、代理服务器、终端设备
CN115174558B (zh) 云网端一体化身份认证方法、装置、设备及存储介质
CN113900976B (zh) 联邦学习中dma连接建立方法
CN104683403A (zh) 用于资源共享的方法、资源服务器和系统
CN114938395A (zh) 服务响应方法、装置、设备及存储介质
CN113438256A (zh) 一种基于双层ssl的数据传输方法、系统和代理服务器
CN109981778B (zh) 内容分发网络的服务实现方法、装置、设备及存储介质
US11895196B1 (en) Efficient update mechanism in IoT event driven architectures
CN113923167B (zh) 联邦学习中数据传输优化方法
CN116032691B (zh) 靶场互联互通方法、电子设备及可读存储介质
CN110178353A (zh) 业务处理方法、云服务器和终端设备
CN111787048A (zh) 一种终端设备的连接方法、调度服务器及物联网系统
CN115412329B (zh) 一种用于物联网的信息处理方法及相关装置
CN109831467B (zh) 数据传输方法、设备及系统
CN113763646B (zh) 设备控制方法、装置、电子设备和计算机可读介质
CN112257039B (zh) 身份属性添加方法、装置和电子设备
CN114048498A (zh) 数据共享方法、装置、设备及介质
CN113746909A (zh) 网络连接方法、装置、电子设备和计算机可读存储介质
KR101544486B1 (ko) 클라우드 컴퓨팅 환경에서의 자동 개인 가상화 생성 방법 및 장치
CN113452670B (zh) 基于sdn网络的网络诈骗封堵方法、装置、设备及介质
CN111752625A (zh) 用于接口mock的方法和装置
CN115086425B (zh) 消息传输方法、装置、程序产品、介质及电子设备
CN114745367B (zh) 数据传输方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant