CN111147541A - 基于参数服务器的节点处理方法、装置、设备及存储介质 - Google Patents

基于参数服务器的节点处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111147541A
CN111147541A CN201911128886.7A CN201911128886A CN111147541A CN 111147541 A CN111147541 A CN 111147541A CN 201911128886 A CN201911128886 A CN 201911128886A CN 111147541 A CN111147541 A CN 111147541A
Authority
CN
China
Prior art keywords
task
node
failure
data
parameter server
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.)
Granted
Application number
CN201911128886.7A
Other languages
English (en)
Other versions
CN111147541B (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.)
Guangzhou Weride Technology Co Ltd
Original Assignee
Guangzhou Weride 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 Guangzhou Weride Technology Co Ltd filed Critical Guangzhou Weride Technology Co Ltd
Priority to CN201911128886.7A priority Critical patent/CN111147541B/zh
Publication of CN111147541A publication Critical patent/CN111147541A/zh
Application granted granted Critical
Publication of CN111147541B publication Critical patent/CN111147541B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • 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

Landscapes

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

Abstract

本发明涉及大数据技术领域,并公开了一种基于参数服务器的节点处理方法,包括:获取参数服务器的全局资源信息,以构建动态全局任务图表;基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;若是,则将所述失效节点对应的运算任务判定为失效任务;将所述失效任务部署到所述失效任务对应的失效节点以外的节点。本发明还公开了一种基于参数服务器的节点处理装置、设备和存储介质。本发明通过构建动态全局任务图表,使得第二运算任务相关的信息都添加到图表中,在发现存在失效节点时,为了保证任务不中断,能够及时有效的将失效任务部署到失效任务对应的失效节点以外的节点,使得失效节点以外的节点能够继续完成任务。

Description

