CN111866187A - 分布式深度学习推理云平台任务调度方法 - Google Patents

分布式深度学习推理云平台任务调度方法 Download PDF

Info

Publication number
CN111866187A
CN111866187A CN202010865843.3A CN202010865843A CN111866187A CN 111866187 A CN111866187 A CN 111866187A CN 202010865843 A CN202010865843 A CN 202010865843A CN 111866187 A CN111866187 A CN 111866187A
Authority
CN
China
Prior art keywords
task
cloud platform
state
parallel
deep learning
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
CN202010865843.3A
Other languages
English (en)
Other versions
CN111866187B (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.)
Hyperai Cloud Technology Beijing Co ltd
Original Assignee
Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences
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 Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences filed Critical Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences
Publication of CN111866187A publication Critical patent/CN111866187A/zh
Application granted granted Critical
Publication of CN111866187B publication Critical patent/CN111866187B/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供的一种分布式深度学习推理云平台任务调度方法,包括以下步骤:S1.将用户在云平台上创建的任务输入任务队列中;S2.任务控制器从任务队列中提取目标任务,并将目标任务对应的服务分割成若干子服务进行分布式处理;S3.并行模式选择器根据子服务生成相应的模型;S4.任务执行器根据并行模式选择器所产生的模型执行对应的子服务;通过本发明,能够将用户所提交的任务在云环境下进行分布式处理,对于分布式操作下的每一个节点选择加速卡资源状态下的最优并行参数,从而提高任务的运行效率,并能够确保云环境下的加速卡设备的利用率。

Description

