掌桥专利:专业的专利平台
掌桥专利
首页

分布式机器学习系统中服务器节点之间的通信方法和装置

文献发布时间:2023-06-19 12:19:35


分布式机器学习系统中服务器节点之间的通信方法和装置

技术领域

本申请涉及计算机技术领域,具体涉及一种分布式机器学习系统中服务器节点之间的通信方法、装置、电子设备及存储设备,本申请还涉及一种分布式机器学习系统。

背景技术

随着机器学习与人工智能技术不断发展,其开始在不同领域不同行业中扮演着越来越重要的角色。然而,机器学习在与实际应用场景相结合时,不可避免地面临着海量训练数据、问题求解空间复杂等诸多挑战。为此,其通常的解决方案是采用更为复杂庞大的机器学习模型,并通过构建分布式机器学习系统来进行模型训练。分布式机器学习的核心思想是采用计算机集群的方式,将海量数据或复杂模型划分到不同机器(工作节点)上同时进行训练,彼此之间进行相互协作,加快整体模型的训练速度。参数服务器(Parameter Server,PS)架构是常见的分布式机器学习系统,在参数服务器架构中,其主要分为训练服务器节点及参数服务器节点两类,训练服务器节点进行模型的训练,参数服务器节点进行全局模型参数的更新与维护,每个训练服务器节点与所有的参数服务器节点建立TCP连接,单次训练过程大致如下:训练节点读取小批量本地数据,选择对应的参数服务器节点拉取最新的模型参数进行训练,然后将训练后的结果(模型参数)更新到对应的参数服务器节点。

现实的业务模型越来越复杂,训练数据的规模也越来越大,这直接导致了单个模型需要更多的训练服务器节点来进行协同训练。训练服务器节点数量的增加直接导致了单个参数服务器节点需要维护的TCP连接数的激增。对于单个TCP连接,参数服务器需要消耗系统资源来进行连接状态的管理与维护、消息事件的处理等待。因此,大量的TCP连接必然会严重消耗参数服务器节点的资源,降低了系统的可扩展性,同时也会影响了整体的性能。现有的技术主要是从端系统上来进行优化,如参数服务器的扩容等等。然而,这样的方式成本必然很高,同时也无法从根本上缓解参数服务器连接管理的压力。

本发明针对现有分布式机器学习系统中服务器节点连接过多导致的可扩展性差、效率低的问题。

发明内容

本申请提供一种分布式机器学习系统中服务器节点之间的通信方法、装置、电子设备和存储设备,以解决现有技术存在的分布式机器学习系统中服务器节点连接过多导致的可扩展性差、效率低的问题。

本申请提供一种分布式机器学习系统中服务器节点之间的通信方法,包括:

根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

可选的,所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

可选的,所述根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表,包括:

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的第一交换机的标识信息;

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的训练服务器节点的标识信息;

根据所述第一交换机的标识信息以及所述训练服务器节点的标识信息,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

可选的,所述根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接,包括:

根据所述训练服务器节点的通信请求,获得所述通信请求中指示的目标参数服务器的标识信息;

根据所述目标参数服务器的标识信息,查询所述映射表,获得与所述目标参数服务器的第三通信连接。

可选的,所述通信方法,还包括:

分析与所述分布式机器学习系统中参数服务器节点、训练服务器节点以及第一交换机之间的物理连接信息,获得所述分布式机器学习系统的拓扑关系。

可选的,所述第一通信连接和所述第二通信连接均为传输控制协议连接。

可选的,所述通信方法,还包括:

利用所述第三通信连接,实现所述服务器节点与所述目标服务器节点之间的通信。

本申请提供一种通信装置,包括:

第一建立单元,用于根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

第二建立单元,用于向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

创建单元,用于根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

获得单元,用于根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

可选的,所述第一建立单元中的所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

可选的,所述第一建立单元,具体用于:

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的第一交换机的标识信息;

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的训练服务器节点的标识信息;

根据所述第一交换机的标识信息以及所述训练服务器节点的标识信息,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

