CN106326003B - 一种作业调度和计算资源分配方法 - Google Patents

一种作业调度和计算资源分配方法 Download PDF

Info

Publication number
CN106326003B
CN106326003B CN201610659854.XA CN201610659854A CN106326003B CN 106326003 B CN106326003 B CN 106326003B CN 201610659854 A CN201610659854 A CN 201610659854A CN 106326003 B CN106326003 B CN 106326003B
Authority
CN
China
Prior art keywords
job
user
computing resource
time
scheduling
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
CN201610659854.XA
Other languages
English (en)
Other versions
CN106326003A (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.)
Chongqing Institute of Green and Intelligent Technology of CAS
Original Assignee
Chongqing Institute of Green and Intelligent Technology of CAS
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 Chongqing Institute of Green and Intelligent Technology of CAS filed Critical Chongqing Institute of Green and Intelligent Technology of CAS
Priority to CN201610659854.XA priority Critical patent/CN106326003B/zh
Publication of CN106326003A publication Critical patent/CN106326003A/zh
Application granted granted Critical
Publication of CN106326003B publication Critical patent/CN106326003B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Abstract

本发明涉及一种作业调度和计算资源分配方法,属于计算机技术领域。该方法包括以下步骤:S1:根据用户业务需求为用户分配计算资源;S2:根据用户业务需求建立作业队列,记录每个作业的优先级、作业提交时间、作业要求计算完毕时间信息,并为每个作业分配相应的计算资源;S3:计算各队列中各个作业预计运行时间长度;S4:以用户为调度范围,采用作业的优先级、预计运行时间长度为依据进行作业调度;S5:以作业包含的任务类型和关系为依据进行任务调度;S6:计算完毕,释放计算资源。该方法能够避免优先级低的业务不能及时调度的问题,保障所有作业在规定的时间能够完成计算;提作业调度的公平性和时效性。

Description

