CN113961320A - 一种自适应增益集群调度控制方法 - Google Patents
一种自适应增益集群调度控制方法 Download PDFInfo
- Publication number
- CN113961320A CN113961320A CN202111084842.6A CN202111084842A CN113961320A CN 113961320 A CN113961320 A CN 113961320A CN 202111084842 A CN202111084842 A CN 202111084842A CN 113961320 A CN113961320 A CN 113961320A
- Authority
- CN
- China
- Prior art keywords
- task
- tasks
- time
- cluster
- node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000003044 adaptive effect Effects 0.000 title claims description 15
- 239000003016 pheromone Substances 0.000 claims abstract description 30
- 238000012163 sequencing technique Methods 0.000 claims abstract description 5
- 241000257303 Hymenoptera Species 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 4
- 230000001276 controlling effect Effects 0.000 claims description 4
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 3
- 230000009545 invasion Effects 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/5038—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/505—Allocation 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 load
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种自适应增益集群调度控制方法,涉及集群调度控制技术领域,包括以下步骤:预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列,进行对群中资源节点进行信息素更新,基于标定任务进行集群资源节点,对路径的局部信息素进行更新。本发明在集群***环境下对***侵入性小,具有并行性和有效的全局搜索平衡能力、计算简单、鲁棒性好优点,此外在保证集群***安全性和可靠性的前提下,通过调度节点选择执行节点执行任务,避免任务一直在固定的集群节点上执行,均衡集群***负载,降低了任务调度难度。
Description
技术领域
本发明涉及集群调度控制技术领域,具体来说,涉及一种自适应增益集群调度控制方法。
背景技术
随着集群规模的逐渐扩大和性能的日益提高,其存储技术与负载均衡和调度策略作为集群的关键技术也成为集群研究的热点和难点,如何提高大型存储***的可靠性,保持数据持续、有效地访问就成为当前亟待解决的***瓶颈。集群RAID***是传统的RAID***技术与集群存储***的融合,具有很高的可靠性。通过网络存储节点间建立的RAID数据冗余关系可以避免一个或多个磁盘失效,甚至是单个节点或磁盘柜失效导致数据无法访问的现象。
集群***以资源共享为基础来实现,它通过作业调度技术和资源的管理使全***网络中的资源高效共享运行,达到提高***吞吐量和***资源利用率的目的,从而获得高性能。所以资源的有效利用是集群***软件研究的一个关键性问题,作业调度技术是提高整个***计算效率和实现资源共享的有效途径。但是目前存在的问题是多用户使用高性能计算***时权衡***利用率和用户服务质量,很难同时保证高利用率和短作业等待时间,如追求短作业等待时间会导致低利用率,而追求高利用率则会导致用户作业等待时间较长,而这一现象大部分是由调度策略造成的。
在任务调度中均衡负载调度策略的目标是通过一定的调度策略在各节点间分配用户作业的同时均衡各节点负载,使各结点的利用率达到最大,进而实现***并行计算以减小用户任务响应时间。因此调度策略中考虑负载均衡是提高***吞吐量同时降低作业等待时间非常关键的因素。
因此,亟需一种自适应增益集群调度控制方法。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种自适应增益集群调度控制方法,以克服现有相关技术所存在的上述技术问题。
本发明的技术方案是这样实现的:
一种自适应增益集群调度控制方法,包括以下步骤:
步骤S1,预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,其中包括标定任务队列集和任务缓存队列;
步骤S2,进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列;
步骤S3,进行对t+1时刻集群中资源节点进行信息素τij(t+1)更新,表示为:
τij(t+1)=(1-ρ)*τij(t)+ρΔτij(t);
其中,ρ为信息素挥发因子和,τij(t)表示t时刻时路径ij上的信息素,Δτij(t)为信息素的局部增量;
步骤S4,基于标定任务进行集群资源节点,表示为:
步骤S5,对路径的局部信息素进行更新,表示为:
步骤S6,判断任务缓存队列是否为空,并标定t=t+1并判断当前迭代次数t等于最大迭代次数T,
步骤S7,获取所有任务对应的节点调度方案。
其中,还包括以下步骤:
步骤S101,标定任务执行时间,对于给定的任务ti∈T,其分配到某节点PEj上的运行时间为PEti,表示为:
其中,mi为任务ti的计算量,spe(j)为节点PEj的处理速度;
步骤S102,标定最早开始时间starti(ti,PE(ti)),对于任意任务ti∈T,表示为:
starti(ti,PE(ti))=max{startj+tij+ti,startPE+tPE};
步骤S103,标定最早完成时间finishi(ti,PE(ti)),对于任意任务ti∈T,表示为:
finishi(ti,PE(ti))=starti+ti。
其中,所述Δτij(t)为信息素的局部增量,表示为:
其中,comij为路径ij的通信时间。
其中,所述根据最早完成时间对所有任务排序,包括以下步骤:
步骤S201,标定K只蚂蚁从任务缓存队列中选取个K个任务;
其中,任务缓存队列中的任务数量小于K,则派出与任务缓存队列中任务数相同的蚂蚁数。
其中,所述判断任务缓存队列是否为空,包括以下步骤:
步骤S601,若当前任务缓存队列为空,则标定t=t+1并判断当前迭代次数t等于最大迭代次数T;
步骤S602,若当前任务缓存队列不为空,保存当前K个任务的调度方案,并转入标定K只蚂蚁从任务缓存队列中选取个K个任务。
其中,所述判断当前迭代次数t等于最大迭代次数T,包括以下步骤:
步骤S603,若当前迭代次数t等于最大迭代次数T,则输出所有任务对应的节点调度方案;
步骤S604,若当前迭代次数t不等于最大迭代次数T,则标定K只蚂蚁从任务缓存队列中选取个K个任务。
本发明的有益效果:
本发明自适应增益集群调度控制方法,通过预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列,进行对群中资源节点进行信息素更新,基于标定任务进行集群资源节点,对路径的局部信息素进行更新,判断任务缓存队列是否为空,判断当前迭代次数等于最大迭代次数,获取所有任务对应的节点调度方案,实现适应增益集群调度控制,不仅在集群***环境下对***侵入性小,而且具有并行性和有效的全局搜索平衡能力、计算简单、鲁棒性好优点,此外在保证集群***安全性和可靠性的前提下,通过调度节点选择执行节点执行任务,避免任务一直在固定的集群节点上执行,均衡集群***负载,降低了任务调度难度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种自适应增益集群调度控制方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种自适应增益集群调度控制方法。
如图1所示,根据本发明实施例的自适应增益集群调度控制方法,包括以下步骤:
步骤S1,预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,其中包括标定任务队列集和任务缓存队列;
步骤S2,进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列;
步骤S3,进行对t+1时刻集群中资源节点进行信息素τij(t+1)更新,表示为:
τij(t+1)=(1-ρ)*τij(t)+ρΔτij(t);
其中,ρ为信息素挥发因子和,τij(t)表示t时刻时路径ij上的信息素,Δτij(t)为信息素的局部增量;
步骤S4,基于标定任务进行集群资源节点,表示为:
步骤S5,对路径的局部信息素进行更新,表示为:
步骤S6,判断任务缓存队列是否为空,并标定t=t+1并判断当前迭代次数t等于最大迭代次数T,
步骤S7,获取所有任务对应的节点调度方案。
其中,还包括以下步骤:
步骤S101,标定任务执行时间,对于给定的任务ti∈T,其分配到某节点PEj上的运行时间为PEti,表示为:
其中,mi为任务ti的计算量,spe(j)为节点PEj的处理速度;
步骤S102,标定最早开始时间starti(ti,PE(ti)),对于任意任务ti∈T,表示为:
starti(ti,PE(ti))=max{startj+tij+ti,startPE+tPE};
步骤S103,标定最早完成时间finishi(ti,PE(ti)),对于任意任务ti∈T,表示为:
finishi(ti,PE(ti))=starti+ti。
其中,所述Δτij(t)为信息素的局部增量,表示为:
其中,comij为路径ij的通信时间。
其中,所述根据最早完成时间对所有任务排序,包括以下步骤:
步骤S201,标定K只蚂蚁从任务缓存队列中选取个K个任务;
其中,任务缓存队列中的任务数量小于K,则派出与任务缓存队列中任务数相同的蚂蚁数。
其中,所述判断任务缓存队列是否为空,包括以下步骤:
步骤S601,若当前任务缓存队列为空,则标定t=t+1并判断当前迭代次数t等于最大迭代次数T;
步骤S602,若当前任务缓存队列不为空,保存当前K个任务的调度方案,并转入标定K只蚂蚁从任务缓存队列中选取个K个任务。
其中,所述判断当前迭代次数t等于最大迭代次数T,包括以下步骤:
步骤S603,若当前迭代次数t等于最大迭代次数T,则输出所有任务对应的节点调度方案;
步骤S604,若当前迭代次数t不等于最大迭代次数T,则标定K只蚂蚁从任务缓存队列中选取个K个任务。
此外,本技术方案中,还包括以下步骤:
标定任务执行时间,对于给定的任务ti∈T,其分配到某节点PEj上的运行时间为PEti,表示为:
其中,mi为任务ti的计算量,spe(j)为节点PEj的处理速度;
标定数据传输时间,采用tij表示任务ti和tj的数据传输时间,当两个任务分配在同一个处理节点上时,传输时间为0,否则为数据传输量与两个处理节点通信带宽的比值,表示为:
标定任务入口路径,对于任意任务ti∈T,其任务入口路径为入口任务tin到达当前任务ti的最长路径长度,即为In-pathi,表示为:
标定任务出口路径,对于任意任务ti∈T,其任务出口路径为当前任务ti到出口任务tout的最长路径长度,即为Out-pathi,表示为:
标定最早开始时间,对于任意任务ti∈T,其最早开始时间是指其所有前驱任务的最早完成时间或其所分配的节点的最早空闲时间,记为starti(ti,PE(ti)),表示为:
starti(ti,PE(ti))=max{startj+tij+ti,startPE+tPE};
标定最早完成时间,对于任意任务ti∈T,其最早完成时间是指将任务ti分配到处理机PE(ti)的最早完成时间,表示为:
finishi(ti,PE(ti))=starti+ti;
此外,具体的,在应用时,其α和β为权重因子并满足和为1,将α和β设置成不同的值可以有效地使Agent在局部寻优能力和全局寻优能力之间取得平衡。
另外,对于上述步骤S6,判断任务缓存队列是否为空,并标定t=t+1并判断当前迭代次数t等于最大迭代次数T来说,其在应用时,
判断任务缓存队列是否为空,若为空,则转入步骤S7,否则保存当前K个任务的调度方案,并转入步骤S201;
此外,具体的,标定t=t+1并判断当前迭代次数t等于最大迭代次数T,包括以下步骤:如果等于则算法结束,则输出所有任务对应的节点调度方案;否则,转入步骤S201继续运行。
综上所述,借助于本发明的上述技术方案,通过预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列,进行对群中资源节点进行信息素更新,基于标定任务进行集群资源节点,对路径的局部信息素进行更新,判断任务缓存队列是否为空,判断当前迭代次数等于最大迭代次数,获取所有任务对应的节点调度方案,实现适应增益集群调度控制,不仅在集群***环境下对***侵入性小,而且具有并行性和有效的全局搜索平衡能力、计算简单、鲁棒性好优点,此外在保证集群***安全性和可靠性的前提下,通过调度节点选择执行节点执行任务,避免任务一直在固定的集群节点上执行,均衡集群***负载,降低了任务调度难度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,本领域技术人员在考虑说明书及实施例处的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (6)
1.一种自适应增益集群调度控制方法,其特征在于,包括以下步骤:
预先标定作业的预计执行时间,并建立与之相对应的作业执行列表,其中包括标定任务队列集和任务缓存队列;
进行获取所有任务的最早完成时间,根据最早完成时间对所有任务排序,并按照从早到晚的顺序依次加入任务缓存队列;
进行对t+1时刻集群中资源节点进行信息素τij(t+1)更新,表示为:
τij(t+1)=(1-ρ)*τij(t)+ρΔτij(t);
其中,ρ为信息素挥发因子和,τij(t)表示t时刻时路径ij上的信息素,Δτij(t)为信息素的局部增量;
基于标定任务进行集群资源节点,表示为:
对路径的局部信息素进行更新,表示为:
判断任务缓存队列是否为空,并标定t=t+1并判断当前迭代次数t等于最大迭代次数T;
获取所有任务对应的节点调度方案。
4.根据权利要求3所述的自适应增益集群调度控制方法,其特征在于,所述根据最早完成时间对所有任务排序,包括以下步骤:
标定K只蚂蚁从任务缓存队列中选取个K个任务;
其中,任务缓存队列中的任务数量小于K,则派出与任务缓存队列中任务数相同的蚂蚁数。
5.根据权利要求4所述的自适应增益集群调度控制方法,其特征在于,所述判断任务缓存队列是否为空,包括以下步骤:
若当前任务缓存队列为空,则标定t=t+1并判断当前迭代次数t等于最大迭代次数T;
若当前任务缓存队列不为空,保存当前K个任务的调度方案,并转入标定K只蚂蚁从任务缓存队列中选取个K个任务。
6.根据权利要求5所述的自适应增益集群调度控制方法,其特征在于,所述判断当前迭代次数t等于最大迭代次数T,包括以下步骤:
若当前迭代次数t等于最大迭代次数T,则输出所有任务对应的节点调度方案;
若当前迭代次数t不等于最大迭代次数T,则标定K只蚂蚁从任务缓存队列中选取个K个任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111084842.6A CN113961320A (zh) | 2021-09-16 | 2021-09-16 | 一种自适应增益集群调度控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111084842.6A CN113961320A (zh) | 2021-09-16 | 2021-09-16 | 一种自适应增益集群调度控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113961320A true CN113961320A (zh) | 2022-01-21 |
Family
ID=79461749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111084842.6A Pending CN113961320A (zh) | 2021-09-16 | 2021-09-16 | 一种自适应增益集群调度控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113961320A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110764912A (zh) * | 2019-10-25 | 2020-02-07 | 东北大学 | 一种自适应任务调度器及方法 |
WO2020206705A1 (zh) * | 2019-04-10 | 2020-10-15 | 山东科技大学 | 一种基于集群节点负载状态预测的作业调度方法 |
CN112346839A (zh) * | 2020-11-06 | 2021-02-09 | 东方红卫星移动通信有限公司 | 一种基于进化算法的关联任务调度方法 |
-
2021
- 2021-09-16 CN CN202111084842.6A patent/CN113961320A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020206705A1 (zh) * | 2019-04-10 | 2020-10-15 | 山东科技大学 | 一种基于集群节点负载状态预测的作业调度方法 |
CN110764912A (zh) * | 2019-10-25 | 2020-02-07 | 东北大学 | 一种自适应任务调度器及方法 |
CN112346839A (zh) * | 2020-11-06 | 2021-02-09 | 东方红卫星移动通信有限公司 | 一种基于进化算法的关联任务调度方法 |
Non-Patent Citations (2)
Title |
---|
张新华: "基于强化学习和蚁群算法的协同依赖多任务网格集群调度", 长沙大学学报, vol. 30, no. 02, 15 March 2016 (2016-03-15), pages 50 - 53 * |
袁秀利等: "基于强化蚁群算法的任务DAG在线网格集群资源调度", 计算机测量与控制, vol. 23, no. 01, 25 January 2015 (2015-01-25), pages 287 - 290 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11509596B2 (en) | Throttling queue for a request scheduling and processing system | |
US5504894A (en) | Workload manager for achieving transaction class response time goals in a multiprocessing system | |
CN110297699B (zh) | 调度方法、调度器、存储介质及*** | |
Ge et al. | GA-based task scheduler for the cloud computing systems | |
JP3658420B2 (ja) | 分散処理システム | |
CN109960585A (zh) | 一种基于kubernetes的资源调度方法 | |
US7388839B2 (en) | Methods, apparatus and computer programs for managing performance and resource utilization within cluster-based systems | |
US7712103B2 (en) | Method and system for managing load balancing in data processing system | |
US20110161294A1 (en) | Method for determining whether to dynamically replicate data | |
CN112799823B (zh) | 边缘计算任务的在线分派调度方法和*** | |
CN111782627B (zh) | 面向广域高性能计算环境的任务与数据协同调度方法 | |
CN103294548A (zh) | 一种基于分布式文件***的io请求调度方法和*** | |
CN111143036A (zh) | 一种基于强化学习的虚拟机资源调度方法 | |
Maiti et al. | Internet of Things applications placement to minimize latency in multi-tier fog computing framework | |
CN115878260A (zh) | 一种低碳自适应云主机任务调度*** | |
CN113672391A (zh) | 一种基于Kubernetes的并行计算任务调度方法与*** | |
CN112954012B (zh) | 基于负载的改进模拟退火算法的云任务调度方法 | |
US20240020155A1 (en) | Optimal dispatching of function-as-a-service in heterogeneous accelerator environments | |
Lu et al. | An efficient load balancing algorithm for heterogeneous grid systems considering desirability of grid sites | |
CN113672372A (zh) | 一种基于强化学习的多边缘协同负载均衡任务调度方法 | |
CN113961320A (zh) | 一种自适应增益集群调度控制方法 | |
Du et al. | A combined priority scheduling method for distributed machine learning | |
CN114968512A (zh) | 一种基于区块链智能合约的能量感知调度方法 | |
Valarmathi et al. | Differed service broker scheduling for data centres in cloud environment | |
Khojasteh et al. | Characterizing energy consumption of IaaS clouds in non-saturated operation |
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 |