可选的,所述第一建立单元,还用于:

根据所述训练服务器节点的通信请求,获得所述通信请求中指示的目标参数服务器的标识信息;

根据所述目标参数服务器的标识信息,查询所述映射表,获得与所述目标参数服务器的第三通信连接。

可选的,所述通信装置还包括分析单元,具体用于:

分析与所述分布式机器学习系统中参数服务器节点、训练服务器节点以及第一交换机之间的物理连接信息,获得所述分布式机器学习系统的拓扑关系。

可选的,所述通信装置中,所述第一通信连接和所述第二通信连接均为传输控制协议连接。

可选的,所述的通信装置,还包括实现单元,具体用于:

利用所述第三通信连接,实现所述服务器节点与所述目标服务器节点之间的通信。

本申请还提供一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理方法的程序,该设备通电并通过所述处理器运行该数据处理方法的程序后,执行下述步骤:

根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

本申请提供一种存储设备,存储有数据处理方法的程序,该程序被处理器运行,执行下述步骤:包括:

根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

本申请提供一种分布式机器学习系统中服务器节点之间的通信方法,包括:

获取接入交换机发出的连接请求;

根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

可选的,所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

本申请还提供一种通信装置,包括:

获取单元,用于获取接入交换机发出的连接请求;

第三建立单元,用于根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

第二创建单元,用于根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

第二获得单元,用于根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

本申请还提供一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理方法的程序,该设备通电并通过所述处理器运行该数据处理方法的程序后,执行下述步骤:

获取接入交换机发出的连接请求;

根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

本申请还提供一种存储设备,存储有数据处理方法的程序,该程序被处理器运行,执行下述步骤:包括:

获取接入交换机发出的连接请求;

根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

本申请还提供一种分布式机器学习系统,包括接入交换机和第一交换机;

所述接入交换机用于,根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接

所述第一交换机用于,获取接入交换机发出的连接请求;根据所述连接请求,建立与所述接入交换机之间的第四通信连接;根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接;

可选的,所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

与现有技术相比,本申请具有以下优点:

本申请提供一种分布式机器学习系统中服务器节点之间的通信方法,根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。采用本申请提供的方法,降低了分布式机器学习系统中参数服务器以及训练服务器的连接数,从而改善了现有分布式机器学习系统中,服务器节点连接过多导致的可扩展性差、效率低的问题。

附图说明

图1是本申请第一实施例提供的一种分布式机器学习系统的示意图。

图2是本申请第一实施例提供的一种分布式机器学习系统的工作流程图。

图3是本申请第一实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法的流程图。

图4是本申请第二实施例提供的一种通信装置的示意图。

图5是本申请第五实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法的流程图。

图6是本申请第六实施例提供的一种通信装置的示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。

为了使本领域的技术人员更好的理解本申请方案,首先对本申请的具体应用场景实施例进行详细描述。

图1中提供了分布式机器学习系统的示意图,其中,包括汇聚交换机(即第一交换机)(PSW)、接入交换机(ASW),以及服务器节点,其包括参数服务器节点和训练服务器节点。

在图1中,所有的参数服务器节点与对应的接入交换机建立TCP(传输控制协议)连接(如图1中的连接L21,L22),所有的训练节点与其对应的接入交换机建立TCP连接(如图1中的连接L22-L29);每个接入交换机与所有的第一交换机建立连接(如图1中的L31-L33以及L41-L43);每个交换机(ASW/PSW)根据连接拓扑初始化一个映射表(包含服务器节点和对应的TCP连接),该映射表表明到目的服务器节点需要选择哪一个TCP连接。

