当前位置: 首页 > 专利查询>北京大学专利>正文

一种基于优先级的分时调度方法、终端及存储介质技术

技术编号:28500559 阅读:28 留言:0更新日期:2021-05-19 22:43
本发明专利技术公开了一种基于优先级的分时调度方法、终端及存储介质,方法包括:确定各个待调度任务的所属用户;获取第一预设时长内各个用户已运行任务的时长,根据各个用户已运行任务的时长在各个待调度任务中确定目标任务;为目标任务分配运行资源。本发明专利技术在对各个用户的任务进行调度时,根据一定时长内各个用户已经运行任务的时长确定当前需要被分配运行资源的任务,可以实现各个用户的任务完成进度更平均。均。均。

【技术实现步骤摘要】
一种基于优先级的分时调度方法、终端及存储介质


[0001]本专利技术涉及任务调度
,特别涉及一种基于优先级的分时调度方法、终端及存储介质。

技术介绍

[0002]在资源管理系统如Kubernetes中,对于多用户的调度支持并不完善,用户间不可避免地面临着资源分配的冲突问题,在资源缺乏时,现有技术中会优先调度高优先级用户的任务,这会导致低优先级用户的任务在很长一段时间内不能被运行,导致各个用户的任务处理进度不均匀。
[0003]因此,现有技术还有待改进和提高。

技术实现思路

