CN111612155B - 一种分布式机器学习系统及适用于其的通信调度方法 - Google Patents

一种分布式机器学习系统及适用于其的通信调度方法 Download PDF

Info

Publication number
CN111612155B
CN111612155B CN202010411839.XA CN202010411839A CN111612155B CN 111612155 B CN111612155 B CN 111612155B CN 202010411839 A CN202010411839 A CN 202010411839A CN 111612155 B CN111612155 B CN 111612155B
Authority
CN
China
Prior art keywords
machine learning
nodes
learning system
automaton
state
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
CN202010411839.XA
Other languages
English (en)
Other versions
CN111612155A (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.)
Hunan University
Original Assignee
Hunan University
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 Hunan University filed Critical Hunan University
Priority to CN202010411839.XA priority Critical patent/CN111612155B/zh
Publication of CN111612155A publication Critical patent/CN111612155A/zh
Application granted granted Critical
Publication of CN111612155B publication Critical patent/CN111612155B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种分布式机器学习系统及适用于其的通信调度方法,其方法为:在分布式机器学习系统的参数服务器或交换机的网络芯片上增设自动机,通过自动机识别分布式机器学习系统中的参数服务器和工作节点;参数服务器依次向每个工作节点发送对应分配的参数,在同一时间点只向一个工作节点发送对应分配的参数;每个工作节点从参数服务器拉取到参数后,均立即开始根据参数计算梯度;每个工作节点在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将当前工作节点计算得到的梯度推送给参数服务器。本发明对分布式机器学习系统的通信进行合理调度,有效降低分布式机器学习的通信时间成本。

Description