基于参数服务器的节点处理方法、装置、设备及存储介质
技术领域
本发明涉及大数据技术领域,尤其涉及机器学习的基于参数服务器的节点处理方法、装置、设备及存储介质。
背景技术
在云计算和数据中心环境中,节点失效是较为常见且不可避免的问题,而节点失效会造成分布式训练任务的效率降低或完全中断。因此,使系统实现针对节点失效的容错性,以保证训练效率稳定且不被中断,是在分布式机器学习方向非常有价值的研究。
在现有的参数服务器架构下,容错机制只限于在整体训练任务层面容错,即在非关键节点失效的情况下,重新调整分配其他节点的任务范围。一旦遇到某个关键节点失效的情况,任务便会中断,无法在没有人工干预的情况下恢复。
发明内容
本发明的主要目的在于提出一种基于参数服务器的节点处理方法、装置、设备及存储介质,旨在解决现有技术中参数服务器在节点失效时无法有效处理的问题。
为实现上述目的,本发明提供一种基于参数服务器的节点处理方法,所述基于参数服务器的节点处理方法包括如下步骤:
获取参数服务器的全局资源信息,以构建动态全局任务图表;
基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
若是,则将所述失效节点对应的运算任务判定为失效任务;
将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
可选地,所述全局资源信息包括运算任务对应的输出结果、待训练数据;所述获取参数服务器全局资源信息,以构建动态全局任务图表的步骤包括:
获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;其中,所述第一运算任务或第二运算任务为所述运算任务中任意一个任务;
将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;
基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表。
可选地,所述基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表的步骤包括:
获取所述第一运算任务对应的任务函数及输入数据;
基于所述输入数据及任务函数,生成所述第二运算任务对应的数据依赖关系;其中,所述输入数据包括第一输出结果和/或待训练数据和/或第二输出结果;
基于所述数据依赖关系,获取各个运算任务对应的当前任务状态;
将所述第一运算任务、任务函数、输入数据、当前任务状态及所述第二运算任务,生成动态全局任务图表;
将所述动态全局任务图表存储于分布式架构中。
可选地,所述基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点的步骤包括:
生成资源信息列表,其中,所述资源信息列表包括服务器节点信息及工作节点信息;
当第二运算任务达到部署条件时,根据所述资源信息列表进行部署调度,以将参数服务器对应的任务参数分配到服务器节点,且将工作节点对应的任务数据分配到对应的工作节点,其中,所述服务器节点与所述服务器节点信息对应,所述工作节点与所述工作节点信息对应;
实时检测所述服务器节点及工作节点中是否存在失效节点。
可选地,所述根据所述资源信息列表进行部署调度的步骤之后,所述方法还包括:
通过所述服务器节点初始化神经网络参数分片,持续监听并接收所述资源信息列表中的第一任务信息后,执行所述第一任务信息,在完成执行所述第一任务信息时,实时发送至所述动态全局任务图表;
通过所述工作节点初始化数据分片,持续监听并接收所述资源信息列表中的第二任务信息后,执行所述第二任务信息,在完成执行所述第二任务信息时,实时发送至所述动态全局任务图表。
可选地,所述将所述失效节点部署到所述失效任务对应的失效节点以外的节点的步骤包括:
基于所述动态全局任务图表回溯任务关系,其中,所述任务关系包括所述失效任务与各个运算任务之间的任务关系;
根据各个运算任务对应的子任务的数量和优先级,给所述运算任务赋予优先级数值;
在第三运算任务的优先级数值与失效任务对应的优先级数值相差在预设范围时,通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据;
通过所述第三运算任务对应的节点基于所述任务数据执行计算操作。
可选地,所述通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据的步骤包括:
通过所述第三运算任务对应的节点从所述失效任务对应的节点拷贝所述任务数据;
或通过所述第三运算任务对应的节点从所述分布式架构中获取所述任务数据。
此外,为实现上述目的,本发明还提供一种基于参数服务器的节点处理装置,所述基于参数服务器的节点处理装置包括:
构建模块,用于获取参数服务器全局资源信息,以构建动态全局任务图表;
检测模块,用于基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
判断模块,用于若是,则将所述失效节点对应的运算任务判定为失效任务;
部署模块,用于将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
此外,为实现上述目的,本发明还提供一种基于参数服务器的节点处理设备,所述基于参数服务器的节点处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于参数服务器的节点处理程序,所述基于参数服务器的节点处理程序被所述处理器执行时实现如上所述的基于参数服务器的节点处理方法的步骤。
此外,为实现上述目的,本发明还提供一种存储介质,所述存储介质上存储有基于参数服务器的节点处理程序,所述基于参数服务器的节点处理程序被处理器执行时实现如上所述的基于参数服务器的节点处理方法的步骤。
本发明提出的基于参数服务器的节点处理方法,首先,获取参数服务器的全局资源信息,以构建动态全局任务图表,使得第二运算任务相关的信息都添加到图表中,在发现存在失效节点时,为了保证任务不中断,能够及时有效的将失效任务部署到失效任务对应的失效节点以外的节点,使得失效节点以外的节点能够继续完成任务,从而保证节点失效时的容错性,继而保证训练任务的运行可以不被间断,有效避免核心计算资源的浪费。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明基于参数服务器的节点处理方法第一实施例的流程示意图;
图3为本发明基于参数服务器的节点处理方法的局部任务关系图;
图4为本发明基于参数服务器的节点处理方法第二实施例的流程示意图;
图5为本发明基于参数服务器的节点处理方法第三实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例基于参数服务器的节点处理设备可以是PC机或服务器设备。
如图1所示,该基于参数服务器的节点处理设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于参数服务器的节点处理程序。
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于参数服务器的节点处理程序,并执行下述基于参数服务器的节点处理方法各个实施例中的操作。
基于上述硬件结构,提出本发明基于参数服务器的节点处理方法实施例。
参照图2,图2为本发明基于参数服务器的节点处理方法第一实施例的流程示意图,所述方法包括:
步骤S10,获取参数服务器的全局资源信息,以构建动态全局任务图表;
本实施例中,参数服务器,是一个编程框架,用于方便分布式并行程序的编写,尤其重点在于对大规模参数的分布式存储和协同的支持。机器学习系统相比于其他系统而言,有一些自己的独特特点。主要包括迭代性:模型的更新并非一次完成,需要循环迭代多次;容错性:即使在每个循环中产生一些错误,模型最终仍能收敛;参数收敛的非均匀性:有些参数几轮迭代就会收敛,而有的参数却需要上百轮迭代。
工业界需要训练大型的机器学习模型,一些广泛应用的特定的模型在规模上有两个特点:参数很大,超过单个机器的容纳的能力(大型LR和神经网络);训练数据太大,需要并行提速(大数据)。
为了解决上述需求,参数服务器应运而生。
本案的参数服务器架构,均以随机梯度下降SGD为例,当然,也可以适用于其他类似于随机梯度下降SGD的参数服务器,该参数服务器的特点在于:任务调度的方式是先决且动态化的。
在机器学习的训练过程中,首先,可以通过全局任务调度器获取参数服务器的全局资源信息,以构建动态全局任务图表。其中,全局资源信息包括运算任务对应的输出结果、待训练数据,当然,也包括运算单元的任务ID、节点ID(包括服务器节点和工作节点)、运行状态等。
构建动态全局任务图表具体为:获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;其中,所述第一运算任务或第二运算任务为所述运算任务中任意一个任务;将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表。
更具体地,在机器学习训练的过程中,有多个运算单元,即运算任务,每一个运算单元的输入来源包括第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据,其中,第一输出结果为先前其他任务产生的结果。在运算结束后,所得到的第二输出结果,又会成为其他任务的输入。
当开始进行训练的时候,所有的任务,数据以及依赖关系尚未被全部定义。新的依赖关系和任务会在训练的过程中不断被建立。同时任务和依赖数据也会不断增加,可以通过该列表生成一个能够完整表述当前所有任务和数据关系的动态全局任务图表。
在建立了动态全局任务图表之后,对于每一个新增加的任务,都可以通过追溯及跟踪其输入数据的来源和当前状态,得知当下任务是否已经具备了可以开始运行的条件,并且,在保存管理任务状况时,可以根据任务进程进行实时任务调度部署。
通过构建动态全局图表,以便于追溯及跟踪任务输入数据的来源和当前状态,判断任务的运行条件,并且,还可以检测是否存在失效节点,以便于任务调度。
步骤S20,基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
该步骤中,在建立了动态全局任务图表后,全局任务调度器可以基于动态全局任务图表,检测全局资源信息中是否存在失效节点。
即,全局任务调度器在得到动态全局任务图表的时候,会生成资源信息列表,资源信息列表中包含了参数服务器节点信息和工作节点信息,这里也包括了训练流程的信息如服务器节点负责的参数分片范围和工作节点负责的数据分片范围,和资源调度实时信息如空闲忙碌状态等。
当一个运算任务达成部署条件时,全局任务调度器会根据资源信息列表的信息进行部署调度。参数服务器相关的任务如参数更新会被分配到服务器节点,工作节点相关的任务如梯度下降会被分配到工作节点。
当系统检测到节点失效的情况时,全局调度器可以根据当前的任务图表迅速回溯任务关系,将失败的任务根据全局最优的情况重新部署至另外一个节点上。如果失效的节点同时造成了任务所依赖数据的缺失,调度器也可以同理回溯任务关系从最近的检查点checkpoint重新播放任务路径直至重建依赖数据。
需要说明的是,检查点checkpoint是一个内部事件,这个事件激活以后,训练系统会即刻停止启动任何新的运算任务,在等待进行中的运算结束后,将所有的训练参数写出到数据文件中,写出完成后,恢复运算操作。在本案中,即调度器回溯任务关系,从最近的检查点,将失效节点当前所有的数据都放置到全局动态图表中,以重建数据依赖关系,从而保证数据的准确性。
步骤S30,若是,则将所述失效节点对应的运算任务判定为失效任务;
该步骤中,当判定全局资源信息中存在失效节点时,判定所述失效节点对应的运算任务为失效任务。
针对失效任务,需要新的节点进行重新处理任务,避免任务中断。
步骤S40,将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
该步骤中,当确定失效任务时,将失效任务部署到失效任务对应的失效节点以外的节点。当检测到节点失效的情况时,全局调度器可以根据当前的任务图表迅速回溯任务关系,将失败的任务根据全局最优的情况重新部署至另外一个节点上。如果失效的节点同时造成了任务所依赖数据的缺失,全局任务调度器也可以同理回溯任务关系从最近的checkpoint重新播放任务路径直至重建依赖数据。
在调度过程中,针对进展落后或因节点失效产生的恢复任务,为了防止任务掉队成为全局瓶颈,可以采用优先级的机制,每个任务根据下游任务的数量和它们的优先级,被赋予不同的优先级数值,落后或恢复任务,由于下游待启动任务较多,通常会得到更高的优先级。
当优先级相差到一定程度的时候,一个节点可能会接受到本来不由该节点负责的任务,这可能会造成该节点进行一些额外的工作,例如临时从其他节点拷贝数据。当这些额外的工作可以帮助系统避免全局瓶颈时,执行它们还是非常有价值的。即本来不由该任务的节点负责该任务,牺牲该节点自己的效率多做一些工作,保证任务的完成,从而保证整体运行。
具体参阅图3,根据模型的特性,在SGD算法中,所有梯度下降运算产生的子任务所依赖的输入信息都在本地节点产生,将这些子任务的调度转交给该工作节点来协调。这样,在全局任务调度服务中,就可以将梯度下降运算和其过程中产生的子任务视为一个整体来调度。
具体为:当任务id为t100的第一运算任务对应的节点失效时,可基于全局动态图表追溯任务关系,得到t100对应的所有数据local_1-3,将t100对应的所有数据local_1-3拷贝至t104对应的节点,通过t104对应的节点的子任务t104-1负责local_1的任务,子任务t104-2执行local_2的任务,子任务t104-3执行local_3的任务,从而负责t100的任务,保证t100的任务完成。在全局任务调度服务中,就可以将梯度下降运算和其过程中产生的子任务视为一个整体来调度。
本发明提出的基于参数服务器的节点处理方法,首先,获取参数服务器的全局资源信息,以构建动态全局任务图表,使得第二运算任务相关的信息都添加到图表中,在发现存在失效节点时,为了保证任务不中断,能够及时有效的将失效任务部署到失效任务对应的失效节点以外的节点,使得失效节点以外的节点能够继续完成任务,从而保证节点失效时的容错性,继而保证训练任务的运行可以不被间断,有效避免核心计算资源的浪费。
进一步地,所述全局资源信息包括运算任务对应的输出结果、待训练数据;步骤S10可以包括:
获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;其中,所述第一运算任务或第二运算任务为所述运算任务中任意一个任务;
将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;
基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表。
本实施例中,构建动态全局任务图像具体为:获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;其中,所述第一运算任务或第二运算任务为所述运算任务中任意一个任务;具体地,本案的第二运算任务为第一运算任务+1时刻的任务,或者是,第二运算任务为第一运算任务的子任务;
将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表。
本案以随机梯度下降SGD为例,在机器学习训练过程中,每一个运算任务单元的输入来源可以分为以下两类:1、先前其他任务产生的结果,即第一运算任务对应的第一输出结果;2、训练数据,即第二运算任务对应的待训练数据。
在运算结束后,所得到的输出结果又会成为其他任务的输入,即第二运算任务在运算后,得到第二输出结果。
同时,一个任务又有可能产生一个或多个子任务。例如,在计算梯度下降的过程中,工作节点会向服务器集提交多个拉取参数的请求。
因此,针对每一个运算单元,可以利用类似于如下表1的方式来表示和储存:
任务id 任务函数 数据输入
t100 拉取 D[100],t91_local_1
t101 梯度下降 D[101],t100_out,t95_out,…
t101-1 卷积运算 D[100][1],t101_local_1
表1运算单元数据输入表
上表中,t101-1为t101的一个子任务,t是指时间。如表1所示,第一运算任务的任务id可以为t100,对应的任务函数为拉取函数,对应的输入数据为D【100】,t91_local_1;任务id为t101,为第一运算任务的第t+1轮时刻对应的任务,即第二运算任务,对应的任务函数是梯度下降函数,对应的数据输入是D【101】,t100_out,t95_out,其中,D【101】为第二运算任务的待训练数据,t100_out为第一运算任务的第一输出结果,t95_out为其他运算任务的输出结果;t101-1为t101的一个子任务,也可以作为第二运算任务,对应的任务函数为卷积运算函数,对应的数据输入为D【100】【1】,t101_local_1;实质上,将第一运算任务的第t时刻、第t+1时刻、及第一运算任务的子任务分别对应的任务函数及输入数据,以如表1的方式进行表示和存储。
相应的,针对每个运算单元所依赖的数据生成的数据,也可以保存成类似如表2的方式:
数据id 数据类型 数据来源 需要该数据的任务
t91_out 任务输出 t91 t100,t103,…
t95_local_1 任务局部输出 t95 t95-1,t95-2,…
D[100] 训练数据 初始数据 t101,t110,…
表2运算单元数据输出表
上表2中,数据id依次对应数据类型、数据来源、需要该数据的任务,如t91_out为例,t91_out为任务id为t91的运算任务的输出结果,对应的数据类型为任务输出,对应的数据来源为t91这一运算任务,该数据id需要该数据的任务为t100,t103,即任务id为t100,t103的运算任务。
当开始进行训练的时候,所有的任务,数据以及依赖关系尚未被全部定义。新的依赖关系和任务会在训练的过程中不断被建立。同时上述的任务和依赖数据也会不断增加,从而通过该列表生成一个能够完整表述当前所有任务和数据关系的动态全局任务图表。
在建立了动态全局任务图表之后,对于每一个新增加的任务,都可以通过追溯及跟踪其输入数据的来源和当前状态,得知当下任务是否已经具备了可以开始运行的条件。
进一步地,步骤S10还可以包括:
获取所述第一运算任务对应的任务函数及输入数据;
基于所述输入数据及任务函数,生成所述第二运算任务对应的数据依赖关系;其中,所述输入数据包括第一输出结果和/或待训练数据和/或第二输出结果;
基于所述数据依赖关系,获取各个运算任务对应的当前任务状态;
将所述第一运算任务、任务函数、输入数据、当前任务状态及所述第二运算任务,生成动态全局任务图表;
将所述动态全局任务图表存储于分布式架构中。
本实施例中,基于第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态构建动态全局任务图表具体为:获取所述第一运算任务对应的任务函数及输入数据(如表1的方式进行表示和存储),基于所述输入数据及任务函数,生成所述第二运算任务对应的数据依赖关系(如表2方式存储);其中,所述输入数据包括第一输出结果和/或待训练数据和/或第二输出结果;基于所述数据依赖关系,获取各个运算任务对应的当前任务状态;将所述第一运算任务、任务函数、输入数据、当前任务状态及所述第二运算任务,生成动态全局任务图表(如表3方式存储);将所述动态全局任务图表存储于分布式架构中。根据上面的数据依赖关系,还可以构建出如图3的局部任务关系图,其中,淡色和虚线为表3中未包括的隐性关系。
在训练集群中,增加一个分布式全局依赖关系存储服务,依赖全局数据、任务。在保存前述数据和任务信息也同时保存其运行状态等附加信息,如下表3:
Figure BDA0002277720340000121
表3运算任务附加信息表
如上表3所示,第一运算任务t100的第三个子任务t100-3,对应的任务函数为拉取,对应的数据输入为t100_local_3,即任务id为t100-3的本地数据,对应的状态为完成,所在的处理节点为w1,并且,各个运算任务的状态顺序为:等待输入数据->等待部署->进行中->等待子任务->完成。
使用分布式存储服务保存任务关系的优势在于,此类架构已有容错及故障恢复机制,因此不必担心该服务在不稳定网络环境下的可用性。
该服务在保存管理任务状况的同时,也可以根据任务进程实时进行任务调度部署。
进一步地,基于本发明基于参数服务器的节点处理方法的第一实施例,提出本发明基于参数服务器的节点处理方法的第二实施例;如图4所示,步骤S20可以包括:
步骤S21,生成资源信息列表,其中,所述资源信息列表包括服务器节点信息及工作节点信息;
步骤S22,当第二运算任务达到部署条件时,根据所述资源信息列表进行部署调度,以将参数服务器对应的任务参数分配到服务器节点,且将工作节点对应的任务数据分配到对应的工作节点,其中,所述服务器节点与所述服务器节点信息对应,所述工作节点与所述工作节点信息对应;
步骤S23,实时检测所述服务器节点及工作节点中是否存在失效节点。
在本实施例中,全局任务调度器在得到动态全局任务图表的时候,会生成资源信息列表,资源信息列表中包含了参数服务器节点信息和工作节点信息,这里也包括了训练流程的信息如服务器节点负责的参数分片范围和工作节点负责的数据分片范围,和资源调度实时信息如空闲忙碌状态等。
当一个运算任务达成部署条件时,全局任务调度器会根据资源信息列表的信息进行部署调度。参数服务器相关的任务如参数更新会被分配到服务器节点,工作节点相关的任务如梯度下降会被分配到工作节点。
因此,只需要检测服务器节点或者工作节点是否失效即可。
进一步地,步骤S22之后,所述方法还可以包括:
通过所述服务器节点初始化神经网络参数分片,持续监听并接收所述资源信息列表中的第一任务信息后,执行所述第一任务信息,在完成执行所述第一任务信息时,实时发送至所述动态全局任务图表;
通过所述工作节点初始化数据分片,持续监听并接收所述资源信息列表中的第二任务信息后,执行所述第二任务信息,在完成执行所述第二任务信息时,实时发送至所述动态全局任务图表。
本实施例中,在进行部署调度之后,服务器节点开始工作,包括初始化神经网络参数分片,然后监听并接收所述资源信息列表中的第一任务信息后,执行所述第一任务信息,在完成执行所述第一任务信息时,实时发送至所述动态全局任务图表。
并且,工作节点也开始工作,包括初始化数据分片,持续监听并接收所述资源信息列表中的第二任务信息后,执行所述第二任务信息,在完成执行所述第二任务信息时,实时发送至所述动态全局任务图表。
很明显,服务器节点和工作节点除了初始数据有所差异外,在调度算法中已经没有逻辑上的区别,因此,任何服务器节点和工作节点的失效都不是独特的,不会对整体的训练任务造成致命影响。
并且,对于全局任务调度器来说,由于其本身和其所有的状态信息都得以保存在支持容错的分布存储服务内,任何时候,如果全局任务调度器自身节点失效,分布式存储服务都可以重新选拔新的节点,及时有效的恢复调度工作。
进一步地,基于本发明基于参数服务器的节点处理方法的第一实施例,提出本发明基于参数服务器的节点处理方法的第三实施例;如图5所示,步骤S40可以包括:
步骤S41,基于所述动态全局任务图表回溯任务关系,其中,所述任务关系包括所述失效任务与各个运算任务之间的任务关系;
步骤S42,根据各个运算任务对应的子任务的数量和优先级,给所述运算任务赋予优先级数值;
步骤S43,在第三运算任务的优先级数值与失效任务对应的优先级数值相差在预设范围时,通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据;
步骤S44,通过所述第三运算任务对应的节点基于所述任务数据执行计算操作。
在本实施例中,将所述失效节点部署到所述失效任务对应的失效节点以外的节点具体为:基于所述动态全局任务图表回溯任务关系,其中,所述任务关系包括所述失效任务与各个运算任务之间的任务关系;根据各个运算任务对应的子任务的数量和优先级,给所述运算任务赋予优先级数值;在第三运算任务的优先级数值与失效任务对应的优先级数值相差在预设范围时,通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据;通过所述第三运算任务对应的节点基于所述任务数据执行计算操作。
节点失效包括:1、已部署任务节点任务完成前失效;2、已部署任务依赖数据节点失效。
针对节点失效情况1,在已部署任务节点任务完成前失效时,根据上表3中的任务状态信息表的内容,任务id为t102的任务运行【推送】函数,被部署至w2节点,但该节点任务为【超时】状态,即调度器无法在允许时间内与w2节点取得通讯,在再次与w2节点恢复通讯前,调度器会认定w2节点为失效状态,此时,w2不会得到新的任务部署,而t102任务将重新回到等待部署状态。若此时有节点w4为空闲状态,则调度器会将任务t102部署到w4节点,w4将正常拉取任务函数及输入数据,进行任务运算,保存并记录输出的任务信息。
针对节点失效情况2,在已部署任务依赖数据节点失效时,返溯并重新建立依赖,具体为:延续针对节点失效情况1,假设此时已经将t102重新部署至w4,w4现在正在从(假定为)w6节点获取所需数据t96_out,而此时w6节点失效,w4无法成功获取输入数据。
此时,任务调度器认定w6失效,并取消w4节点上对于t102的部署。t102现在会变为等待输入数据状态,节点安排变为空值。接下来,任务调度器会根据任务状态图表,回溯查找上游任务t96的任务状态。假设调度器找到了该t96状态条目如下表4:
任务id 任务函数 数据输入 状态 节点
t96 梯度下降 D[35],t93_out,… 完成 w6
表4 t96的任务状态表
由于w6失效,因此,需要重新运行t96,所以,任务调度器现在会将t96的状态改为等待部署,在找到新的空闲节点w7时,重新将t96部署至w7,然后正常运行任务。
如果w7在运行t96的时候遇到进一步的上游节点失效问题,则根据上面的方式类推,直至上游任务成功。如果w7成功运行并完成,t102所需的输入数据即可就绪,此时调度器可以正常进行t102的部署,此时被安排部署的节点可能是是任何的空闲节点。
通过上述方式,当系统检测到节点失效的情况时,全局调度器可以根据当前的任务关系图表迅速回溯任务关系,将失败的任务根据全局最优的情况重新部署至另外的一个节点上,如果失效的节点造成了任务所依赖数据的缺失,则调度器回溯任务关系,从最近的检查点重新播放任务路径,直至重建依赖数据。
在调度过程中,针对进展落后或因节点失效产生的恢复任务,为了防止任务掉队成为全局瓶颈,可以采用优先级的机制。每个任务根据下游任务的数量和它们的优先级,被赋予不同的优先级数值。落后或恢复任务,由于下游待启动任务较多,通常会得到更高的优先级。
当优先级相差到一定程度的时候,一个节点可能会接受到本来不由该节点负责的任务,这可能会造成该节点进行一些额外的工作,例如临时从其他节点拷贝数据。当这些额外的工作可以帮助系统避免全局瓶颈时,执行它们还是非常有价值的。即本来不由该任务的节点负责该任务,牺牲该节点自己的效率多做一些工作,保证任务的完成,从而保证整体运行。具体参阅图3,在此不再赘述。
进一步地,步骤S43可以包括:
通过所述第三运算任务对应的节点从所述失效任务对应的节点拷贝所述任务数据;
或通过所述第三运算任务对应的节点从所述分布式架构中获取所述任务数据。
第三运算任务对应的节点获取任务数据的方式有:从失效任务对应的节点获取,或者是从分布式架构中获取,当然,也可以从动态全局任务图表。
在获取到任务数据后,第三运算任务对应的节点执行任务数据对应的操作,以保证任务不掉队。具体参阅图3,在此不再赘述。
本发明还提供一种基于参数服务器的节点处理装置。本发明所述基于参数服务器的节点处理装置包括:
构建模块,用于获取参数服务器全局资源信息,以构建动态全局任务图表;
检测模块,用于基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
判断模块,用于若是,则将所述失效节点对应的运算任务判定为失效任务;
部署模块,用于将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
进一步地,所述全局资源信息包括运算任务对应的输出结果、待训练数据;所述构建模块还用于:
获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;其中,所述第一运算任务或第二运算任务为所述运算任务中任意一个任务;
将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;
基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表。
进一步地,所述构建模块还用于:
获取所述第一运算任务对应的任务函数及输入数据;
基于所述输入数据及任务函数,生成所述第二运算任务对应的数据依赖关系;其中,所述输入数据包括第一输出结果和/或待训练数据和/或第二输出结果;
基于所述数据依赖关系,获取各个运算任务对应的当前任务状态;
将所述第一运算任务、任务函数、输入数据、当前任务状态及所述第二运算任务,生成动态全局任务图表;
将所述动态全局任务图表存储于分布式架构中。
进一步地,所述检测模块还用于:
生成资源信息列表,其中,所述资源信息列表包括服务器节点信息及工作节点信息;
当第二运算任务达到部署条件时,根据所述资源信息列表进行部署调度,以将参数服务器对应的任务参数分配到服务器节点,且将工作节点对应的任务数据分配到对应的工作节点,其中,所述服务器节点与所述服务器节点信息对应,所述工作节点与所述工作节点信息对应;
实时检测所述服务器节点及工作节点中是否存在失效节点。
进一步地,所述检测模块还用于:
通过所述服务器节点初始化神经网络参数分片,持续监听并接收所述资源信息列表中的第一任务信息后,执行所述第一任务信息,在完成执行所述第一任务信息时,实时发送至所述动态全局任务图表;
通过所述工作节点初始化数据分片,持续监听并接收所述资源信息列表中的第二任务信息后,执行所述第二任务信息,在完成执行所述第二任务信息时,实时发送至所述动态全局任务图表。
可选地,所述部署模块还用于:
基于所述动态全局任务图表回溯任务关系,其中,所述任务关系包括所述失效任务与各个运算任务之间的任务关系;
根据各个运算任务对应的子任务的数量和优先级,给所述运算任务赋予优先级数值;
在第三运算任务的优先级数值与失效任务对应的优先级数值相差在预设范围时,通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据;
通过所述第三运算任务对应的节点基于所述任务数据执行计算操作。
可选地,所述部署模块,还用于:
通过所述第三运算任务对应的节点从所述失效任务对应的节点拷贝所述任务数据;
或通过所述第三运算任务对应的节点从所述分布式架构中获取所述任务数据。
本发明还提供一种计算机存储介质。
本发明计算机存储介质上存储有基于参数服务器的节点处理程序,所述基于参数服务器的节点处理程序被处理器执行时实现如上所述的基于参数服务器的节点处理方法的步骤。
其中,在所述处理器上运行的基于参数服务器的节点处理程序被执行时所实现的方法可参照本发明基于参数服务器的节点处理方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台基于参数服务器的节点处理设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于参数服务器的节点处理方法,其特征在于,所述基于参数服务器的节点处理方法包括如下步骤:
获取参数服务器的全局资源信息,以构建动态全局任务图表;
基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
若是,则将所述失效节点对应的运算任务判定为失效任务;
将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
2.如权利要求1所述的基于参数服务器的节点处理方法,其特征在于,所述全局资源信息包括运算任务对应的输出结果、待训练数据;所述获取参数服务器全局资源信息,以构建动态全局任务图表的步骤包括:
获取第一运算任务对应的第一输出结果和/或第二运算任务对应的待训练数据;
将所述第一输出结果和/或待训练数据输入所述第二运算任务,以供所述第二运算任务对所述第一输出结果和/或待训练数据进行运算,得到第二输出结果;
基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及各个运算任务的当前任务状态,生成动态全局任务图表。
3.如权利要求2所述的基于参数服务器的节点处理方法,其特征在于,所述基于所述第一运算任务、第一输出结果、待训练数据、第二输出结果、所述第二运算任务及所述各个运算任务的当前任务状态,生成动态全局任务图表的步骤包括:
获取所述第一运算任务对应的任务函数及输入数据;
基于所述输入数据及任务函数,生成所述第二运算任务对应的数据依赖关系;其中,所述输入数据包括第一输出结果和/或待训练数据和/或第二输出结果;
基于所述数据依赖关系,获取各个运算任务对应的当前任务状态;
将所述第一运算任务、任务函数、输入数据、当前任务状态及所述第二运算任务,生成动态全局任务图表;
将所述动态全局任务图表存储于分布式架构中。
4.如权利要求3所述的基于参数服务器的节点处理方法,其特征在于,所述基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点的步骤包括:
生成资源信息列表,其中,所述资源信息列表包括服务器节点信息及工作节点信息;
当第二运算任务达到部署条件时,根据所述资源信息列表进行部署调度,以将参数服务器对应的任务参数分配到服务器节点,且将工作节点对应的任务数据分配到对应的工作节点,其中,所述服务器节点与所述服务器节点信息对应,所述工作节点与所述工作节点信息对应;
实时检测所述服务器节点及工作节点中是否存在失效节点。
5.如权利要求4所述的基于参数服务器的节点处理方法,其特征在于,所述根据所述资源信息列表进行部署调度的步骤之后,所述方法还包括:
通过所述服务器节点初始化神经网络参数分片,持续监听并接收所述资源信息列表中的第一任务信息后,执行所述第一任务信息,在完成执行所述第一任务信息时,实时发送至所述动态全局任务图表;
通过所述工作节点初始化数据分片,持续监听并接收所述资源信息列表中的第二任务信息后,执行所述第二任务信息,在完成执行所述第二任务信息时,实时发送至所述动态全局任务图表。
6.如权利要求1所述的基于参数服务器的节点处理方法,其特征在于,所述将所述失效节点部署到所述失效任务对应的失效节点以外的节点的步骤包括:
基于所述动态全局任务图表回溯任务关系,其中,所述任务关系包括所述失效任务与各个运算任务之间的任务关系;
根据各个运算任务对应的子任务的数量和优先级,给所述运算任务赋予优先级数值;
在第三运算任务的优先级数值与失效任务对应的优先级数值相差在预设范围时,通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据;
通过所述第三运算任务对应的节点基于所述任务数据执行计算操作。
7.如权利要求6所述的基于参数服务器的节点处理方法,其特征在于,所述通过所述第三运算任务对应的节点获取所述失效任务对应的任务数据的步骤包括:
通过所述第三运算任务对应的节点从所述失效任务对应的节点拷贝所述任务数据;
或通过所述第三运算任务对应的节点从所述分布式架构中获取所述任务数据。
8.一种基于参数服务器的节点处理装置,其特征在于,所述基于参数服务器的节点处理装置包括:
构建模块,用于获取参数服务器全局资源信息,以构建动态全局任务图表;
检测模块,用于基于所述动态全局任务图表,检测所述全局资源信息中是否存在失效节点;
判断模块,用于若是,则将所述失效节点对应的运算任务判定为失效任务;
部署模块,用于将所述失效任务部署到所述失效任务对应的失效节点以外的节点。
9.一种基于参数服务器的节点处理设备,其特征在于,所述基于参数服务器的节点处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于参数服务器的节点处理程序,所述基于参数服务器的节点处理程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于参数服务器的节点处理方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有基于参数服务器的节点处理程序,所述基于参数服务器的节点处理程序被处理器执行时实现如权利要求1至7中任一项所述的基于参数服务器的节点处理方法的步骤。
CN201911128886.7A 2019-11-18 2019-11-18 基于参数服务器的节点处理方法、装置、设备及存储介质 Active CN111147541B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911128886.7A CN111147541B (zh) 2019-11-18 2019-11-18 基于参数服务器的节点处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911128886.7A CN111147541B (zh) 2019-11-18 2019-11-18 基于参数服务器的节点处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111147541A true CN111147541A (zh) 2020-05-12
CN111147541B CN111147541B (zh) 2022-11-15