分布式深度学习推理云平台任务调度方法
技术领域
本发明涉及一种服务调度方法,尤其涉及一种分布式深度学习推理云平台任务调度方法。
背景技术
深度学习的训练与推理任务是一种计算密集型任务,但推理任务与训练所不同的是推理任务的计算周期不是长时间与固定某一时间段,而是随着时间的变化而变化,通常在白天到夜晚计算密集流量高,而在夜晚至凌晨流量低计算量相对较少。现有技术中,对于云平台的推理任务的运行效率较低,而且云环境下的加速卡设备的利用率也较低。
因此,为了解决上述技术问题,亟需提出一种新的技术手段。
发明内容
有鉴于此,本发明的目的是提供一种分布式深度学习推理云平台任务调度方法,能够将用户所提交的任务在云环境下进行分布式处理,对于分布式操作下的每一个节点选择加速卡资源状态下的最优并行参数,从而提高任务的运行效率,并能够确保云环境下的加速卡设备的利用率。
本发明提供的一种分布式深度学习推理云平台任务调度方法,包括以下步骤:
S1.将用户在云平台上创建的任务输入任务队列中;
S2.任务控制器从任务队列中提取目标任务,并将目标任务对应的服务分割成若干子服务进行分布式处理;
S3.并行模式选择器根据子服务生成相应的模型;
S4.任务执行器根据并行模式选择器所产生的模型执行对应的子服务。
进一步,步骤S2中,在任务控制器从任务队列中提取目标任务前,由资源监控器判断当前是否可执行任务:
若当前集群资源无空闲或者空闲资源较低,那么任务队列中的任务将处于等待状态;
若当前集群资源具有空余并满足任务执行需求时,则判断当前可执行任务。
进一步,任务控制器提取目标任务具体如下:
当前可执行任务时,任务控制器从任务队列中选择最先进入到任务队列的任务作为目标任务。
进一步,步骤S2中,任务控制器判断目标任务是否具有对应的服务,若不存在,则创建目标任务的服务。
进一步,并行模式选择器基于Q-learning算法选择并行参数并生成相应的模型,具体如下:
基于任务完成时间T、加速卡利用率U以及加速卡现存使用量M构建奖励函数Reward:
Reward=μ1N(Tm-T)+μ2N(Um-U)+μ3N(Mm-M);
其中,μ1、μ2和μ3均为调整系数,N(·)为归一化函数;
构建状态集S,其中,状态集S由推理平均准确率A、推理任务完成时间T、加速卡利用率U和加速卡现存使用量M构成;
构建动作集A,该动作集表示并行参数的选择,包括数据并行度(1,2,4,8,16,32),模型并行度(1,2,4,8,16,32),batch size(1,4,8,16,32,64,128);
构建奖励矩阵R:奖励矩阵R中相同行不同列设置为动作集,不同行相同列设置为状态集;由于相同的并行参数在一次任务中只能选择一次,对状态转移进行限制,当状态不可转移时设置为0,可转移时设置为1;
Q值表训练:采用多个典型的并行模型对Q值表进行训练,其中,Q值表的更新公式为:
Qt+1=rt+γmaxQt(s',a');γ为折扣因子,rt为当前所获得的实际奖励,s'表示下一个状态,a'表示下一个动作;
在Q值表训练完成后,并行模式选择器根据子服务在训练好的Q指标中寻找满足奖励函数的最优路径,并通过此路径的动作集参数确定当前资源状态下的并行模型。
本发明的有益效果:通过本发明,能够将用户所提交的任务在云环境下进行分布式处理,对于分布式操作下的每一个节点选择加速卡资源状态下的最优并行参数,从而提高任务的运行效率,并能够确保云环境下的加速卡设备的利用率。
附图说明
下面结合附图和实施例对本发明作进一步描述:
图1为分布式深度学习推理云平台任务调度与加速系统原理图。
图2为本发明的流程图。
具体实施方式
以下结合说明书附图对本发明做出进一步详细说明:
本发明提供的一种分布式深度学习推理云平台任务调度方法,包括以下步骤:
S1.将用户在云平台上创建的任务输入任务队列中;任务队列用于起到缓冲作用,能够提高系统的并发量;任务队列可以采用kafka、rabbitmq等实现,并通过k8s的deployment API实现扩缩,采用service API的方式对外暴露服务与负载均衡。
S2.任务控制器从任务队列中提取目标任务,并将目标任务对应的服务分割成若干子服务进行分布式处理;
S3.并行模式选择器根据子服务生成相应的模型;
S4.任务执行器根据并行模式选择器所产生的模型执行对应的子服务;通过本发明,能够将用户所提交的任务在云环境下进行分布式处理,对于分布式操作下的每一个节点选择加速卡资源状态下的最优并行参数,从而提高任务的运行效率,并能够确保云环境下的加速卡设备的利用率。
对于任务执行器,一是负责将并行模式选择器生成的并行模型与分配的作业进行推理运算;二是通过检测本节点的加速器的利用率动态地通过并行模型选择器调整模型并行度,当资源充足的时候会加大并行度提高节点吞吐量并保证资源利用率。任务执行器通过service的方式对外暴露服务,针对于不同的模型会对应不同的服务。任务执行器与并行模式选择器通过sidecar的模式封装为k8s的pod对象。
由于任务执行器与并行模型选择器处于同一个pod当中因此并行模型选择器生成的模型文件可以与任务执行器进行共享。
任务执行器通过service的方式对外暴露API接口,当任务控制器生成的子服务会通过接口调用的形式将子服务发送给任务执行器。
任务执行器会异步的定时循环监听本节点的资源使用率,如加速卡的使用率、显存等。并根据本节点资源使用情况再次调用并行模型生成器,生成新的模型,并替代旧的模型。
本实施例中,步骤S2中,在任务控制器从任务队列中提取目标任务前,由资源监控器判断当前是否可执行任务:
若当前集群资源无空闲或者空闲资源较低,那么任务队列中的任务将处于等待状态;此处空闲资源较低是指当前的空闲资源不能满足当前任务的执行需求;
若当前集群资源具有空余并满足任务执行需求时,则判断当前可执行任务。
任务控制器将目标任务所对应的服务分割成子服务后,根据响应服务的对应节点的加速器资源余量对子服务按比例分配,也就是说,某一个响应服务的节点的加速器的资源余量充足,那么该节点所分配的自服务较多,如果加速器的资源余量不足,则分配的子服务较少。
本实施例中,任务控制器提取目标任务具体如下:
当前可执行任务时,任务控制器从任务队列中选择最先进入到任务队列的任务作为目标任务,也就是说,当用户提交任务至任务列表时,需记录所提交任务的时刻,便于能够确定目标任务。
本实施例中,步骤S2中,任务控制器判断目标任务是否具有对应的服务,若不存在,则创建目标任务的服务,也就是说,如果目标任务具有相对应的服务,则直接执行服务的划分,如果目标任务不具有相对应的服务,则需要进行本步骤。
任务控制器会定时轮询集群节点的状态,当节点任务执行容器空闲时会进行对应服务的缩容,当节点任务执行容器繁忙时会进行对应服务的扩容。任务控制器通过容器的方式进行封装,通过k8s自定义资源CRD的方式对此平台的推理任务进行封装与控制,自定义资源的属性包括推理使用的对应模型服务、推理数据量。通过HPA控制器对生成的任务执行pod对象进行动态扩缩。
本实施例中,并行模式选择器基于Q-learning算法选择并行参数并生成相应的模型,具体如下:
基于任务完成时间T、加速卡利用率U以及加速卡现存使用量M构建奖励函数Reward:
Reward=μ1N(Tm-T)+μ2N(Um-U)+μ3N(Mm-M);
其中,μ1、μ2和μ3均为调整系数,N(·)为归一化函数;
构建状态集S,其中,状态集S由推理平均准确率A、推理任务完成时间T、加速卡利用率U和加速卡现存使用量M构成;
构建动作集A,该动作集表示并行参数的选择,包括数据并行度(1,2,4,8,16,32),模型并行度(1,2,4,8,16,32),batch size(1,4,8,16,32,64,128);
构建奖励矩阵R:奖励矩阵R中相同行不同列设置为动作集,不同行相同列设置为状态集;由于相同的并行参数在一次任务中只能选择一次,对状态转移进行限制,当状态不可转移时设置为0,可转移时设置为1;
Q值表训练:采用多个典型的并行模型对Q值表进行训练,其中,Q值表的更新公式为:
Qt+1=rt+γmaxQt(s',a');γ为折扣因子,rt为当前所获得的实际奖励,s'表示下一个状态,a'表示下一个动作;
在Q值表训练完成后,并行模式选择器根据子服务在训练好的Q指标中寻找满足奖励函数的最优路径,并通过此路径的动作集参数确定当前资源状态下的并行模型。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (5)