[0004]针对现有技术的上述缺陷,本专利技术提供一种基于优先级的分时调度方法、终端及存储介质,旨在解决现有技术中有限调度高优先级用户的任务导致各个用户的任务处理进度不均匀的问题。
[0005]为了解决上述技术问题,本专利技术所采用的技术方案如下:
[0006]本专利技术的第一方面,提供一种基于优先级的分时调度方法,所述方法包括:
[0007]确定各个待调度任务的所属用户;
[0008]获取第一预设时长内各个用户已运行任务的时长,根据所述各个用户已运行任务的时长在各个所述待调度任务中确定目标任务;
[0009]为所述目标任务分配运行资源。
[0010]所述的基于优先级的分时调度方法,其中,所述确定各个待调度任务的所属用户之前,所述方法还包括:
[0011]根据所述各个用户的优先级确定所述各个用户在第二预设时长内的分配时长;
[0012]当在所述第二预设时长内第一用户的任务已运行时长达到所述第一用户的分配时长,则暂停所述第一用户正在运行中的任务,将所述第一用户正在运行中的任务转为所述待调度任务;
[0013]其中,所述第二预设时长大于所述第一预设时长。
[0014]所述的基于优先级的分时调度方法,其中,所述根据所述各个用户已运行任务的时长在各个所述待调度任务中确定目标任务,包括:
[0015]获取所述各个用户的优先级权值;
[0016]分别获取所述各个用户在所述第一预设时长内已运行的任务的时长权值;
[0017]根据所述各个用户的优先级权值和时长权值确定目标用户,根据所述目标用户确定所述目标任务。
[0018]所述的基于优先级的分时调度方法,其中,所述根据所述各个用户的优先级权值和时长权值确定目标用户,包括:
[0019]将第一差值最大的用户作为所述目标用户;
[0020]其中,所述第一差值为所述优先级权值减去所述时长权值得到的值。
[0021]所述的基于优先级的分时调度方法,其中,所述根据所述目标用户确定所述目标任务,包括:
[0022]将所述待调度任务中属于所述目标用户的任务按照预设属性进行排序后第一位的任务作为所述目标任务;
[0023]其中,所述预设属性包括提交时间、优先级中的至少一种。
[0024]所述的基于优先级的分时调度方法,其中,所述为所述目标任务分配运行资源,包括:
[0025]当空闲运行资源满足所述目标任务的运行需求时,直接为所述目标任务分配运行资源;
[0026]当空闲运行资源不满足所述目标任务的运行需求时,从正在运行的任务中选取第一任务并暂停以获取空闲运行资源。
[0027]所述的基于优先级的分时调度方法,其中,所述确定各个待调度任务的所属用户之后,所述方法还包括:
[0028]当时所述待调度任务的优先级等级为预设等级时,获取各个正在运行的任务占用的资源,暂停正在运行的第二任务以将所述第二任务的运行资源分配给所述待调度任务;
[0029]其中,所述第二任务的占用资源满足所述待调度任务需求的资源。
[0030]所述的基于优先级的分时调度方法,其中,所述任务为深度学习任务,所述运行资源为GPU计算资源。
[0031]本专利技术的第二方面,提供一种终端,所述终端包括处理器、与处理器通信连接的存储介质,所述存储介质适于存储多条指令,所述处理器适于调用所述存储介质中的指令,以执行实现上述任一项所述的基于优先级的分时调度方法的步骤。
[0032]本专利技术的第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一项所述的基于优先级的分时调度方法的步骤。
[0033]与现有技术相比,本专利技术提供了一种基于优先级的分时调度方法、终端及存储介质,在对各个用户的任务进行调度时,根据一定时长内各个用户已经运行任务的时长确定当前需要被分配运行资源的任务,可以实现各个用户的任务完成进度更平均。
附图说明
[0034]图1为本专利技术提供的基于优先级的分时调度方法的实施例的流程图;
[0035]图2为本专利技术提供的基于优先级的分时调度方法的实施例中步骤S200的子步骤流程图;
[0036]图3为本专利技术提供的终端的实施例的原理示意图。
具体实施方式
[0037]为使本专利技术的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于
限定本专利技术。
[0038]实施例一
[0039]本专利技术提供的基于优先级的分时调度方法,可以是由一种终端执行,终端包括但不限于是各种手机、计算机、平板电脑、可穿戴设备等。
[0040]如图1所示,本专利技术提供的基于优先级的分时调度方法的一个实施例中,包括步骤:
[0041]S100、确定各个待调度任务的所属用户。
[0042]具体地,在Kubernetes等资源管理系统中,支持多用户提交任务请求,目前,深度学习技术有了极大的发展,被应用到越来越多的场景中,很多研究者和从业人员开始使用深度学习技术尝试解决遇到的问题,在深度学习技术中,需要利用已有的数据进行训练得到特征模型,并通过推理应用在未知的数据中,无论是深度学习中的训练任务还是推理任务,都是极其耗费资源的,如今主要通过昂贵的、专门设计的加速器,如GPU进行计算,由于GPU的计算成本较高,在研究院、教育机构以及工业界中往往通过组建一定规模的计算集群,通过共享的方式为用户提供计算服务。在这种场景下,不可避免地会产生资源分配冲突的问题。
[0043]在本申请中,待调度任务为未完成,需要分配运行资源进行运行的任务,在本实施例中,任务为深度学习任务,任务的运行资源为GPU计算资源。在资源管理系统中存在待调度任务时,首先确定各个待调度任务的所述用户。
[0044]S200、确定第一预设时长内各个用户已运行任务的时长,根据各个用户已运行任务的时长在各个待调度任务中确定目标任务。
[0045]当系统中可用的运行资源满足所有待调度任务的运行资源需求时,可以直接为每个待调度任务分配运行资源,当系统中可用的运行资源不能满足所有的待调度任务的运行资源需求时,需要在待调度任务中确定当前时刻被分配运行资源的任务,即目标任务。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于优先级的分时调度方法,其特征在于,所述方法包括:确定各个待调度任务的所属用户;获取第一预设时长内各个用户已运行任务的时长,根据所述各个用户已运行任务的时长在各个所述待调度任务中确定目标任务;为所述目标任务分配运行资源。2.根据权利要求1所述的基于优先级的分时调度方法,其特征在于,所述确定各个待调度任务的所属用户之前,所述方法还包括:根据所述各个用户的优先级确定所述各个用户在第二预设时长内的分配时长;当在所述第二预设时长内第一用户的任务已运行时长达到所述第一用户的分配时长,则暂停所述第一用户正在运行中的任务,将所述第一用户正在运行中的任务转为所述待调度任务;其中,所述第二预设时长大于所述第一预设时长。3.根据权利要求1所述的基于优先级的分时调度方法,其特征在于,所述根据所述各个用户已运行任务的时长在各个所述待调度任务中确定目标任务,包括:获取所述各个用户的优先级权值;分别获取所述各个用户在所述第一预设时长内已运行的任务的时长权值;根据所述各个用户的优先级权值和时长权值确定目标用户,根据所述目标用户确定所述目标任务。4.根据权利要求3所述的基于优先级的分时调度方法,其特征在于,所述根据所述各个用户的优先级权值和时长权值确定目标用户,包括:将第一差值最大的用户作为所述目标用户;其中,所述第一差值为所述优先级权值减去所述时长权值得到的值。5.根据权利要求3所述的基于优先级的分时调度方法,其特征在于,所述根据所述目标用户确定所述目标任务,包括:将所述待调度任务中属于所述目标用户的任务按照预设属性进行排序后第一位...

【专利技术属性】
技术研发人员:罗英伟叶志晟任晓宇杨泽华汪小林曾炜刘瑾张水勇
申请(专利权)人:北京大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1