Family

ID=70517163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911128886.7A Active CN111147541B (zh) 2019-11-18 2019-11-18 基于参数服务器的节点处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111147541B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756602A (zh) * 2020-06-29 2020-10-09 上海商汤智能科技有限公司 神经网络模型训练中的通信超时检测方法和相关产品
CN111753997A (zh) * 2020-06-28 2020-10-09 北京百度网讯科技有限公司 分布式训练方法、系统、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006885A1 (en) * 2007-06-28 2009-01-01 Pattabhiraman Ramesh V Heartbeat distribution that facilitates recovery in the event of a server failure during a user dialog
US20110228668A1 (en) * 2010-03-22 2011-09-22 Infosys Technologies Limited Method and system for automatic failover of distributed query processing using distributed shared memory
CN103064728A (zh) * 2012-12-13 2013-04-24 河南工业大学 一种MapReduce任务的容错调度方法
US20140181839A1 (en) * 2012-02-09 2014-06-26 Tencent Technology (Shenzhen) Company Limited Capacity-based multi-task scheduling method, apparatus and system
CN104965754A (zh) * 2015-03-31 2015-10-07 腾讯科技(深圳)有限公司 任务调度方法及任务调度装置
CN105719126A (zh) * 2016-01-22 2016-06-29 上海晶赞科技发展有限公司 一种基于生命周期模型的互联网大数据任务调度的系统及方法
CN108304255A (zh) * 2017-12-29 2018-07-20 北京城市网邻信息技术有限公司 分布式任务调度方法及装置、电子设备及可读存储介质
CN108984284A (zh) * 2018-06-26 2018-12-11 杭州比智科技有限公司 基于离线计算平台的dag任务调度方法及装置
CN109445921A (zh) * 2018-10-24 2019-03-08 东北石油大学 一种分布式数据任务处理方法及装置
CN109710289A (zh) * 2018-12-21 2019-05-03 南京邮电大学 基于深度强化学习算法的分布式参数服务器的更新方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006885A1 (en) * 2007-06-28 2009-01-01 Pattabhiraman Ramesh V Heartbeat distribution that facilitates recovery in the event of a server failure during a user dialog
US20110228668A1 (en) * 2010-03-22 2011-09-22 Infosys Technologies Limited Method and system for automatic failover of distributed query processing using distributed shared memory
US20140181839A1 (en) * 2012-02-09 2014-06-26 Tencent Technology (Shenzhen) Company Limited Capacity-based multi-task scheduling method, apparatus and system
CN103064728A (zh) * 2012-12-13 2013-04-24 河南工业大学 一种MapReduce任务的容错调度方法
CN104965754A (zh) * 2015-03-31 2015-10-07 腾讯科技(深圳)有限公司 任务调度方法及任务调度装置
CN105719126A (zh) * 2016-01-22 2016-06-29 上海晶赞科技发展有限公司 一种基于生命周期模型的互联网大数据任务调度的系统及方法
CN108304255A (zh) * 2017-12-29 2018-07-20 北京城市网邻信息技术有限公司 分布式任务调度方法及装置、电子设备及可读存储介质
CN108984284A (zh) * 2018-06-26 2018-12-11 杭州比智科技有限公司 基于离线计算平台的dag任务调度方法及装置
CN109445921A (zh) * 2018-10-24 2019-03-08 东北石油大学 一种分布式数据任务处理方法及装置
CN109710289A (zh) * 2018-12-21 2019-05-03 南京邮电大学 基于深度强化学习算法的分布式参数服务器的更新方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JILIN ZHANG等: "An Adaptive Synchronous Parallel Strategy for Distributed Machine Learning", 《IEEE ACCESS》 *
YOUNG_WIN: "分布式机器学习训练方案", 《CSDN博客HTTPS://BLOG.CSDN.NET/CYMY001/ARTICLE/DETAILS/99698411》 *
王征宇: "神经网络集成分类方法及其在并行计算环境中的应用研究", 《中国优秀博硕士学位论文全文数据库(博士)信息科技辑》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111753997A (zh) * 2020-06-28 2020-10-09 北京百度网讯科技有限公司 分布式训练方法、系统、设备及存储介质
CN111753997B (zh) * 2020-06-28 2021-08-27 北京百度网讯科技有限公司 分布式训练方法、系统、设备及存储介质
CN111756602A (zh) * 2020-06-29 2020-10-09 上海商汤智能科技有限公司 神经网络模型训练中的通信超时检测方法和相关产品
CN111756602B (zh) * 2020-06-29 2022-09-27 上海商汤智能科技有限公司 神经网络模型训练中的通信超时检测方法和相关产品