1.一种分布式深度学习推理云平台任务调度方法,其特征在于:包括以下步骤:
S1.将用户在云平台上创建的任务输入任务队列中;
S2.任务控制器从任务队列中提取目标任务,并将目标任务对应的服务分割成若干子服务进行分布式处理;
S3.并行模式选择器根据子服务生成相应的模型;
S4.任务执行器根据并行模式选择器所产生的模型执行对应的子服务。
2.根据权利要求1所述分布式深度学习推理云平台任务调度方法,其特征在于:步骤S2中,在任务控制器从任务队列中提取目标任务前,由资源监控器判断当前是否可执行任务:
若当前集群资源无空闲或者空闲资源较低,那么任务队列中的任务将处于等待状态;
若当前集群资源具有空余并满足任务执行需求时,则判断当前可执行任务。
3.根据权利要求2所述分布式深度学习推理云平台任务调度方法,其特征在于:任务控制器提取目标任务具体如下:
当前可执行任务时,任务控制器从任务队列中选择最先进入到任务队列的任务作为目标任务。
4.根据权利要求1所述分布式深度学习推理云平台任务调度方法,其特征在于:步骤S2中,任务控制器判断目标任务是否具有对应的服务,若不存在,则创建目标任务的服务。
5.根据权利要求1所述分布式深度学习推理云平台任务调度方法,其特征在于:并行模式选择器基于Q-learning算法选择并行参数并生成相应的模型,具体如下:
基于任务完成时间T、加速卡利用率U以及加速卡现存使用量M构建奖励函数Reward:
Reward=μ1N(Tm-T)+μ2N(Um-U)+μ3N(Mm-M);
其中,μ1、μ2和μ3均为调整系数,N(·)为归一化函数;
构建状态集S,其中,状态集S由推理平均准确率A、推理任务完成时间T、加速卡利用率U和加速卡现存使用量M构成;
构建动作集A,该动作集表示并行参数的选择,包括数据并行度(1,2,4,8,16,32),模型并行度(1,2,4,8,16,32),batch size(1,4,8,16,32,64,128);
构建奖励矩阵R:奖励矩阵R中相同行不同列设置为动作集,不同行相同列设置为状态集;由于相同的并行参数在一次任务中只能选择一次,对状态转移进行限制,当状态不可转移时设置为0,可转移时设置为1;
Q值表训练:采用多个典型的并行模型对Q值表进行训练,其中,Q值表的更新公式为:
Qt+1=rt+γmax Qt(s',a');γ为折扣因子,rt为当前所获得的实际奖励,s'表示下一个状态,a'表示下一个动作;
在Q值表训练完成后,并行模式选择器根据子服务在训练好的Q指标中寻找满足奖励函数的最优路径,并通过此路径的动作集参数确定当前资源状态下的并行模型。
CN202010865843.3A 2020-06-30 2020-08-25 分布式深度学习推理云平台任务调度方法 Active CN111866187B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010619405 2020-06-30
CN2020106194059 2020-06-30

