CN109445914A - 一种面向并发的调度方法及系统 - Google Patents
一种面向并发的调度方法及系统 Download PDFInfo
- Publication number
- CN109445914A CN109445914A CN201811119310.XA CN201811119310A CN109445914A CN 109445914 A CN109445914 A CN 109445914A CN 201811119310 A CN201811119310 A CN 201811119310A CN 109445914 A CN109445914 A CN 109445914A
- Authority
- CN
- China
- Prior art keywords
- task
- timeslice
- execution
- stage
- exclusive
- 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 23
- 239000011159 matrix material Substances 0.000 claims description 6
- 239000000725 suspension Substances 0.000 claims description 6
- 230000009329 sexual behaviour Effects 0.000 abstract description 2
- SWUIQEBPZIHZQS-UHFFFAOYSA-N calone Chemical compound O1CC(=O)COC2=CC(C)=CC=C21 SWUIQEBPZIHZQS-UHFFFAOYSA-N 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/486—Scheduler internals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及带宽调度技术领域,具体涉及一种面向并发的调度方法及系统,用以支持带宽敏感调度策略的进行,该方法利用了任务执行过程中的阶段性行为,在任务的多次执行中不断收集其包含的阶段,并估算每个阶段的独占执行信息,存放到数据库中,在任务的未来执行中,使用数据库中的信息能更准确的预测任务的带宽需求;同时,结合阶段出现的频度,估算出任务在特定输入集下的整体独占执行时间和主存访问量,本发明利用了任务执行的阶段性特点,能在历史执行中识别任务阶段,并估算它的执行性能,这些信息又能在任务未来的执行中不断强化,指导调度。
Description
技术领域
本发明涉及带宽调度技术领域,具体涉及一种面向并发的调度方法及系统。
背景技术
随着集群规模的扩大,在大数据分析和处理过程中,网络故障和节点失效等错误发生的概率增加,需要底层分布式数据系统提供高可用保证,保持数据系统服务的连续性。基于共享存储池,集群中每个元数据服务器利用影子节点SN进行热备,无需额外的数据系统或设备支持就能快速恢复故障。通常情况下,影子节点不提供元数据服务,处于备用状态,但始终维护与元数据服务器一致的名字空间。进行数据操作时,当元数据服务器更新完元数据信息,写日志事务到日志文件中,影子节点通过共享存储池,从日志副本中读取对应的日志并在内存中重放事务,同步元数据服务器的名字空间信息。
因此,如何能在一个任务组执行前估算出它的平均带宽需求指导调度成为关键问题。
发明内容
本发明提供一种面向并发的调度方法及系统,能在一个任务组执行前估算出它的平均带宽需求指导调度。
本发明提供的一种面向并发的调度方法,包括以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
进一步,所述步骤S1之前还包括:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
进一步,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
进一步,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
本发明提供的一种面向并发的调度系统,包括控制模块和存储控制指令的存储模块,控制模块读取所述指令执行以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
进一步,所述控制模块执行所述步骤S1之前还包括执行以下步骤:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
进一步,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
进一步,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
本发明的有益效果是:本发明公开一种面向并发的调度方法及系统,用以支持带宽敏感调度策略的进行,该方法利用了任务执行过程中的阶段性行为,在任务的多次执行中不断收集其包含的阶段,并估算每个阶段的独占执行信息,存放到数据库中,在任务的未来执行中,使用数据库中的信息能更准确的预测任务的带宽需求;同时,结合阶段出现的频度,估算出任务在特定输入集下的整体独占执行时间和主存访问量,本发明利用了任务执行的阶段性特点,能在历史执行中识别任务阶段,并估算它的执行性能,这些信息又能在任务未来的执行中不断强化,指导调度。
附图说明
下面结合附图和实例对本发明作进一步说明。
图1是本发明一种面向并发的调度的方法流程示意图。
具体实施方式
参考图1,本发明提供的一种面向并发的调度方法,包括以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
进一步,所述步骤S1之前还包括:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
进一步,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
进一步,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
本发明提供的一种面向并发的调度系统,包括控制模块和存储控制指令的存储模块,控制模块读取所述指令执行以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
进一步,所述控制模块执行所述步骤S1之前还包括执行以下步骤:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
进一步,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
进一步,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。
Claims (8)
1.一种面向并发的调度方法,其特征在于,包括以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
2.根据权利要求1所述的一种面向并发的调度方法,其特征在于,所述步骤S1之前还包括:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
3.根据权利要求1所述的一种面向并发的调度方法,其特征在于,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
4.根据权利要求1所述的一种面向并发的调度方法,其特征在于,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
5.一种面向并发的调度系统,其特征在于,包括控制模块和存储控制指令的存储模块,控制模块读取所述指令执行以下步骤:
步骤S1、通过系统调用让任务暂停执行;
步骤S2、读取和处理性能计数器数据,识别出阶段信息并进行信息更新,预测任务在下一个时间片的带宽需求;
步骤S3、选择任务并发执行,使总带宽需求等于任务组的平均带宽需求;
步骤S4、对每一个选定的任务,通过系统调度使之继续执行;
步骤S5、重置调度器的时间片计数器,等待下一个时间片的到来。
6.根据权利要求5所述的一种面向并发的调度系统,其特征在于,所述控制模块执行所述步骤S1之前还包括执行以下步骤:
将任务在一个时间片内的执行识别为一个阶段,每个阶段赋予一个唯一的阶段编码。
7.根据权利要求5所述的一种面向并发的调度系统,其特征在于,所述步骤S2中预测任务在下一个时间片的带宽需求具体包括:
通过马尔科夫预测器预测每个任务在下一个时间片即将出现的阶段,将一个阶段看成一个状态,根据任务本次的执行历史维护一个状态转移矩阵。
8.根据权利要求5所述的一种面向并发的调度系统,其特征在于,所述步骤S3中任务组的平均带宽需求根据每个任务的主存访问数以及任务的独占执行时间获得;所述任务的主存访问数通过性能计数器采集多次任务执行的平均值获得;
所述任务的独占执行时间通过以下公式计算获得
其中,Iq是指任务在时间片q内执行的指令数,是时间片q的独占执行,Calone即为任务的独占执行时间,由该任务的每个执行时间片的独占执行时间累加得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811119310.XA CN109445914A (zh) | 2018-09-25 | 2018-09-25 | 一种面向并发的调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811119310.XA CN109445914A (zh) | 2018-09-25 | 2018-09-25 | 一种面向并发的调度方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109445914A true CN109445914A (zh) | 2019-03-08 |
Family
ID=65544273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811119310.XA Pending CN109445914A (zh) | 2018-09-25 | 2018-09-25 | 一种面向并发的调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109445914A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111027101A (zh) * | 2019-12-17 | 2020-04-17 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136113A (zh) * | 2011-11-25 | 2013-06-05 | 中国科学院沈阳计算技术研究所有限公司 | 面向多核处理器的共享Cache冲突预测方法 |
-
2018
- 2018-09-25 CN CN201811119310.XA patent/CN109445914A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136113A (zh) * | 2011-11-25 | 2013-06-05 | 中国科学院沈阳计算技术研究所有限公司 | 面向多核处理器的共享Cache冲突预测方法 |
Non-Patent Citations (1)
Title |
---|
徐地,等;: "一个支持访存带宽敏感调度的跨执行优化方法", 《计算机学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111027101A (zh) * | 2019-12-17 | 2020-04-17 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
CN111027101B (zh) * | 2019-12-17 | 2021-11-12 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220158953A1 (en) | Distributed stream-based database triggers | |
US10474504B2 (en) | Distributed node intra-group task scheduling method and system | |
CN105491117B (zh) | 面向实时数据分析的流式图数据处理系统及方法 | |
CN112114973B (zh) | 一种数据处理方法及装置 | |
CN108810115B (zh) | 一种适用于分布式数据库的负载均衡方法、装置及服务器 | |
CN104239144A (zh) | 一种多级分布式任务处理系统 | |
CN103649910A (zh) | 虚拟机放置 | |
CN107766147A (zh) | 分布式的数据分析任务调度系统 | |
CN105094982A (zh) | 一种多星遥感数据处理系统 | |
CN107515781B (zh) | 一种基于多处理器的确定性任务调度及负载均衡系统 | |
CN113886034A (zh) | 任务调度方法、系统、电子设备及存储介质 | |
US9979616B2 (en) | Event-driven framework for filtering and processing network flows | |
CN111767145A (zh) | 容器调度系统、方法、装置和设备 | |
CN104252386B (zh) | 数据更新的加锁方法和设备 | |
CN109445914A (zh) | 一种面向并发的调度方法及系统 | |
CN105827744A (zh) | 云存储平台的数据处理方法 | |
CN117519930A (zh) | 批量任务的执行方法、装置及电子设备 | |
CN109446641B (zh) | 一种云计算服务系统的多阶段可靠性建模分析方法 | |
CN106325997B (zh) | 一种虚拟资源分配方法及装置 | |
CN116643858A (zh) | 基于业务优先级pod再调度方法、装置、设备及介质 | |
CN115756789A (zh) | 一种针对深度学习推理服务系统的gpu调度优化方法 | |
RU2679546C2 (ru) | Устройство и способ прогона множества потоков | |
CN112988904A (zh) | 一种分布式数据管理系统及数据存储方法 | |
Kim et al. | An effective approach to identifying optimal software reliability allocation with consideration of multiple constraints | |
CN117573382B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 528000 Foshan Institute of science and technology, Xianxi reservoir West Road, Shishan town, Nanhai District, Foshan City, Guangdong Province Applicant after: Foshan University Address before: 528000 Foshan Institute of science and technology, Xianxi reservoir West Road, Shishan town, Nanhai District, Foshan City, Guangdong Province Applicant before: FOSHAN University Country or region before: China |