Also Published As

Publication number Publication date
CN111147541B (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
US20200133666A1 (en) Application lifecycle management system
US8954579B2 (en) Transaction-level health monitoring of online services
US9367301B1 (en) Dynamic update of a distributed message processing system
US20150100829A1 (en) Method and system for selecting and executing test scripts
US20150100832A1 (en) Method and system for selecting and executing test scripts
CN107016480B (zh) 任务调度方法、装置及系统
CN111580861A (zh) 用于计算机环境迁移的基于模式的人工智能计划器
CN113569987A (zh) 模型训练方法和装置
US20150100830A1 (en) Method and system for selecting and executing test scripts
CN102609296A (zh) 虚拟机分支和并行执行
US20140324935A1 (en) Matrix computation framework
CN113609019B (zh) 一种容器云应用跨集群部署的流水线方法及装置
US20150100831A1 (en) Method and system for selecting and executing test scripts
US20230088784A1 (en) Proactively detecting and predicting potential breakage or support issues for impending code changes
WO2020232951A1 (zh) 一种任务执行方法及装置
CN111147541B (zh) 基于参数服务器的节点处理方法、装置、设备及存储介质
Han et al. Checkpointing workflows for fail-stop errors
US11962456B2 (en) Automated cross-service diagnostics for large scale infrastructure cloud service providers
US9380001B2 (en) Deploying and modifying a service-oriented architecture deployment environment model
US20100186003A1 (en) Per Group Verification
US20200310828A1 (en) Method, function manager and arrangement for handling function calls
CN113434283B (zh) 服务调度方法及装置、服务器、计算机可读存储介质
CN112860548A (zh) 代码自动检测方法、装置、电子设备及存储介质
CN111831424B (zh) 一种任务处理方法、系统及装置
CN112148420B (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