Publications (2)

Publication Number Publication Date
CN111866187A true CN111866187A (zh) 2020-10-30
CN111866187B CN111866187B (zh) 2022-10-04

Family

ID=72968208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010865843.3A Active CN111866187B (zh) 2020-06-30 2020-08-25 分布式深度学习推理云平台任务调度方法

Country Status (1)

Country Link
CN (1) CN111866187B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112948109A (zh) * 2021-02-20 2021-06-11 山东英信计算机技术有限公司 一种ai计算集群的配额弹性调度方法、装置及介质
CN113204434A (zh) * 2021-07-05 2021-08-03 易纳购科技(北京)有限公司 基于k8s的计划任务执行方法、装置及计算机设备
CN113347430A (zh) * 2021-05-13 2021-09-03 北京睿芯高通量科技有限公司 一种硬件转码加速设备的分布式调度装置及其使用方法
CN113568757A (zh) * 2021-09-22 2021-10-29 中建电子商务有限责任公司 一种基于深度学习的大规模分布式推理引擎及系统
CN116578415A (zh) * 2023-04-26 2023-08-11 中国人民解放军92942部队 一种面向大样本负载仿真的并行方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109034396A (zh) * 2018-07-11 2018-12-18 北京百度网讯科技有限公司 用于处理分布式集群中的深度学习作业的方法和装置
US20190228303A1 (en) * 2018-01-25 2019-07-25 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for scheduling resource for deep learning framework
US20190324856A1 (en) * 2018-04-18 2019-10-24 EMC IP Holding Company LLC Optimization of checkpoint operations for deep learning computing
CN110399222A (zh) * 2019-07-25 2019-11-01 北京邮电大学 Gpu集群深度学习任务并行化方法、装置及电子设备
CN110489223A (zh) * 2019-08-26 2019-11-22 北京邮电大学 一种异构集群中任务调度方法、装置及电子设备
US20200174840A1 (en) * 2018-11-30 2020-06-04 EMC IP Holding Company LLC Dynamic composition of data pipeline in accelerator-as-a-service computing environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190228303A1 (en) * 2018-01-25 2019-07-25 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for scheduling resource for deep learning framework
US20190324856A1 (en) * 2018-04-18 2019-10-24 EMC IP Holding Company LLC Optimization of checkpoint operations for deep learning computing
CN109034396A (zh) * 2018-07-11 2018-12-18 北京百度网讯科技有限公司 用于处理分布式集群中的深度学习作业的方法和装置
US20200174840A1 (en) * 2018-11-30 2020-06-04 EMC IP Holding Company LLC Dynamic composition of data pipeline in accelerator-as-a-service computing environment
CN110399222A (zh) * 2019-07-25 2019-11-01 北京邮电大学 Gpu集群深度学习任务并行化方法、装置及电子设备
CN110489223A (zh) * 2019-08-26 2019-11-22 北京邮电大学 一种异构集群中任务调度方法、装置及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
肖正等: ""一种基于Q学习的分布式多任务流调度算法"", 《小型微型计算机系统》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112948109A (zh) * 2021-02-20 2021-06-11 山东英信计算机技术有限公司 一种ai计算集群的配额弹性调度方法、装置及介质
CN113347430A (zh) * 2021-05-13 2021-09-03 北京睿芯高通量科技有限公司 一种硬件转码加速设备的分布式调度装置及其使用方法
CN113347430B (zh) * 2021-05-13 2023-01-24 北京睿芯高通量科技有限公司 一种硬件转码加速设备的分布式调度装置及其使用方法
CN113204434A (zh) * 2021-07-05 2021-08-03 易纳购科技(北京)有限公司 基于k8s的计划任务执行方法、装置及计算机设备
CN113204434B (zh) * 2021-07-05 2021-09-21 易纳购科技(北京)有限公司 基于k8s的计划任务执行方法、装置及计算机设备
CN113568757A (zh) * 2021-09-22 2021-10-29 中建电子商务有限责任公司 一种基于深度学习的大规模分布式推理引擎及系统
CN116578415A (zh) * 2023-04-26 2023-08-11 中国人民解放军92942部队 一种面向大样本负载仿真的并行方法
CN116578415B (zh) * 2023-04-26 2024-06-04 中国人民解放军92942部队 一种面向大样本负载仿真的并行方法