在上述初始化进程完成后,开始执行数据交互过程。下面以图2为例,详细说明分布式机器学习系统的数据交互过程。首先,执行步骤S201,开始训练。在步骤S201中,训练节点服务器根据特征参数计算出参数服务器节点的标识信息,即需要与哪一个/一些参数服务器进行通信。接着,执行步骤S202,训练服务器节点向参数服务器节点发送数据。在步骤S202中,训练服务器节点将计算出的参数服务器节点的标识作为目的服务器节点的标识,与本身的训练服务器的标识一同封装成报文,发送到与其建立TCP连接的接入交换机。然后,执行步骤S203,交换机根据目标服务器节点选择TCP连接传输。在步骤S203中,接入交换机收到报文并解析,获取目的服务器节点的标识,根据配置的映射表选择对应的TCP连接传输报文。接下来,执行步骤S204,判断当前节点是否为交换机。如果当前节点为交换机,则转向步骤S203。如果当前节点不是交换机,则执行步骤S205,判断当前节点是否为参数服务器节点。如果当前节点为参数服务器,则执行步骤S206,参数服务器节点处理数据并传输结果。步骤S206中,参数服务器解析报文,获得对应的参数服务器并进行处理,然后以训练服务器的标识为目的节点标识,将处理的结果和自己的参数服务器节点的标识封装成报文,并发送到其接入交换机,转向步骤S203。如果当前节点不为参数服务器节点,则执行步骤S207,训练服务器节点处理收到的结果。在执行步骤S207后,执行步骤S208,判断训练是否结束。如果训练未结束,则跳转到步骤S202,否则跳转到步骤S209,即训练结束。

假设图1系统中的训练服务器节点的个数为m,参数服务器节点的个数为n,接入交换机的个数为k,第一交换机的个数为t。在未采用本申请第一实施例的现有技术中,整个系统的连接数为m*n,而单个参数服务器节点需要维护的连接数为m,单个训练服务器节点维护的连接数为n。在采用本申请第一实施例的分布式机器学习系统中,整个系统的连接数为m+k*t+n,参数服务器节点需要维护的连接数为1,单个训练节点维护的连接数也为1。在实际部署中,m与n的值是远远大于k和t的值,因此m*n>>m+k*t+n。由此可见,通过采用本申请提供的通信方法,不但极大减少了单个参数服务器节点和单个训练服务节点管理的连接数,同时也降低了整个系统的连接数。

本申请第一实施例提供一种分布式机器学习系统中服务器节点之间的通信方法,本申请第一实施例是从接入交换机的角度进行说明,以下结合图3进行详细说明。

如图3所示,在步骤S301中,根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接。

本实施例用于根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接。

所述通信方法,所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

请参考图1。其中所述服务器节点可以包括参数服务器节点(PS1、PS2)和训练服务器节点(W1-W7)。

请参考图1。训练服务器节点(W1-W7),以及参数服务器节点(PS1-PS2)各自与其相连的接入交换机(ASW1-ASW3)建立通信连接(例如TCP连接),如图1中的L21-L29。

如图3所示,在步骤S302中,向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接。

本步骤用于向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接。

请参考图1。接入交换机ASW1-ASW3分别与其相连接的第一交换机PSW1-PSW2建立通信连接(例如TCP连接),如图1中的L31-L33,以及L41-L43。

所述通信方法,所述第一通信连接和所述第二通信连接均为传输控制协议连接。

传输控制协议即TCP/IP协议中的TCP连接,其为现有技术,这里就不再赘述了。

如图3所示,在步骤S303中,根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

本步骤用于根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

首先,所述通信方法分析与所述分布式机器学习系统中参数服务器节点、训练服务器节点以及第一交换机之间的物理连接信息,获得所述分布式机器学习系统的拓扑关系。例如,在图1中,预先分析接入交换机、第一交换机、训练服务器节点、以及参数服务器节点的拓扑关系。

所述根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表,包括:

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的第一交换机的标识信息;

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的训练服务器节点的标识信息;

根据所述第一交换机的标识信息以及所述训练服务器节点的标识信息,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

以图1中的ASW3为例。与ASW3相连的通信连接包括L29,其为训练节点服务器W7和ASW3之间的TCP连接。与ASW3相连的通信连接还包括L33,其为PSW1和ASW3之间的TCP连接。如果训练节点服务器W7访问的目标服务器节点为PSW1。在ASW3中,会预先创建映射表。在该映射表中,记录了访问PS1需要通过ASW3和PSW1之间通信连接,即L33。

如图3所示,在步骤S304中,根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

所述通信方法中,所述根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接,包括:

根据所述训练服务器节点的通信请求,获得所述通信请求中指示的目标参数服务器的标识信息;

根据所述目标参数服务器的标识信息,查询所述映射表,获得与所述目标参数服务器的第三通信连接。

仍旧以上述的例子进行说明。ASW3在收到W7访问PSW1的通信请求时,获得所述通信请求中指示的目标参数服务器的标识信息,即PSW1。根据所述PSW1信息,查询所述映射表,获得L33为访问PS1所需要的与所述目标参数服务器PS1的第三通信连接。

所述通信方法,还包括:

利用所述第三通信连接,实现所述服务器节点与所述目标服务器节点之间的通信。

仍旧以上述的例子进行说明。ASW3在确定W7预访问的PSW1的第三通信连接为L33后,将该访问请求通过L33发送至PSW1。PSW1已经预先创建了自己的映射表。该映射表中记载了通过PSW1访问PS1的通信连接信息,即首先通过通信连接L31访问ASW1,然后通过通信连接L21访问PS1。这样就完成了训练服务器节点W7和参数服务器节点PS1的通信过程。

与上述第一实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应的,本申请第二实施例提供一种通信装置。

如图4所示,其为本申请第二实施例提供的一种通信装置的示意图。

所述通信装置包括:

第一建立单元401,用于根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

第二建立单元402,用于向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

创建单元403,用于根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

获得单元404,用于根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

可选的,所述第一建立单元中的所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

可选的,所述第一建立单元,具体用于:

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的第一交换机的标识信息;

根据所述分布式机器学习系统的拓扑关系,获得具有连接关系的训练服务器节点的标识信息;

根据所述第一交换机的标识信息以及所述训练服务器节点的标识信息,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表。

可选的,所述第一建立单元,还用于:

根据所述训练服务器节点的通信请求,获得所述通信请求中指示的目标参数服务器的标识信息;

根据所述目标参数服务器的标识信息,查询所述映射表,获得与所述目标参数服务器的第三通信连接。

可选的,所述通信装置还包括分析单元,具体用于:

分析与所述分布式机器学习系统中参数服务器节点、训练服务器节点以及第一交换机之间的物理连接信息,获得所述分布式机器学习系统的拓扑关系。

可选的,所述通信装置中,所述第一通信连接和所述第二通信连接均为传输控制协议连接。

可选的,所述的通信装置,还包括实现单元,具体用于:

利用所述第三通信连接,实现所述服务器节点与所述目标服务器节点之间的通信。

需要说明的是,对于本申请第二实施例提供的装置的详细描述可以参考对本申请第一实施例的相关描述,这里不再赘述。

与上述第一实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应的,本申请第三实施例还提供一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理方法的程序,该设备通电并通过所述处理器运行该数据处理方法的程序后,执行下述步骤:

根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

需要说明的是,对于本申请第三实施例提供的电子设备的详细描述可以参考对本申请第一实施例的相关描述,这里不再赘述。

与上述第一实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应的,本申请第四实施例提供一种存储设备,存储有数据处理方法的程序,该程序被处理器运行,执行下述步骤:包括:

根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;

向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;

根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;

根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接。

需要说明的是,对于本申请第四实施例提供的存储设备的详细描述可以参考对本申请第一实施例的相关描述,这里不再赘述。

本申请第五实施例提供一种分布式机器学习系统中服务器节点之间的通信方法,本申请第五实施例是从第一交换机的角度进行的。下面结合图5进行介绍。

如图5所示,在步骤S501中,获取接入交换机发出的连接请求。

本步骤用于获取接入交换机发出的连接请求。

该步骤在系统初始化阶段进行,可以在系统启动时执行一次。在系统启动时,PSW1会收到ASW3发出的连接请求。

