CN107122231A - 一种基于蒙特卡络模拟法的数据流调度优化方法 - Google Patents

一种基于蒙特卡络模拟法的数据流调度优化方法 Download PDF

Info

Publication number
CN107122231A
CN107122231A CN201710181137.5A CN201710181137A CN107122231A CN 107122231 A CN107122231 A CN 107122231A CN 201710181137 A CN201710181137 A CN 201710181137A CN 107122231 A CN107122231 A CN 107122231A
Authority
CN
China
Prior art keywords
scheduling
scheduling scheme
static
task
monte
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
Application number
CN201710181137.5A
Other languages
English (en)
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.)
State Grid Corp of China SGCC
State Grid Anhui Electric Power Co Ltd
Nari Information and Communication Technology Co
Nanjing NARI Group Corp
Original Assignee
State Grid Corp of China SGCC
State Grid Anhui Electric Power Co Ltd
Nari Information and Communication Technology Co
Nanjing NARI Group Corp
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 State Grid Corp of China SGCC, State Grid Anhui Electric Power Co Ltd, Nari Information and Communication Technology Co, Nanjing NARI Group Corp filed Critical State Grid Corp of China SGCC
Priority to CN201710181137.5A priority Critical patent/CN107122231A/zh
Publication of CN107122231A publication Critical patent/CN107122231A/zh
Pending legal-status Critical Current

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于蒙特卡络模拟法的数据流调度优化方法,具体包括以下几个步骤:(1)创建一个空的预调度方案列表L;并定义一个输入空间l,所述输入空间l是一组随机生成各任务在各处理机上执行时间的集合;(2)生成阶段,运用静态调度算法HEFT生成预调度方案,并存入到预调度方案列表L;(3)选择阶段,比较预调度方案列表L中每个预调度方案的完工时间,从而选出最优预调度方案。本发明通用性好、在任务执行时间随机变化的情况下,能够获得一种性能较为优秀的调度方案。

Description