Also Published As

Publication number Publication date
CN111866187B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN111866187B (zh) 分布式深度学习推理云平台任务调度方法
CN113254197B (zh) 一种基于深度强化学习的网络资源调度方法及系统
KR102361995B1 (ko) 컨택트 센터 시스템 내의 행동 페어링을 위한 기술들
CN111367657B (zh) 一种基于深度强化学习的计算资源协同合作方法
CN109857534A (zh) 一种基于策略梯度强化学习的智能任务调度策略训练方法
CN110262901A (zh) 一种数据处理方法及数据处理系统
CN111901485B (zh) 外呼系统的控制方法及装置
CN108845874A (zh) 资源的动态分配方法及服务器
CN108123998B (zh) 多云数据中心中面向延迟敏感应用的启发式请求调度方法
CN115543577B (zh) 基于协变量的Kubernetes资源调度优化方法、存储介质及设备
CN110383245A (zh) 具有动态反馈的安全智能联网架构
CN117682429B (zh) 一种物料控制系统的天车搬运指令调度方法及装置
CN115408136A (zh) 一种基于遗传算法的rpa流程调度方法
CN111143036A (zh) 一种基于强化学习的虚拟机资源调度方法
CN114546608A (zh) 一种基于边缘计算的任务调度方法
CN116932201A (zh) 一种面向深度学习训练任务的多资源共享调度方法
CN118210603A (zh) 一种基于增强生长优化器的云资源调度方法
CN109976873A (zh) 容器化分布式计算框架的调度方案获取方法及调度方法
CN109670579A (zh) 模型生成方法和装置
CN116048801A (zh) 边缘环境下动态负载均衡的深度强话化学习资源调度方法
CN109298934A (zh) 心跳周期调整方法、装置及系统
CN109101340A (zh) 弹幕消息的动态分发方法、装置、设备和存储介质
CN110928683B (zh) 基于两类密集型虚拟机的边缘计算资源分配方法
CN113535365A (zh) 基于强化学习的深度学习训练作业资源放置系统及方法
CN114327925A (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
TR01 Transfer of patent right

Effective date of registration: 20231106

Address after: 401120 Room 1, Floor A21, Pisces, No. 53, Middle Mount Huangshan Avenue, Yubei District, Chongqing

Patentee after: Chongqing Zhongke Liangjiang Technology Development Co.,Ltd.

Address before: 401121 No. 53, middle section of Huangshan Avenue, Yubei District, Chongqing

Patentee before: Western Institute of advanced technology, Institute of computing, Chinese Academy of Sciences

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231214

Address after: Room 204, 2nd Floor, Building 1, No. 68, West Street, Haidian Town, Haidian District, Beijing 100089

Patentee after: HYPERAI CLOUD TECHNOLOGY (BEIJING) Co.,Ltd.

Address before: 401120 Room 1, Floor A21, Pisces, No. 53, Middle Mount Huangshan Avenue, Yubei District, Chongqing

Patentee before: Chongqing Zhongke Liangjiang Technology Development Co.,Ltd.

TR01 Transfer of patent right