一种作业调度和计算资源分配方法
技术领域
本发明属于计算机技术领域,涉及一种作业调度和计算资源分配方法。
背景技术
在超算服务业务开展过程中,主要使用FIFO(First In First Out,先入先出)调度机制分配任务,将所有的作业统一提交到一个队列中,并按照提交的先后顺序依次运行队列中的作业。但随着超算用户、业务量、业务类型的增多,传统的FIFO调度机制已经不能满足目前超算业务调度的需求。
现有作业调度方法中,通常只考虑业务的优先级,导致优先级低的业务不能及时调度,降低了作业调度的公平性和时效性。
现有资源分配方法中,通常只考虑将所有资源作为一个统一的计算资源池,导致计算资源划分不灵活、使用效率低。
发明内容
有鉴于此,本发明的目的在于提供一种作业调度和计算资源分配方法,该方法能够避免优先级低的业务不能及时调度的问题,保障所有作业在规定的时间能够完成计算,提作业调度的公平性和时效性。
为达到上述目的,本发明提供如下技术方案:
一种作业调度和计算资源分配方法,该方法包括以下步骤:
S1:根据用户业务需求为用户分配计算资源;
S2:根据用户业务需求建立作业队列,记录每个作业的优先级、作业提交时间、作业要求计算完毕时间信息,并为每个作业分配相应的计算资源;
S3:计算各队列中各个作业预计运行时间长度;
S4:以用户为调度范围,采用作业的优先级、预计运行时间长度为依据进行作业调度;
S5:以作业包含的任务类型和关系为依据进行任务调度;
S6:计算完毕,释放计算资源。
进一步,在步骤S1中,根据每个用户的业务需求,为其分配分配计算资源Ki,i=1,2,…n,i为用户编号;管理节点将分配给节点i的计算资源分成两部份:一部份为Ki*P,作为该用户实际的计算资源,另外一部份为Ki*(1-P),作为该用户的预留计算资源,其中,P为该用户实际使用的计算资源与该用户分配的总计算资源的比值,0≤P≤1。
进一步,在步骤S2中,以用户为单位,调度系统根据用户业务量的大小及业务类型,建立N(N≥1)个作业队列;以用户为单位,对每个用户在超算平台上运行的所有作业建立一张作业信息表,每个作业对应的相关信息作为该信息表中的一条记录;该表中记录的内容包括:作业对应的计算资源、作业优先级、作业提交时间、作业要求计算完毕时间、预计完成时间长度、当前是否占用计算资源信息。
进一步,在步骤S3中,根据信息表中各个作业的记录信息,计算各个作业预计完成时间长度,作业预计完成时间长度T的方法如下:
其中,S为当前作业的计算量,S’为历史作业的计算量,T0为历史作业的运行时间长度;计算完毕后,将本用户各个作业的预计完成时间长度T添加对应的作业信息表中。
进一步,在步骤S4中,以用户为单位,对作业优先级进行排序,综合考虑作业优先级和作业预计完成时间、运行速度等信息进行作业调度;针对本用户,以每个作业的预计完成时间长度为依据,判断队列中作业的处理顺序,处理机制如下:
1)作业要求计算完毕的时间-当前时间>作业的预计完成时间长度,则不作处理,按作业优先级顺序进行调度;
2)作业要求计算完毕时间-当前时间≤作业的预计完成时间长度,立即进行作业调度,将该作业分配到本用户的预留计算资源进行调度;如果本用户的预留计算资源不够用,则申请系统独立的计算资源进行调度。
进一步,在步骤S5中,在任务调度过程中,需要判断该作业的所有任务的关系,如果任务间是串行关系,则将任务按FIFO顺序,分配该作业对应的全部资源进行计算;如果任务间是并行关系,需确定该并行关系的任务数M,然后将该作业的计算资源等分成M份,每个任务对应其中1份计算资源,最后进行并行计算。
进一步,在步骤S6中,当作业使用资源完毕,设置作业信息表中占用资源信息为空,即释放资源,并更新作业信息表中相关信息。
本发明的有益效果在于:本发明提供的方法能够避免优先级低的业务不能及时调度的问题,保障所有作业在规定的时间能够完成计算;提作业调度的公平性和时效性。
附图说明
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
图1为作业调度和资源分配流程示意图;
图2为作业调度和资源分配原理图;
图3为作业调度流程示意图;
图4为任务调度流程示意图。
具体实施方式
下面将结合附图,对本发明的优选实施例进行详细的描述。
图1为作业调度和资源分配流程示意图,如图所示,在图中,参数配置被细分为6个步骤:
步骤S1,根据用户需求为用户分配计算资源;
具体地,根据每个用户的业务需求,为其分配分配计算资源Ki(i=1,2,…n,i为用户编号);管理节点将分配给节点i的计算资源分成两部分:一部份为Ki*P,作为该用户实际的计算资源,另外一部份为Ki*(1-P),作为该用户的预留计算资源,其中,P为该用户实际使用的计算资源与该用户分配的总计算资源的比值,0≤P≤1。
另外,为了保证整个系统超算业务调度的顺利进行,在为每个用户分配预留资源外,系统还将预留一部份资源备用。具体作业调度和资源分配原理如图2所示。
步骤S2,根据用户需求建立作业队列,并为每个作业分配计算资源,确定作业优先级、记录作业提交时间。
另外,需要针对每个用户建立一张作业信息表,用于记录该用户所有作业的计算资源、作业优先级、记录作业提交时间、作业要求计算完毕时间、当前是否占用计算资源等信息;
作业信息表示例如下:
步骤S3,计算各队列中各个作业预计运行时间:
其中,S为当前作业的计算量,S’为历史作业的计算量,T0为历史作业的运行时间。
步骤S4,进行作业调度;作业调度示意如图3所示。
步骤S41,以用户为单位,对本用户的所有作业优先级进行排序;
步骤S42,对于每个用户,以每个作业的预计完成时间长度为依据,判断是否立即处理;计算作业要求计算完毕时间-当前时间的值,并判断作业要求计算完毕时间-当前时间与作业的预计完成时间长度的关系;
步骤S43,如果作业要求计算完毕时间-当前时间>作业的预计完成时间长度,则不作处理,按作业优先级顺序进行调度;
步骤S44,如果作业要求计算完毕时间-当前时间≤作业的预计完成时间长度,立即进行作业调度,将该作业分配到本用户的预留计算资源进行调度;如果本用户的预留计算资源不够用,则申请系统独立的计算资源进行调度。
步骤S5,以该作业的所有任务的关系为依据进行任务调度;图4为任务调度流程示意图。
步骤S51,在任务调度过程中,首先判断该作业的所有任务的类型和关系;
步骤S52,如果任务间是串行关系,则将任务按FIFO顺序,分配该作业的全部资源进行计算;
步骤S53,如果任务间是并行关系,则需要确定该并行关系的任务数M,然后将该作业的计算资源分成M份,每个任务对应其中1份计算资源,最后进行并行计算。
步骤S6,计算资源使用完毕,释放计算资源。
当作业使用资源完毕,更新作业信息表中占用资源信息为空,即释放资源,并更新作业信息表中相关信息。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。