一种基于蒙特卡络模拟法的数据流调度优化方法
技术领域
本发明涉及一种基于流计算技术的任务调度方法,具体涉及一种基于蒙特卡络模拟法的数据流调度优化方法。
背景技术
随着信息通信技术的高速发展,特别是泛在物联网技术的普及应用,时时刻刻产生着海量、实时的数据流,面对这些“无限"运动着的数据,需要进行在线且精确的计算和分类,从而能够及时挖掘出其中隐含的有价值信息。在云计算为代表的分布式流计算系统中,不仅包含了海量的静态、离线、结构化的数据,还有实时传输、持续生成的非结构化数据。为满足多任务并行处理的复杂计算需要,在分布式流计算系统中,将进行计算的海量数据切分成若干个小块数据流后交由多台计算机并行处理,并将局部计算结果整合得出最终结果。针对输入的同组数据流,其采用的调度算法不同,最终的计算效率差异非常大。
目前针对动态数据流的调度算法有很多,主要有静态表调度(也就是HEFT算法);基于工作流的调度;引导搜索调度;基于聚类的调度;以及基于任务复制的调度等。但这些调度算法都仅适用于特定的应用环境下,通用性较差。
在传统的分布式处理模式中,输入的大多是静态数据,在利用有向无环图DAG(Directed Acyclic Graph)表示并行数据流在多处理机上进行任务调度时,其任务的执行时间是可预知的。由于分布式流计算系统中输入的是“无限"运动着的数据,而且这些数据的大小也是不确定的。这种不确定性的存在,使得传统的经典静态流据流HEFT调度方法将不再完全适用。
发明内容
针对现有技术存在的不足,本发明目的是提供一种通用性好的基于蒙特卡络模拟法的数据流调度优化方法,本发明在任务执行时间随机变化的情况下,能够获得一种性能较为优秀的调度方案。
为了实现上述目的,本发明是通过如下的技术方案来实现:
利用随机数生成算法,在一定约束条件下大量模拟生成任务执行时间,通过经典的静态调度算法(HEFT)产生相应的预调度方案,经过综合比较最终得到一种最优的预调度方案。
本发明的一种基于蒙特卡络模拟法的数据流调度优化方法,具体包括以下几个步骤:
(1)创建一个空的预调度方案列表L;并定义一个输入空间lg,所述输入空间lg是一组随机生成各任务在各处理机上执行时间的集合;
(2)生成阶段,运用静态调度算法HEFT生成预调度方案,并存入到预调度方案列表L;
(3)选择阶段,比较预调度方案列表L中每个预调度方案的完工时间,从而选出最优预调度方案。
步骤(1)中,设g=(N,E)表示一组由节点N和一组边E组成的DAG有向无环图,形式都为(i→j),其中i,j∈N,节点i表示对应的任务,边i→j表示任务i和j之间任务间的依赖关系。
所述输入空间lg定义如下:lg=(ETi,p:i∈N,p∈R),其中,ETi,p表示任务i在处理机p上的确切执行时间。
步骤(2)中,运用静态调度算法HEFT生成预调度方案具体方法如下:
(1-1)对所述输入空间lg中每个随机生成的任务执行时间进行抽样,得到样本pg,所述样本为pg=(ti,p:i∈N,p∈R),其中,ti,p是从ETi,p中抽取的一个随机样本;
(1-2)采用静态调度算法HEFT对得到的样本pg进行处理,得到一种静态预调度方案Ωg,并存储处理结果;
(1-3)迭代执行步骤(1-1)和步骤(1-2)M次,其中M≤1000。
所述静态预调度方案Ωg定义如下:
Ωg=Static_SchedulingHEFT(g,pg),
其中,Static_SchedulingHEFT表示静态调度算法HEFT。
步骤(3)中,从预调度方案中选出最优预调度方案具体方法如下:
每次从输入空间lg中随机抽取一新的任务执行时间样本依次计算每种静态预调度方案Ωg的完工时间
其中,Calculate_Makespan表示计算每个静态预调度方案确切的完工时间;
然后,计算每种预调度方案的完工时间平均值;
最后,选出平均值最小的预调度方案作为最优预调度方案。
采用发明在任务执行时间随机变化的情况下,能够获得一种性能较为优秀的平均完工时间调度方案。虽然本发明的方法其任务调度过程相对复杂,但相对那些在每个处理机上的每个任务执行时间预测值确定后才能进行启发式静态调度的方法而言,其具有较大的性能提升。
附图说明
图1为数据流调度优化算法流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
本发明基于蒙特卡络模拟法的数据流调度优化方法,建立在传统的启发式静态数据流任务调度方法(HEFT)基础上,通过运用随机数生成算法,在一定约束条件下大量生成任务执行时间,利用HEFT算法,结合随机的任务执行时间,生成大量的预调度方案,并从这些预调度方案中选出最优的预调度方案,并作为最优输出。
参见图1,针对一个带有(随机生成任务执行时间的集合)性能的DAG应用g,其实现算法如下:
1)创建一个空的预调度方案列表L。
2)生成阶段,运用静态调度算法HEFT生成预调度方案,并存入到L:
(1a)生成阶段:While不满足生成阶段的终止条件(重复m次),repeat。
(2a)在lg中取一个随机生成的任务执行时间样本pg,其中包含g中各任务在不同处理机上执行时间的一组随机值;
(3a)应用启发式静态调度算法HEFT对任务执行时间样本pg进行处理,最终生成相应的一种预调度方案Ωg
(4a)把预调度方案Ωg存入L中,为后续计算最优平均完工时间做准备;
(5a)End While(每循环一次,就在lg中随机抽取一个新的样本pg)。
3)选择阶段,从预调度方案中选出最优预调度方案
(1b)for每一次循环(重复执行n次),do
(2b)在lg中取一个随机生成的任务执行时间样本其中包含lg中各任务在不同处理机上执行时间的一组随机值;
(3b)for针对L中存入的每一种预调度方案Ωg,do
(4b)假设为g中各任务确切的执行时间,并以该任务执行时间为基础,依照预调度方案Ωg得出确切的完工时间;
(5b)End for(L中每一种预调度方案采用的任务执行时间都是一样的,即都为)
(6b)End for(L中每一种预调度方案都得到了n个不同的完工时间)
(7b)经过选择阶段的循环计算后,对L中每一种预调度方案Ωg的n个不同完工时间值求平均值,并把这个平均值作为平均完工时间;
(8b)Return取出拥有最小平均完工时间的预调度方案Ωg,作为最终要输甩出的调度方案;
4)end。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (6)