一种分布式机器学习系统及适用于其的通信调度方法
技术领域
本发明属于分布式计算和机器学习交叉技术领域,具体为一种分布式机器学习系统及适用于其的通信调度方法。
背景技术
随着大数据时代的到来,机器学习算法尤其是适用于大规模数据的深度学习算法正得到越来越广泛的关注和应用,包括语音识别、图像识别以及自然语言处理等。然而,随着输入训练数据(机器学习中用于求解神经网络模型的一类数据)和神经网络模型的增大,单节点进行机器学习训练存在内存限制以及数周甚至数月的训练耗时等问题,分布式机器学习应运而生。分布式机器学习在工业界和学术界都收到普遍的关注,如:Google利用DistBelief分布式系统训练出了猫脸识别模型,UC Berkeley AMP实验室开源了一个可适用于机器学习算法的类Hadoop MapReduce的分布式计算系统Spark。
典型的分布式机器学习系统为数据并行的参数服务器系统(本文中所述参数指的是机器学习中用于建立神经网络模型的矩阵变量),其中该系统包括一个或多个主节点作为参数服务器节点,多个从节点作为工作节点。参数服务器节点负责维护和更新全局共享参数;工作节点保存一部分输入训练数据,利用该训练数据计算新的模型参数,并且及时将新的模型参数同步给参数服务器。
现有技术中,分布式机器学习系统完成一个次迭代训练包括4个子步骤:
1、工作节点从参数服务器节点拉取最新参数副本;
2、工作节点从本地训练数据中取出一批(batch,表示一个完整实体的用于训练的输入数据矩阵称为一组,一批可能是一组或者多组)新的数据,首先经过前向传播(ForwardPropagation)得到损失函数的值(本文所述损失函数的值由损失函数产生,用于描述模型的预测值与真实值的不一致程度),再经过反向传播(Backword Propagation),得到新的参数梯度(本文所述参数梯度指的是用于更新参数矩阵的差值);
3、工作节点将新计算的参数梯度推送给参数服务器;
4、参数服务器利用参数梯度计算更新参数。
但在对现有技术的分布式机器学习系统的建模分析过程中,通过自动化脚本多次运行tensorflow官方给出的CNN benchmark(包括inception3/alexnet/VGG19/resnet50)等模型,并以数据包为最小单位分析在一次完整的tensorflow训练过程中参数服务器和工作节点之间的通信过程,发现参数服务器和工作节点之间唯一的网络连接会被多个工作节点同时占用,导致每个工作节点通信完成时间都相互受到了影响。参数服务器同时向多个工作节点推送参数副本,工作节点需要获得完整的参数副本,再进行计算。并在工作节点计算完成后,将参数梯度推送给参数服务器。在上述过程中,通信与计算互不重叠,造成计算与通信的资源浪费。
而且随着训练数据量的增大,节点的增多可使计算时间线性下降,因此在分布式机器学习系统中设置更多工作节点训练模型成了必然的趋势,但与此同时,工作节点的增多使通信时间呈非线性快速增长,导致通信时间会成为分布式机器学习的瓶颈。
因此,有必要提出一种可有效降低分布式机器学习的通信时间成本的通信调度方法。
发明内容
本发明所要解决的技术问题在于,提供一种分布式机器学习系统及适用于其的通信调度方法,对分布式机器学习系统的节点通信进行合理调度,有效降低分布式机器学习的通信时间成本。
为实现上述技术目的,本发明采用如下技术方案:
一种适用于分布式机器学习系统的通信调度方法,所述方法包括:
在分布式机器学习系统中设置自动机,通过自动机识别分布式机器学习系统中的参数服务器和工作节点;所述自动机为设置于参数服务器或交换机的网络芯片上的功能单元;
参数服务器依次向每个工作节点发送对应分配的参数,在同一时间点只向一个工作节点发送对应分配的参数;
每个工作节点从参数服务器拉取到参数后,均立即开始根据参数计算梯度;
每个工作节点在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将当前工作节点计算得到的梯度推送给参数服务器。
在更优的技术方案中,自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点。
在更优的技术方案中,自动机对分布式机器学习系统所有节点进行流量分析的具体过程为:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点。
在更优的技术方案中,时间T1≤0.05s,数据量大于N1是指数据量大于10万个数据包,数据量小于N2是指数据量在1~1000个数据包范围内。
在更优的技术方案中,参数服务器在同一时间点只向一个工作节点发送对应分配的参数时,待发送的其他工作节点对应分配的参数均依次放于队列中;当前工作节点对应分配的参数发送完成后,再从队列中获取下一个工作节点对应分配的参数,并发送给下一个工作节点。
本发明还提供一种分布式机器学习系统,包括参数服务器、n个工作节点、交换机和自动机;
所述自动机为设置于参数服务器或交换机的网络芯片上的功能单元,用于识别分布式机器学习系统中的参数服务器和n个工作节点;
所述参数服务器,用于:为n个工作节点分配参数,并依次向每个工作节点发送对应分配的参数,且在同一时间点只向一个工作节点发送对应分配的参数;
所述工作节点,用于:在参数服务器拉取到参数后立即开始根据参数计算梯度;并在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将自身工作节点计算得到的梯度推送给参数服务器。
在更优的技术方案中,所述自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点。
在更优的技术方案中,所述自动机通过执行计算机程序以实现以下步骤来完成分布式机器学习系统的所有节点进行网络流量分析:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点。
有益效果
本发明实施例,通过在分布式机器学习系统的参数服务器或交换机的网络芯片上增设自动机,该自动机对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点,并对分布式机器学习系统中的参数服务器与工作节点之间的通信进行合理调度,因此本发明实施例一方面可避免内核实现所存在的操作系统调度、中断及软件处理开销,另一方面借助参数服务器或交换机的网络芯片对流量综合分析更加准确,再一方面使用网络芯片更加方便快捷,不需要频繁配置交换机以及嵌入内核代码。
附图说明
图1为本发明实施所述方法和系统中的自动机进行流量分析的示意图;
图2为本发明实施所述方法和系统中的通信调度整体消耗时间示意图;
图3为现在技术中分布式机器学习的通信调度整体消耗时间示意图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例以本发明的技术方案为依据开展,给出了详细的实施方式和具体的操作过程,对本发明的技术方案作进一步解释说明。
本发明提供一种适用于分布式机器学习系统的通信调度方法实施例,在分布式机器学习系统中增设自动机,该自动机为设置于参数服务器或交换机的网络芯片上的功能单元,其通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点。
如图1所示,所述自动机对分布式机器学习系统所有节点进行流量分析的具体过程为:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点。
在本实施例中,时间T1≤0.05s,数据量大于N1是指数据量大于10万个数据包,数据量小于N2是指数据量在1~1000个数据包范围内。
而后在分布式机器学习系统的每次迭代训练中,参数服务器集中为所有n个工作节点分配参数,并按本实施例方法对分布式机器学习系统中的所有节点进行通信调度,参数服务器最终得到一次迭代训练的梯度,以进一步利用梯度计算更新参数,进入下一次迭代训练。本实施例在上述通过自动机识别到分布式机器学习系统中的参数服务器和工作节点之后,对分布式机器学习系统中的所有节点进行通信调度的方法还包括以下步骤:
参数服务器依次向每个工作节点发送对应分配的参数,在同一时间点只向一个工作节点发送对应分配的参数;此时,待发送的其他工作节点对应分配的参数均依次放于队列中,只有当前工作节点对应分配的参数发送完成后,参数服务器再从队列中获取下一个工作节点对应分配的参数,并发送给下一个工作节点;
每个工作节点从参数服务器拉取到参数后,均立即开始根据参数计算梯度;
每个工作节点在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将当前工作节点计算得到的梯度推送给参数服务器。
现在技术中在遇到工作节点存在通信竞争的问题,一般是通过操作系统内核为工作节点打优先级标记、交换机识别优先级以对具有竞争的工作节点进行通信调度,这种方法依赖于操作系统内核来实现,而操作系统内核会存在操作系统调度、中断以及软件处理等开销,导致通信调度的综合性能相对较低。而本发明实施例,通过在分布式机器学习系统的参数服务器或交换机的网络芯片上增设自动机,该自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点,并对分布式机器学习系统中的参数服务器与工作节点之间的通信进行合理调度,因此本发明实施例一方面可避免内核实现所存在的操作系统调度、中断及软件处理开销,另一方面借助网络芯片对流量综合分析更加准确,再一方面使用网络芯片更加方便快捷,不需要频繁配置交换机以及嵌入内核代码。
另外,多个工作节点从参数服务器拉取参数存在竞争时,本发明实施例随机只让其中一个工作节点拉取参数,因此不需要为工作节点预设优先级,也就不需要通过网络芯片根据各工作节点的优先级顺序来进行调度,从而节省调度过程的时间消耗。当多个工作节点向参数服务器推送梯度存在竞争时,也不需要根据优先级顺序进行调度,因为在网络带宽不变、且向参数服务器推送梯度的数据总量相同的前提下,推送所需要消耗的时间也就是相同的,反而进一步节省了调度时间开销。
设n个工作节点依次为w1,w2……wn,每个工作节点从参数服务器拉取对应分配的参数需要的时间(即参数服务器向每个工作节点发送对应分配的参数需要的时间)均为a,工作节点将计算的梯度推送给参数服务器需要的时间均为b,n个工作节点w1,w2……wn根据参数计算梯度的计算时间分别为T[1],T[2],T[3]……T[n]。假设n个工作节点的调度顺序为w1,w2……wn,且wi为计算时间最长的节点(如果有多个节点计算时间相等且计算时间最长,wi取其中最晚进行拉取的节点)。
按照本发明实施例方法,参考图2所示,每次迭代训练过程中,分布式机器学习系统所消耗的通信调度时间为:T1=i*a+T(i)+(n-i+1)*b。而按现有的通信方法,参考图3所示,分布式机器学习系统所消耗的通信调度时间为:T2=n*a+n*b+T[i]。则有:T2-T1=(n-i)*a+(i-1)*b,由于n≥i,i≥1,n>1,因此T2-T1>0,即本发明实施例方法所消耗的通信调度时间小于现有技术中的通信调度时间,
当a≈b时,本发明实施例方法可实现的加速比为:k≈(T2-T1)/T2=(n-1)b/(2nb+T[i])。当b>>T[i]且工作节点数n足够大时,加速比k≈1/2。当取n=3时,本发明实施例方法可实现的加速比为:k≈1/3。
通过以上分析可得,本发明实施例方法,可以有效降低分布式机器学习的通信时间成本。
本发明还提供一种分布式机器学习系统实施例,包括参数服务器、n个工作节点、交换机和自动机;
所述自动机为设置于参数服务器或交换机的网络芯片上的功能单元,用于识别分布式机器学习系统中的参数服务器和n个工作节点;
所述参数服务器,用于:为n个工作节点分配参数,并依次向每个工作节点发送对应分配的参数,且在同一时间点只向一个工作节点发送对应分配的参数;
所述工作节点,用于:在参数服务器拉取到参数后立即开始根据参数计算梯度;并在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将自身工作节点计算得到的梯度推送给参数服务器。
在更优的实施例中,所述自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点。
在更优的实施例中,所述自动机通过执行计算机程序以实现以下步骤来完成分布式机器学习系统的所有节点进行网络流量分析:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点。
以上有关于分布式机器学习系统的实施例,与前述的适用于分布式机器学习系统的通信调度方法实施例相对应的系统实施例,因此具有与方法相同的有益效果,此处不再赘述。
以上实施例为本申请的优选实施例,本领域的普通技术人员还可以在此基础上进行各种变换或改进,在不脱离本申请总的构思的前提下,这些变换或改进都应当属于本申请要求保护的范围之内。