Claims (5)

1.一种作业调度和计算资源分配方法,其特征在于:该方法包括以下步骤:
S1:根据用户业务需求为用户分配计算资源;
S2:根据用户业务需求建立作业队列,记录每个作业的优先级、作业提交时间、作业要求计算完毕时间信息,并为每个作业分配相应的计算资源;
S3:计算各队列中各个作业预计运行时间长度;
S4:以用户为调度范围,采用作业的优先级、预计运行时间长度为依据进行作业调度;
S5:以作业包含的任务类型和关系为依据进行任务调度;
S6:计算完毕,释放计算资源;
在步骤S3中,根据信息表中各个作业的记录信息,计算各个作业预计完成时间长度,作业预计完成时间长度T的方法如下:
其中,S为当前作业的计算量,S’为历史作业的计算量,T0为历史作业的运行时间长度;计算完毕后,将本用户各个作业的预计完成时间长度T添加对应的作业信息表中;
在步骤S4中,以用户为单位,对作业优先级进行排序,综合考虑作业优先级和作业预计完成时间、运行速度信息进行作业调度;针对本用户,以每个作业的预计完成时间长度为依据,判断队列中作业的处理顺序,处理机制如下:
1)作业要求计算完毕的时间-当前时间>作业的预计完成时间长度,则不作处理,按作业优先级顺序进行调度;
2)作业要求计算完毕时间-当前时间≤作业的预计完成时间长度,立即进行作业调度,将该作业分配到本用户的预留计算资源进行调度;如果本用户的预留计算资源不够用,则申请系统独立的计算资源进行调度。
2.根据权利要求1所述的一种作业调度和计算资源分配方法,其特征在于:在步骤S1中,根据每个用户的业务需求,为其分配分配计算资源Ki,i=1,2,…n,i为用户编号;管理节点将分配给节点i的计算资源分成两部份:一部份为Ki*P,作为该用户实际的计算资源,另外一部份为Ki*(1-P),作为该用户的预留计算资源,其中,P为该用户实际使用的计算资源与该用户分配的总计算资源的比值,0≤P≤1。
3.根据权利要求1所述的一种作业调度和计算资源分配方法,其特征在于:在步骤S2中,以用户为单位,调度系统根据用户业务量的大小及业务类型,建立N个作业队列,N≥1;以用户为单位,对每个用户在超算平台上运行的所有作业建立一张作业信息表,每个作业对应的相关信息作为该信息表中的一条记录;该表中记录的内容包括:作业对应的计算资源、作业优先级、作业提交时间、作业要求计算完毕时间、预计完成时间长度、当前是否占用计算资源信息。
4.根据权利要求1所述的一种作业调度和计算资源分配方法,其特征在于:在步骤S5中,在任务调度过程中,需要判断该作业的所有任务的关系,如果任务间是串行关系,则将任务按FIFO顺序,分配该作业对应的全部资源进行计算;如果任务间是并行关系,需确定该并行关系的任务数M,然后将该作业的计算资源等分成M份,每个任务对应其中1份计算资源,最后进行并行计算。
5.根据权利要求1所述的一种作业调度和计算资源分配方法,其特征在于:在步骤S6中,当作业使用资源完毕,设置作业信息表中占用资源信息为空,即释放资源,并更新作业信息表中相关信息。
CN201610659854.XA 2016-08-11 2016-08-11 一种作业调度和计算资源分配方法 Active CN106326003B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610659854.XA CN106326003B (zh) 2016-08-11 2016-08-11 一种作业调度和计算资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610659854.XA CN106326003B (zh) 2016-08-11 2016-08-11 一种作业调度和计算资源分配方法