1.一种基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,具体包括以下几个步骤:
(1)创建一个空的预调度方案列表L;并定义一个输入空间lg,所述输入空间lg是一组随机生成各任务在各处理机上执行时间的集合;
(2)生成阶段,运用静态调度算法HEFT生成预调度方案,并存入到预调度方案列表L;
(3)选择阶段,比较预调度方案列表L中每个预调度方案的完工时间,从而选出最优预调度方案。
2.根据权利要求1所述的基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,
步骤(1)中,设g=(N,E)表示一组由节点N和一组边E组成的DAG有向无环图,形式都为(i→j),其中i,j∈N,节点i表示对应的任务,边i→j表示任务i和j之间任务间的依赖关系。
3.根据权利要求2所述的基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,
所述输入空间lg定义如下:lg=(ETi,p:i∈N,p∈R),其中,ETi,p表示任务i在处理机p上的确切执行时间。
4.根据权利要求3所述的基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,步骤(2)中,运用静态调度算法HEFT生成预调度方案具体方法如下:
(1-1)对所述输入空间lg中每个随机生成的任务执行时间进行抽样,得到样本pg,所述样本为pg=(ti,p:i∈N,p∈R),其中,ti,p是从ETi,p中抽取的一个随机样本;
(1-2)采用静态调度算法HEFT对得到的样本pg进行处理,得到一种静态预调度方案Ωg,并存储处理结果;
(1-3)迭代执行步骤(1-1)和步骤(1-2)M次,其中M≤1000。
5.根据权利要求4所述的基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,
所述静态预调度方案Ωg定义如下:
Ωg=Static_SchedulingHEFT(g,pg),
其中,Static_SchedulingHEFT表示静态调度算法HEFT。
6.根据权利要求5所述的一种基于蒙特卡络模拟法的数据流调度优化方法,其特征在于,
步骤(3)中,从预调度方案中选出最优预调度方案具体方法如下:
每次从输入空间lg中随机抽取一新的任务执行时间样本依次计算每种静态预调度方案Ωg的完工时间
<mrow> <msup> <mi>m</mi> <mo>*</mo> </msup> <mo>=</mo> <mi>C</mi> <mi>a</mi> <mi>l</mi> <mi>c</mi> <mi>u</mi> <mi>l</mi> <mi>a</mi> <mi>t</mi> <mi>e</mi> <mo>_</mo> <mi>M</mi> <mi>a</mi> <mi>k</mi> <mi>e</mi> <mi>s</mi> <mi>p</mi> <mi>a</mi> <mi>n</mi> <mrow> <mo>(</mo> <mi>g</mi> <mo>,</mo> <msubsup> <mi>p</mi> <mi>g</mi> <mo>*</mo> </msubsup> <mo>,</mo> <msub> <mi>&amp;Omega;</mi> <mi>g</mi> </msub> <mo>)</mo> </mrow> <mo>,</mo> </mrow>
其中,Calculate_Makespan表示计算每个静态预调度方案确切的完工时间;
然后,计算每种预调度方案的完工时间平均值;
最后,选出平均值最小的预调度方案作为最优预调度方案。
CN201710181137.5A 2017-03-24 2017-03-24 一种基于蒙特卡络模拟法的数据流调度优化方法 Pending CN107122231A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710181137.5A CN107122231A (zh) 2017-03-24 2017-03-24 一种基于蒙特卡络模拟法的数据流调度优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710181137.5A CN107122231A (zh) 2017-03-24 2017-03-24 一种基于蒙特卡络模拟法的数据流调度优化方法