Claims (4)

1.一种适用于分布式机器学习系统的通信调度方法,其特征在于,所述方法包括:
在分布式机器学习系统中设置自动机,通过自动机识别分布式机器学习系统中的参数服务器和工作节点;所述自动机为设置于参数服务器或交换机的网络芯片上的功能单元;
其中,自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点;而后在分布式机器学习系统的每次迭代训练中,参数服务器集中为所有n个工作节点分配参数,并对分布式机器学习系统中的所有节点进行通信调度;
所述自动机对分布式机器学习系统所有节点进行流量分析的具体过程为:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点;
所述对分布式机器学习系统中的所有节点进行通信调度的方法包括:
参数服务器依次向每个工作节点发送对应分配的参数,在同一时间点只向一个工作节点发送对应分配的参数;
每个工作节点从参数服务器拉取到参数后,均立即开始根据参数计算梯度;
每个工作节点在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将当前工作节点计算得到的梯度推送给参数服务器。
2.根据权利要求1所述的方法,其特征在于,时间T1≤0.05s,数据量大于N1是指数据量大于10万个数据包,数据量小于N2是指数据量在1~1000个数据包范围内。
3.根据权利要求1所述的方法,其特征在于,参数服务器在同一时间点只向一个工作节点发送对应分配的参数时,待发送的其他工作节点对应分配的参数均依次放于队列中;当前工作节点对应分配的参数发送完成后,再从队列中获取下一个工作节点对应分配的参数,并发送给下一个工作节点。
4.一种分布式机器学习系统,其特征在于,包括参数服务器、n个工作节点、交换机和自动机;
所述自动机为设置于参数服务器或交换机的网络芯片上的功能单元,用于识别分布式机器学习系统中的参数服务器和n个工作节点;
其中,自动机通过对分布式机器学习系统的所有节点进行网络流量分析,以识别分布式机器学习系统中的参数服务器和工作节点;而后在分布式机器学习系统的每次迭代训练中,参数服务器集中为所有n个工作节点分配参数,并对分布式机器学习系统中的所有节点进行通信调度;
所述自动机对分布式机器学习系统所有节点进行流量分析的具体过程为:
设当前状态为自动机的第一状态;
处于第一状态的自动机,在监测到分布式机器学习系统中的一个节点在时间T1内向n个节点发送数据量大于N1时,进入第二状态;并将其中发送数据的节点标记为第一节点,其他接收数据的n个节点均标记为第二节点;其中n≥1;
处于第二状态的自动机,在监测到分布式机器学习系统中的n个第二节点在时间T1内向第一节点发送数据量大于N1时,进入第三状态;否则自动机返回第一状态;
处于第三状态的自动机,在监测到分布式机器学习系统中的n个第二节点向第一节点发送数据量小于N2时,进入第四状态;否则自动机返回第一状态;
处于第四状态的自动机,在监测到到分布式机器学习系统中的第一节点向n个第二节点发送数据量小于N2时,进入第五状态;否则自动机返回第一状态;
自动机判断当前是否处于第五状态,若是,则第一节点为分布式机器学习系统中的参数服务器,n个第二节点均为分布式机器学习系统中的工作节点;
所述参数服务器,用于:为n个工作节点分配参数,并依次向每个工作节点发送对应分配的参数,且在同一时间点只向一个工作节点发送对应分配的参数;
所述工作节点,用于:在参数服务器拉取到参数后立即开始根据参数计算梯度;并在完成梯度计算后,判断此时的参数服务器是否在接收其他工作节点推送的梯度,若否,则将自身工作节点计算得到的梯度推送给参数服务器。
CN202010411839.XA 2020-05-15 2020-05-15 一种分布式机器学习系统及适用于其的通信调度方法 Active CN111612155B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010411839.XA CN111612155B (zh) 2020-05-15 2020-05-15 一种分布式机器学习系统及适用于其的通信调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010411839.XA CN111612155B (zh) 2020-05-15 2020-05-15 一种分布式机器学习系统及适用于其的通信调度方法

Publications (2)

Publication Number Publication Date
CN111612155A CN111612155A (zh) 2020-09-01
CN111612155B true CN111612155B (zh) 2023-05-05

Family

ID=72201462

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010411839.XA Active CN111612155B (zh) 2020-05-15 2020-05-15 一种分布式机器学习系统及适用于其的通信调度方法

Country Status (1)

Country Link
CN (1) CN111612155B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199896A (zh) * 2020-10-26 2021-01-08 云中芯半导体技术(苏州)有限公司 一种基于机器学习的芯片逻辑综合优化加速方法
CN113705826B (zh) * 2021-07-19 2023-07-14 哈尔滨工业大学(深圳) 面向分布式机器学习的参数同步组播方法
CN113703980B (zh) * 2021-08-31 2024-09-06 西安电子科技大学 一种分布式机器学习系统及适用于其的通信调度方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714852A (zh) * 2015-03-17 2015-06-17 华中科技大学 一种适用于分布式机器学习的参数同步优化方法及其系统
CN108768876A (zh) * 2018-06-05 2018-11-06 清华大学深圳研究生院 一种面向机器学习框架的流量调度方法
CN108846095A (zh) * 2018-06-15 2018-11-20 联想(北京)有限公司 一种数据处理方法及装置
CN109710289A (zh) * 2018-12-21 2019-05-03 南京邮电大学 基于深度强化学习算法的分布式参数服务器的更新方法
CN110059829A (zh) * 2019-04-30 2019-07-26 济南浪潮高新科技投资发展有限公司 一种异步参数服务器高效并行架构与方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11315013B2 (en) * 2018-04-23 2022-04-26 EMC IP Holding Company LLC Implementing parameter server in networking infrastructure for high-performance computing
US20200118000A1 (en) * 2018-10-10 2020-04-16 NEC Laboratories Europe GmbH Method and system for distributed deep learning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714852A (zh) * 2015-03-17 2015-06-17 华中科技大学 一种适用于分布式机器学习的参数同步优化方法及其系统
CN108768876A (zh) * 2018-06-05 2018-11-06 清华大学深圳研究生院 一种面向机器学习框架的流量调度方法
CN108846095A (zh) * 2018-06-15 2018-11-20 联想(北京)有限公司 一种数据处理方法及装置
CN109710289A (zh) * 2018-12-21 2019-05-03 南京邮电大学 基于深度强化学习算法的分布式参数服务器的更新方法
CN110059829A (zh) * 2019-04-30 2019-07-26 济南浪潮高新科技投资发展有限公司 一种异步参数服务器高效并行架构与方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
张维 ; 潘涛 ; 范震坤 ; .Angel:一种面向高维度的机器学习框架.电子技术与软件工程.2018,(第22期),全文. *
朱虎明 ; 李佩 ; 焦李成 ; 杨淑媛 ; 侯彪 ; .深度神经网络并行化研究综述.计算机学报.2018,(第08期),全文. *
辜阳 ; 杨大为 ; .分布式深度学习研究.科技创新与应用.2017,(第29期),全文. *