Publications (2)

Publication Number Publication Date
CN106326003A CN106326003A (zh) 2017-01-11
CN106326003B true CN106326003B (zh) 2019-06-28

Family

ID=57739869

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610659854.XA Active CN106326003B (zh) 2016-08-11 2016-08-11 一种作业调度和计算资源分配方法

Country Status (1)

Country Link
CN (1) CN106326003B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391590B (zh) * 2017-06-27 2020-12-18 北京金山安全软件有限公司 一种主题列表的更新方法、装置、电子设备及存储介质
CN109144694A (zh) * 2018-08-09 2019-01-04 北京城市网邻信息技术有限公司 信息系统配置方法、装置、设备及计算机可读存储介质
WO2020172852A1 (en) * 2019-02-28 2020-09-03 Siemens Schweiz Ag Computing resource scheduling method, scheduler, internet of things system, and computer readable medium
CN110297701B (zh) * 2019-05-16 2023-08-01 平安科技(深圳)有限公司 数据处理作业调度方法、装置、计算机设备及存储介质
CN112860421B (zh) * 2019-11-28 2024-05-07 伊姆西Ip控股有限责任公司 用于作业处理的方法、设备和计算机程序产品
CN112488492A (zh) * 2020-11-26 2021-03-12 中科星通(廊坊)信息技术有限公司 一种基于优先级的遥感产品生产调度方法
CN113946430B (zh) * 2021-12-20 2022-05-06 北京并行科技股份有限公司 一种作业调度方法、计算设备及存储介质
CN115328640B (zh) * 2022-10-17 2023-03-21 广州数说故事信息科技有限公司 一种任务调度方法、装置、系统及计算机可读存储介质
CN115495224B (zh) * 2022-11-18 2023-03-24 天河超级计算淮海分中心 基于优先级的超算节点使用方法、电子设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004013235A (ja) * 2002-06-03 2004-01-15 Nec Corp ジョブスケジュール変更支援装置
CN101309208B (zh) * 2008-06-21 2010-12-01 华中科技大学 一种适用于网格环境的基于可靠性代价的作业调度系统
CN104079502B (zh) * 2014-06-27 2017-05-10 国家计算机网络与信息安全管理中心 一种多用户多队列调度方法

Also Published As

Publication number Publication date
CN106326003A (zh) 2017-01-11

Similar Documents

Publication Publication Date Title
CN106326003B (zh) 一种作业调度和计算资源分配方法
CN102567086B (zh) 一种任务调度的方法、设备和系统
CN101727357B (zh) 用于分配计算中心中资源的方法和装置
CN107274231A (zh) 数据预测方法及装置
CN102521056B (zh) 任务分配装置和任务分配方法
CN110287003A (zh) 资源的管理方法和管理系统
CN109582448A (zh) 一种面向关键度和时效性的边缘计算任务调度方法
US20140188538A1 (en) Skill update based work assignment
Thürer et al. COBACABANA (Control of Balance by Card Based Navigation): An alternative to kanban in the pure flow shop?
CN110308967A (zh) 一种基于混合云的工作流成本-延迟最优化任务分配方法
CN106919449A (zh) 一种计算任务的调度控制方法及电子设备
CN109615165A (zh) 一种基于erp与mes数据交互技术的柔性加工调度方法
CN105718316A (zh) 一种作业调度的方法及装置
CN110543352B (zh) 调度系统的任务分配方法及其相关的装置
CN108255607A (zh) 任务处理方法、装置、电子终端及可读存储介质
CN101741751A (zh) 流量整形调度方法、流量整形调度装置及路由设备
CN105844762A (zh) 排号装置、排号系统及排号方法
Sharma et al. An improved task allocation strategy in cloud using modified k-means clustering technique
CN106991006A (zh) 支持依赖和时间平衡的云工作流任务聚类方法
JP2011180894A (ja) ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
CN106934539A (zh) 一种带有期限和费用约束的工作流调度方法
CN115292016A (zh) 基于人工智能的任务调度方法及相关设备
CN109298920A (zh) 基于准划分思想的混合关键任务调度方法
Brachmann et al. The impact of flexibility on engineer-to-order production planning
CN113495779A (zh) 一种任务调度方法和装置、任务执行系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant