【技术实现步骤摘要】
分布式任务处理与异步模型训练系统、方法、设备及介质
[0001]本申请涉及互联网
,尤其涉及一种分布式任务处理与异步模型训练系统、方法、设备及介质。
技术介绍
[0002]PS
‑
Worker架构是深度学习异步训练常见的解决方案之一。在PS
‑
Worker架构中,将节点分为两类:参数服务器(Parameter Server,PS)和工作节点(Worker),PS用于存储模型训练所需的参数,Worker负责模型训练得到参数的梯度。在每个训练迭代过程中,Worker从PS获取模型训练所需的参数,然后基于参数进行模型训练得到参数的梯度,并将得参数的梯度返回给PS,PS聚合各Worker返回的参数的梯度,然后更新参数以用于后续迭代过程。
[0003]由于PS侧会同时收到来自多个Worker的多个任务请求,PS通过多线程处理任务请求后将需要返回的报文(即模型训练所需的参数)通过硬件网卡发送,在任务请求数量较多的情况下,硬件网卡侧需要同时发送大量的报文,不同任务请求对应的报文会共享网卡带宽,较大的并发数将会导致每个报文的到达时间都被延长,影响整体训练速度。因此,在PS使用的网卡资源有限的情况下,如何提升PS的响应速度是分布式训练过程中的一个重要课题。
技术实现思路
[0004]本申请的多个方面提供一种分布式任务处理与异步模型训练系统、方法、设备及介质,用以提高整体的任务处理效率和响应及时性。
[0005]本申请实施例提供一种一种分布式任务处理系统,用于对目 ...
【技术保护点】
【技术特征摘要】
1.一种分布式任务处理系统,其特征在于,用于对目标作业任务进行处理,所述目标作业任务包括可并行执行的多个子任务,所述系统包括:用于执行所述多个子任务的多个第一节点,以及用于为所述多个第一节点提供执行子任务所需的任务数据的多个第二节点;每个第一节点对应所述多个第二节点中的至少两个第二节点,用于向所述至少两个第二节点分别发送任务请求,并根据所述至少两个第二节点根据所述任务请求提供的至少两个任务数据执行对应的子任务;其中,所述至少两个第二节点向同一第一节点提供不同的任务数据;每个第二节点对应所述多个第一节点中至少两个第一节点,用于接收所述至少两个第一节点发送的至少两个任务请求,获取所述至少两个任务请求对应的至少两个任务数据;根据所述至少两个第一节点的调度优先级,按照预设的并发数N,在每个发送窗口从所述至少两个任务数据中读取N个任务数据,通过物理网卡将所述N个任务数据发送给当前被调度到的N个第一节点;其中,N是正整数,且小于所述第一节点的数量。2.根据权利要求1所述的系统,其特征在于,每个第二节点具体用于:获取所述至少两个第一节点对应的目标参数,根据所述至少两个第一节点的调度优先级,结合所述至少两个第一节点对应的目标参数,对所述至少两个任务数据进行排序;按照预设的并发数N,在每个发送窗口从排序后的至少两个任务数据中读取排在最前面的N个任务数据;其中,所述目标参数用于保证每个第一节点对应的任务数据在设定时间内能够被发送出去。3.根据权利要求2所述的系统,其特征在于,每个第二节点获取所述至少两个第一节点对应的目标参数,包括:针对所述至少两个第一节点中每个第一节点,从每个第一节点发送的任务请求中获取所述第一节点的当前任务轮数,作为所述第一节点对应的目标参数,所述当前任务轮数表示第一节点当前执行子任务的轮数。4.根据权利要求3所述的系统,其特征在于,每个第二节点还用于维护第一发送任务队列,所述第一发送任务队列用于存储所述多个任务数据;相应地,每个第二节点根据所述至少两个第一节点的调度优先级,结合所述至少两个第一节点对应的目标参数,对所述至少两个任务数据进行排序,包括:每当获取到一个任务请求对应的任务数据时,根据所述任务数据以及所述第一发送任务队列中已有任务数据对应的第一节点的当前任务轮数,确定所述任务数据在所述第一发送任务队列中的目标位置范围,其中,同一位置范围内的任务数据对应的第一节点的当前任务轮数相同;根据所述任务数据以及所述目标位置范围内已有任务数据对应的第一节点的调度优先级,将所述任务数据插入所述目标位置范围内已有任务数据中。5.一种异步模型训练系统,其特征在于,用于执行面向深度学习的异步模型训练任务,所述异步模型训练任务包括可并行执行的多个模型训练子任务,所述系统包括多个参数服务器和多个工作节点;每个工作节点,用于向所述多个参数服务器中至少两个参数服务器发送参数获取请求,并根据所述至少两个参数获取请求提供的至少两个模型参数执行对应的模型训练子任务;其中,所述至少两个参数服务器向同一工作节点提供不同的模型参数;
每个参数服务器负责为所述多个工作节点中至少两个工作节点提供模型参数,用于接收所述至少两个工作节点发送的参数获取请求,获取所述至少两个参数获取请求对应的至少两个模型参数并将所述至少两个模型参数封装成至少两个报文;根据所述至少两个工作节点的调度优先级,按照预设的并发数N,在每个发送窗口从所述至少两个报文中读取N个报文,通过物理网卡将所述N个报文发送给当前被调度到的N个工作节点;其中,N是正整数,且小于所述工作节点的数量。6.一种分布式任务处理方法,其特征在于,应用于分布式任务处理系统中多个第二节点中的任一第二节点,所述方法包括:接收所述分布式任务处理系统中多个第一节点中的至少两个第一节点发送的至少两个任务请求,获取所述至少两个任务请求对应的至少两个任务数据;根据所述至少两个第一节点的调度优先级,按照预设的并发数N,在每个发送窗口从所述至少两个任务数...
【专利技术属性】
技术研发人员:张泽超,董建波,李豪,
申请(专利权)人:阿里巴巴中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。