Also Published As

Publication number Publication date
CN111612155A (zh) 2020-09-01

Similar Documents

Publication Publication Date Title
CN111612155B (zh) 一种分布式机器学习系统及适用于其的通信调度方法
CN104714852B (zh) 一种适用于分布式机器学习的参数同步优化方法及其系统
CN105956021B (zh) 一种适用于分布式机器学习的自动化任务并行的方法及其系统
Dogan et al. Matching and scheduling algorithms for minimizing execution time and failure probability of applications in heterogeneous computing
CN111079921A (zh) 一种基于异构分布式系统的高效神经网络训练调度方法
CN108460457A (zh) 一种面向卷积神经网络的多机多卡混合并行异步训练方法
CN109871270B (zh) 调度方案生成方法及装置
CN108416433A (zh) 一种基于异步事件的神经网络异构加速方法和系统
WO2013084654A1 (ja) シミュレーション実行方法、プログラム及びシステム
Xu et al. AoI-centric task scheduling for autonomous driving systems
CN115509712A (zh) 一种基于smt的自动驾驶系统实时性任务调度分析方法
CN113472597A (zh) 分布式卷积神经网络细粒度的参数传输调度方法及装置
CN114895773A (zh) 异构多核处理器的能耗优化方法、系统、装置及存储介质
CN113033806A (zh) 一种训练深度强化学习模型的方法、装置以及调度方法
CN115437760A (zh) 计算资源分配方法、电子设备、存储介质及程序产品
CN115827250A (zh) 一种数据存储方法、装置及设备
CN115543626A (zh) 采用异构计算资源负载均衡调度的电力缺陷图像仿真方法
CN111061565A (zh) 一种Spark环境下的两段式流水线任务调度方法及系统
CN115630937B (zh) 物流网络仿真的时间同步方法、装置和存储介质
CN113821313B (zh) 一种任务调度方法、装置及电子设备
Tang et al. A network load perception based task scheduler for parallel distributed data processing systems
CN114254735A (zh) 一种基于分布式的僵尸网络模型构建方法和装置
Dong et al. A general analysis framework for soft real-time tasks
JP2023544911A (ja) 並列量子コンピューティングのための方法及び装置
CN113238841A (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