如图5所示,在步骤S502中,根据所述连接请求,建立与所述接入交换机之间的第四通信连接。

本步骤用于根据所述连接请求,建立与所述接入交换机之间的第四通信连接。

PSW1在收到ASW3发出的连接请求后,会建立L33这个TCP连接。

如图5所示,在步骤S503中,根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表。

本步骤用于根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表。

请参考图1。其中所述服务器节点可以包括参数服务器节点(PS1、PS2)和训练服务器节点(W1-W7)。

PSW1根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表。例如,该映射表可以包括访问PS1的路径信息,即通过连接L31访问ASW1,然后再通过连接L21访问PS1。这里,可以将L31作为第四通信连接。

如图5所示,在步骤S504中,根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

本步骤用于根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

仍以上面的例子进行说明。PSW1接收到来自ASW3的W7访问PS1的通信请求。首先解析所述通信请求,发现目标服务器节点为目标参数服务器节点PS1。根据该目标服务器信息,查询映射表,发现L31是访问目标参数服务器节点PS1的第四通信连接。

接着,PSW1将该通信请求通过L31发到ASW1。类似的,ASW1进行解析,发现目标服务器节点为目标参数服务器节点PS1。然后,根据目标参数服务器节点信息,查询自己建立的映射表,发现L21是访问目标参数服务器节点PS1的通信连接。最后ASW1通过L21将通信请求发送到PS1,整个通信过程结束。

与本申请第五实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应,本申请第六实施例还提供一种通信装置。

如图6所示,所述通信装置,包括:

获取单元601,用于获取接入交换机发出的连接请求;

第三建立单元602,用于根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

第二创建单元603,用于根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

第二获得单元604,用于根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

需要说明的是,对于本申请第六实施例提供的装置的详细描述可以参考对本申请第二实施例的相关描述,这里不再赘述。

与本申请第五实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应,本申请第七实施例提供一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理方法的程序,该设备通电并通过所述处理器运行该数据处理方法的程序后,执行下述步骤:

获取接入交换机发出的连接请求;

根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

需要说明的是,对于本申请第六实施例提供的电子设备的详细描述可以参考对本申请第二实施例的相关描述,这里不再赘述。

与本申请第五实施例提供的一种分布式机器学习系统中服务器节点之间的通信方法相对应,本申请第八实施例提供一种存储设备,存储有数据处理方法的程序,该程序被处理器运行,执行下述步骤:包括:

获取接入交换机发出的连接请求;

根据所述连接请求,建立与所述接入交换机之间的第四通信连接;

根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;

根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接。

需要说明的是,对于本申请第八实施例提供的存储设备的详细描述可以参考对本申请第二实施例的相关描述,这里不再赘述。

本申请第九实施例提供一种分布式机器学习系统,包括接入交换机和第一交换机;

所述接入交换机用于,根据所述分布式机器学习系统中服务器节点的连接请求,建立与该服务器节点的第一通信连接;向第一交换机发出连接请求,建立与所述第一交换机之间的第二通信连接;根据所述分布式机器学习系统的拓扑关系,创建用于记载所述服务器节点与所述第一通信连接以及所述第二通信连接之间对应关系的映射表;根据所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第三通信连接

所述第一交换机用于,获取接入交换机发出的连接请求;根据所述连接请求,建立与所述接入交换机之间的第四通信连接;根据所述分布式机器学习系统的拓扑关系,创建所述服务器节点与所述第四通信连接之间对应关系的映射表;根据所述接入交换机转发的所述服务器节点的通信请求,查询所述映射表,获得与所述通信请求中指示的目标服务器节点之间的第四通信连接;

本实施例中,所述服务器节点包括参数服务器节点和训练服务器节点中的至少一种。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、存储器映射输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

相关技术
  • 分布式机器学习系统中服务器节点之间的通信方法和装置
  • 通信系统中的用户设备和节点B之间的通信方法和装置
技术分类

06120113251926