Publications (1)

Publication Number Publication Date
CN107122231A true CN107122231A (zh) 2017-09-01

Family

ID=59717278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710181137.5A Pending CN107122231A (zh) 2017-03-24 2017-03-24 一种基于蒙特卡络模拟法的数据流调度优化方法

Country Status (1)

Country Link
CN (1) CN107122231A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165087A (zh) * 2018-08-28 2019-01-08 哈尔滨理工大学 基于朴素贝叶斯的云计算资源调度算法
CN110262879A (zh) * 2019-05-17 2019-09-20 杭州电子科技大学 一种基于平衡探索与利用的蒙特卡洛树搜索方法
CN111209095A (zh) * 2019-08-20 2020-05-29 杭州电子科技大学 一种dag并行任务调度中基于树搜索的剪枝方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165087A (zh) * 2018-08-28 2019-01-08 哈尔滨理工大学 基于朴素贝叶斯的云计算资源调度算法
CN110262879A (zh) * 2019-05-17 2019-09-20 杭州电子科技大学 一种基于平衡探索与利用的蒙特卡洛树搜索方法
CN110262879B (zh) * 2019-05-17 2021-08-20 杭州电子科技大学 一种基于平衡探索与利用的蒙特卡洛树搜索方法
CN111209095A (zh) * 2019-08-20 2020-05-29 杭州电子科技大学 一种dag并行任务调度中基于树搜索的剪枝方法
CN111209095B (zh) * 2019-08-20 2023-08-15 杭州电子科技大学 一种dag并行任务调度中基于树搜索的剪枝方法

Similar Documents

Publication Publication Date Title
Wickramaarachchi et al. Fast parallel algorithm for unfolding of communities in large graphs
US8959138B2 (en) Distributed data scalable adaptive map-reduce framework
Zhang et al. Parallel rough set based knowledge acquisition using MapReduce from big data
Bender et al. Cache-adaptive algorithms
Ijaz et al. Efficient scheduling strategy for task graphs in heterogeneous computing environment.
Hoang et al. DistTC: High performance distributed triangle counting
CN108108233B (zh) 任务多副本执行的集群作业调度方法及系统
CN107122231A (zh) 一种基于蒙特卡络模拟法的数据流调度优化方法
Dogrusoz et al. CiSE: A circular spring embedder layout algorithm
Ohno et al. Accelerating spark RDD operations with local and remote GPU devices
Wang et al. Design and Application of a Text Clustering Algorithm Based on Parallelized K-Means Clustering.
Meyer et al. Generating massive scale-free networks under resource constraints
CN106326005B (zh) 一种迭代型MapReduce作业的参数自动调优方法
CN108256182A (zh) 一种动态可重构fpga的布局方法
Nasr et al. Task scheduling algorithm for high performance heterogeneous distributed computing systems
Struharik et al. Hardware implementation of decision tree ensembles
Bustio-Martínez et al. A novel multi-core algorithm for frequent itemsets mining in data streams
Fan et al. Model aggregation method for data parallelism in distributed real-time machine learning of smart sensing equipment
CN111260036B (zh) 一种神经网络加速方法和装置
CN108875786B (zh) 基于Storm的食品数据并行计算一致性问题的优化方法
Kasarkin et al. New iteration parallel-based method for solving graph NP-complete problems with reconfigurable computer systems
Waghamare et al. Data mining technique for reduction of association rules in distributed system
Khalid Deep learning-based dew computing with novel offloading strategy
Savadi et al. Multi-DaC programming model: A variant of multi-BSP model for divide-and-conquer algorithms
Yi et al. Design and implementation of Word2Vec parallel algorithm based on HPC

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170901

RJ01 Rejection of invention patent application after publication