CN105446816A - 一种面向异构平台的能耗优化调度方法 - Google Patents

一种面向异构平台的能耗优化调度方法 Download PDF

Info

Publication number
CN105446816A
CN105446816A CN201510765040.XA CN201510765040A CN105446816A CN 105446816 A CN105446816 A CN 105446816A CN 201510765040 A CN201510765040 A CN 201510765040A CN 105446816 A CN105446816 A CN 105446816A
Authority
CN
China
Prior art keywords
resource
platform
cluster
virtual resource
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.)
Granted
Application number
CN201510765040.XA
Other languages
English (en)
Other versions
CN105446816B (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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
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 South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201510765040.XA priority Critical patent/CN105446816B/zh
Publication of CN105446816A publication Critical patent/CN105446816A/zh
Application granted granted Critical
Publication of CN105446816B publication Critical patent/CN105446816B/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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Power Sources (AREA)

Abstract

本发明公开的一种面向异构平台的能耗优化调度方法,包含以下步骤:采集所有异构物理节点的资源信息并发送给虚拟资源配置决策器;虚拟资源配置决策器计算出每个异构物理节点对应的虚拟资源份额,并相应修改;刷新所有异构物理节点的配置信息,每个异构物理节点的虚拟资源份额被更新,平台重新启动,接收用户提交的作业并放入作业队列中;集群平台从作业队列中取出一个作业,根据数据块大小将作业切分成若干个任务;按照DRF算法计算出该作业所需要的虚拟资源份额,集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业。本发明的方法具有充分利用集群平台资源异构性特征提高平台资源调度效率和减少平台任务调度能耗等优点。

Description

一种面向异构平台的能耗优化调度方法
技术领域
本发明涉及分布式系统的能耗优化调度方法,特别涉及一种面向异构平台的能耗优化调度方法。
背景技术
云计算目前已经成为学术界和产业界的研究热点,越来越多的高校、研究所、IT公司以及互联网企业开始深入研究并开展云平台的项目。在云计算环境下,分布存储的规模巨大,能耗开销也很大。而且为了使得设备能够正常运转,能耗还要包括制冷设备的能耗。在24×7的不间断运行模式下,能耗成为构成数据中心存储开销的一个重要组成部分。在美国,2000年至2005年之间,数据中心的能耗翻了一番。研究人员调查还发现,一台服务器4年的能耗基本上等于其硬件的成本,而且降低能耗能够提高磁盘等硬件设备的运行寿命,进而降低数据中心的成本。云计算提供商作为依靠服务盈利的企业,降低能耗进而降低成本是一个必须追求的目标,而且节约能耗可以节约能源,促进环境保护,节能技术已成为分布存储设计中与效率、容错并列的关键技术之一。最近几年,计算机系统电能消耗的不断增加,能源的高效利用已经成为现代计算机系统(如数据中心和云端)的一个非常重要研究内容。大型的云计算集群通常以异构的形式存在,节点之间的性能差异很大,很容易导致资源分配不均匀、能耗过大的问题。
近年来关于异构平台的能耗优化调度方法的研究正在逐渐升温。2013年AbdulHameed等人详细研究了云计算集群的资源分配与调度方法。他摒弃了传统的集群节能方案,提出了使用资源预测算法来预测任务所需要的各种资源(包括CPU,内存,带宽等)。借助机器学习的手段,预测出任务所需要的资源,然后进行资源的分配。文中提出了三种分配方案:基于功率的分配方案;基于热量的分配方案;基于服务的分配方案。2014年Alberto教授等人也发表了类似的观点。对于异构集群的资源分配与调度,应该放弃过往的人工配置方法。他提出了使用“参数学习算法”和“混合的模糊遗传系统模型”来进行集群资源的自我分配。除了使用机器学习的手段之外,也有一些学者提出使用反馈的机制来设定集群的资源分配与调度。MohsenSharifi教授针对异构集群的能耗优化问题提出了基于集群负载情况的反馈分配机制。通过监测集群的运行情况,动态地将负荷较轻的任务的资源动态分配给负荷较重的任务,以达到资源的合理分配。此外,当前Hadoop平台的三种主流调度算法:FIFO算法、公平调度算法和计算能力算法,主要考虑同构环境的任务调度的性能改进问题,没有考虑能耗优化问题,特别是没有考虑在异构环境中执行效率和能耗优化问题。
虽然最近几年在云计算的能耗优化资源调度方向已经开展了不少研究工作,但大部分算法没有利用平台异构性来更好地分配资源和调度任务,且基于机器学习算法等智能算法来优化调度问题往往复杂度比较高、不实用。因此,针对异构平台的能耗优化资源调度问题,使用更轻量级的方式进行资源的分配和调度是云计算领域亟待解决的重要问题。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提供一种面向异构平台的能耗优化调度方法,能够根据集群内各个节点的物理能力进行资源的重新分配,能力强的节点承担更繁重的计算任务,能力弱的节点承担较轻松的计算任务。重新分配资源后,由DRF算法计算出作业所需要的虚拟资源份额,随后使用“能耗最优分配算法”在各个节点中选择最适合的虚拟资源大小供其运行。其中,一份虚拟资源份额是资源调度的最小单位。该方案提高了异构Hadoop集群的资源利用率,从而达到提高集群整体运行效率和节省能耗的目的。
本发明的目的通过以下的技术方案实现:
一种面向异构平台的能耗优化调度方法,包含以下顺序的步骤:
S1.通过集群监控软件采集集群平台中所有异构物理节点的资源信息;
S2.将采集到的资源信息发送给虚拟资源配置决策器,由虚拟资源配置决策器进行下一步的决策;
S3.所述虚拟资源配置决策器根据采集到的资源信息计算出每个异构物理节点对应的虚拟资源份额,并相应修改每个异构物理节点的虚拟资源份额大小;
S4.刷新集群平台中所有异构物理节点的配置信息,每个异构物理节点的虚拟资源份额被更新,集群平台重新启动,接收用户提交的作业并放入作业队列中;
S5.集群平台从作业队列中取出一个作业,根据数据块大小将作业切分成若干个任务;
S6.按照DRF算法计算出该作业所需要的虚拟资源份额,集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业;
S7.作业执行完毕后,返回步骤S5。
步骤S1中,所述资源信息包括集群平台所有异构物理节点的CPU核心数、CPU频率、内存大小、带宽大小信息。
步骤S3中,所述计算出每个异构物理节点对应的虚拟资源份额,具体通过以下方法实现:
假设异构物理节点的资源向量为Resij,i表示异构物理节点,j分别代表CPU核心数、CPU频率、内存大小、带宽大小;函数min()表示取所有数据中的最小值;Viri表示异构物理节点i分得的虚拟资源份额;参数Pi为调和系数,其中则异构物理节点对应的虚拟资源份额的计算公式如下所示:
Vir i = Σ j = 1 n P i × Res i j X j - - - ( 1 )
Xj=min(Resij)(2)
其中,(2)式表示j能力在所有异构物理节点当中的最小值。
步骤S6中,所述按照DRF算法计算出该作业所需要的虚拟资源份额为:当集群平台有若干个作业提交时,作业首先被切割成若干个任务,如图4,计算每个作业的主资源份额,假设为si;DRF算法每次循环开始时,选取各个作业中主资源份额最小的一个,分配一份资源给该作业,随后更新当前各个作业的主资源份额,进入下一次的循环;当其中一种资源达到物理最大值时,停止分配。图4中,假设集群总资源的容量为R={r1,…,rm},已经用掉的资源为C={c1,…,cm},初始值为0,分配给用户i的资源为Ui={ui,1,…,ui,m},初始值为0。
DRF算法的全称为“主资源公平算法”,即用户分配到的虚拟资源份额应该由其主导份额的资源来决定。主导份额的资源是在所有已经分配给用户的多种资源中,占据最大份额的一种资源。作业向集群申请资源,是以任务为单位申请的,每个任务需要的资源集合为R={r1,…,rm},DRF算法的目的是将虚拟资源最大化地分配到各个作业上,同时又不超过机器本身的负载,避免节点出现过载现象,最大化地将电能转化为计算能力,从而达到能耗最优的目标。
步骤S6中,所述集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业为:
收集不同任务在集群平台中各个异构物理节点的运行速度和能效(其中能效是指单位时间的耗电量大小),构造任务调度的速度矩阵Vi,j和能效矩阵Ei,j;当有新的作业提交到集群中,集群将其切分成若干任务,调度时依据Vi,j和Ei,j计算出执行这些任务时所需要总能耗最小的异构物理节点集合,然后将该作业调度到总能耗最小的异构物理节点上。
DRF算法计算出该作业所需要的虚拟资源份额后,集群平台使用“能耗最优调度算法”将该作业所需的虚拟资源分配给该作业。在初始的分配策略中,调度器随机地将任务分配到若干节点执行,这种分配策略使得任务并没有在最合适的节点中执行,造成执行速度慢,能耗高的现象。因此,能耗最优分配算法的思想就是通过统计过往任务的执行数据,调度器依照这些历史数据将被切割成若干任务的作业分配到合适的若干节点中,使得完成作业的总能耗最小。能耗最优分配算法的核心思想为:收集不同任务在集群中各个节点的运行速度和能效,组成速度矩阵Vi,j和能效矩阵Ei,j。能效是指单位时间的耗电量大小。当有新的作业提交到集群中,集群将其切分成若干任务,调度器依据Vi,j和Ei,j的信息,计算出这些任务应该分配某些节点上时能使得能耗总量最小。算法具体内容为:首先收集不同任务在集群中各个节点的运行速度和能效,组成速度矩阵Vi,j和能效矩阵Ei,j。其中i表示任务种类,j表示节点,则有:
V i , j = v 1 , 1 . . v 1 , n . . . . . . v n , 1 . . v n , n E i , j = e 1 , 1 . . e 1 , n . . . . . . e n , 1 . . e n , n
当有新的作业提交到集群时,集群收集当前每个节点的剩余内存大小Mi。随后集群将该作业切分成n个数据量为D的任务x。根据速度矩阵Vi,j和能效矩阵Ei,j,我们可以查出任务x的速度矩阵Vx,i和能效矩阵Ex,i。设该作业为总能耗Etotal,则:
E t o t a l = Σ S i , j ∈ S j × D v x , i × e x , i - - - ( 3 )
n = Σ j ∈ S j - - - ( 4 )
其中S是一个映射集合,S=<i,j>(i∈C,j∈N+),其中集合C表示集群中的所有节点,j是正整数。S集合中的一个映射是指j份任务分配到第i个节点上,所有的映射组合成S集合。已知集群的各个节点的剩余的内存大小为Mi,为了使集群中的节点不会出现过载现象,对于集合S中的每一个i节点都应该满足:
Mi>j×D(i∈S)(5)
结合(3)、(4)、(5)式,调度器计算出集合S,使得Etotal值最小。此时S即为最优分配方案。
步骤S5中,所述若干个任务的大小均为block的倍数。集群平台在存储数据的时候,会以“block”为单位将数据存储在磁盘上,“block”的大小由开发人员制定。根据数据块大小将作业切分为相同大小的若干个任务,每个任务的大小为“block”的倍数,以便提高磁盘的利用率。
本发明与现有技术相比,具有如下优点和有益效果:
(1)本发明改进了异构平台原有的资源分配策略,按照节点的物理能力配置资源份额,有效提升了集群的资源使用率。
(2)本发明利用异构集群的特性,按照任务所需分配资源,有效提高了集群整体的吞度量。
(3)本发明充分发挥异构集群的特性,使用能耗最优分配算法使得作业能够分配到最合理的节点上执行,有效避免了节点的过载现象,将电能最大程度地转化为节点的运算能力,有效降低了运行作业所需的总能耗。
附图说明
图1为本发明所述的一种面向异构平台的能耗优化调度方法的流程图。
图2为图1所示能耗优化调度方法在Hadoop1.x调度平台应用的流程图。
图3为图1所示能耗优化调度方法在Hadoop2.x调度平台应用的流程图。
图4为DRF算法计算出该作业所需要的虚拟资源份额的工作流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1,一种面向异构平台的能耗优化调度方法,包含以下顺序的步骤:
S1.通过集群监控软件采集集群平台中所有异构物理节点的资源信息;
S2.将采集到的资源信息发送给虚拟资源配置决策器,由虚拟资源配置决策器进行下一步的决策;
S3.所述虚拟资源配置决策器根据采集到的资源信息计算出每个异构物理节点对应的虚拟资源份额,并相应修改每个异构物理节点的虚拟资源份额大小;
S4.刷新集群平台中所有异构物理节点的配置信息,每个异构物理节点的虚拟资源份额被更新,集群平台重新启动,接收用户提交的作业并放入作业队列中;
S5.集群平台从作业队列中取出一个作业,根据数据块大小将作业切分成若干个任务;
S6.按照DRF算法计算出该作业所需要的虚拟资源份额,集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业;
S7.作业执行完毕后,返回步骤S5。
实施例2
应用本发明方法到Hadoop1.x调度平台:
如图2所示,给出了异构平台的能耗优化调度方法在Hadoop1.x调度平台下的实施例。Hadoop1.x平台的资源调度是由JobTracker完成,平台的资源抽象为slot的形式,slot是资源的基本单位。Slot是对一个节点的资源进行平均切分,由于平台是异构性的,故一个slot在各个物理节点中包含的资源集合也不一样。合理的slot数量配置对于异构集群至关重要,能有效避免物理资源的浪费。
集群节点在经过slot重新分配前,所有节点的slot数都是一样的,默认为S,JobTracker都将每个节点视作一模一样的机器,这对于异构集群是致命的假设。假设异构集群中有弱节点Ni和强节点Nj,有一个作业被提交到集群中,然后根据数据块大小通过编程模型自动将作业切分为N个任务。随后JobTracker从若干个节点中分配资源供任务执行,假设从Ni和Nj节点分配资源。由于JobTracker都将每个节点视作一模一样的机器,Ni和Nj节点需要各要承担个任务。在相同的工作量下,显然强节点会更快地完成任务,弱节点甚至还会因为资源不足和陷入内存swap的状况中。该实施例就是要改变这种现状,通过重新调整机器中slot的数量,来达到合理分配任务的目的。具体方法为:
虚拟资源配置决策器依据集群监控软件Ganglia采集到的物理信息计算每个节点对应的mapslot数和reduceslot数的大小。其中计算mapslot大小的方法为:计算当前物理节点的CPU总速率和集群中CPU总速率最小物理节点的比值C,同时计算当前物理节点的内存总大小和集群中内存总大小最小的物理节点的比值M,再给定全局调整系数a,按照任务类型分别计算每个物理节点中的a*C+(1-a)*M的大小,四舍五入后该数值即为该物理节点的mapslot数目。当任务属于内存密集型时设置a为较小值,当任务属于CPU密集型是设置a为较大值,当任务属于普通型时设置a为0.5。计算reduceslot大小的方法为:将节点核心数乘以0.9,四舍五入后即为该节点的reduceslot数。
集群节点经过slot分配后,节点的slot数变为Si(i=1,2,3...)。当有N个作业被提交到集群中,JobTracker使用DRF算法计算每个作业所需的slot数,然后使用“能耗最优分配算法”将slot分配给这N个作业运行。算法分配给作业的资源都是符合机器实际能力的,不会造成机器的过度空闲和过度运作,使得机器能够最大化地转化电能为实际的计算能力。接下来我们对slot分配前后的完成时间和能耗进行分析。假设现在用户提交一个作业到集群,作业被编程模型均匀分割为X个任务,每个slot的数据量为D,经过JobTracker的计算,它可以获得的slot数为N,完成该任务所需时间为T,每个节点处理该任务的速率为Vi(i=1,2,3...),耗电量为Ei(i=1,2,3...)。当节点资源不足产生内存缺页或者CPU超负荷是速率为Vi′(i=1,2,3...),耗电量为Ei′(i=1,2,3...)。任务申请的slot依照Hadoop的机制,会优先分配数据所在节点的slot,如果所在节点的slot不足,会分配同一机架上的slot,如果依然不足,会分配到相邻的机架上,直到获取到足够的slot为止。假设数据在节点间的传输时间忽略不计,我们使用如下方法推算其完成时间:
在slot数都为S的时候,假设分配到的节点是1、2、3,slot设定值大于其能力的节点为2和3,节点2和节点3将会出现过载现象,运行速度下降,能耗上升。Tbefore为作业运行完成时间,Ebefore为作业所需总能耗,则:
T b e f o r e = M A X ( D &times; S V 1 + D &times; S V 2 &prime; + D &times; S V 3 &prime; ) - - - ( 6 )
Ebefore=Tbefore×(E1+E2′+E3′)(7)
在slot被重新配置为Si(i=1,2,3...)后,假设分配到的节点是1、2、3,Tafter为slot重新配置后的作业运行完成时间,则:
T a f t e r = M A X ( D &times; S 1 V 1 + D &times; S 2 V 2 + D &times; S 3 V 3 ) - - - ( 8 )
Eafter=Tafter×(E1+E2+E3)(9)
同一个任务每次申请的slot数量是相同的,所以我们可以得到:
3S=S1+S2+S3(10)
假设V2为速度最小值,可以得到在实验环境下我们观测到,由于节点在过载或内存缺页,速度将会骤降,能耗上升,即V2′<<Vi(i=1,2,3...),Ei′>Ei(i=1,2,3...)。假设根据条件V2′<<Vi,Si≈S,我们可以推论出在绝大多数情况下Tbefore>Tafter。又有E1+E2′+E3′大于E1+E2+E3,故有Eafter<Ebefore。由此可以得知,在经过异构平台的能耗优化资源调度方法后,Hadoop1.x平台在运行作业时可以有效地减少运行时间和降低能耗。
实施例3
应用本发明方法到Hadoop2.x调度平台:
如图3所示,给出了异构平台的能耗优化调度方法在Hadoop2.x调度平台下的实施例。Hadoop2.x调度平台下的ResourceManager以虚拟资源的方式向作业提供资源,是Hadoop2.0的资源分配中心。每个节点的Container设定参数包括了虚拟CPU个数和最大可用内存量,ResourceManager在初始化时读取各个节点的参数,并在后续的资源分配中保证不超过Container的最大使用量。
节点在经过Container重新分配前,所有节点的虚拟CPU数都为C,最大可用内存量为M。在异构集群中,这种资源的初始化方式存在很大的问题。假设异构集群中有节点N,拥有良好的CPU性能,但是内存很小。用户提交了一个内存密集型的作业到集群中,在统一的Container配置下,ResourceManager视所有节点都是一样的。如果该作业被分配到节点N上,必然会造成内存的频繁换页,严重影响效率。故我们需要构建一套合理的方法,依照异构集群中节点的能力对每个节点的Container重新进行配置。具体方法为:
Container配置决策器依据集群监控软件Ganglia采集到的物理信息计算每个节点对应的Container大小。Container的大小设定由两部分组成,分别为虚拟CPU数和最大可用内存量。其中计算Container虚拟CPU个数的方法为:选取集群中物理节点最小的CPU频率Cmin,将集群中每个节点的总CPU能力Pi×CoreNumber除以Cmin,对结果四舍五入后得到该节点的虚拟CPU数Ci(i=1,2,3...)。设定Container最大可用内存量的方法为:根据采集到的物理信息,设定可用内存量的大小为该节点的物理内存大小Mi(i=1,2,3...)。
经过分配后,每个节点的虚拟CPU数为Ci(i=1,2,3...),最大可用内存量为Mi(i=1,2,3...)。在给作业进行资源分配时,ResourceManager使用DRF算法计算作业能获得的Container大小,然后使用“资源最优分配算法”对资源进行最大化的分配。使用DRF算法计算各个作业所需的资源量时,即使在资源富余的情况下,也能使得每个节点的利用率保持在一个大致相同的水平上。ResourceManager分配虚拟资源的时候完全依照物理机的能力进行分配,避免了机器过载的现象,从而提高了资源的利用率。假设现在用户向ResourceManager申请Cneed和Mneed的资源。节点在满负荷时的耗电量和完成时间分别为Ei(i=1,2,3...)和ti(i=1,2,3...),过载时的耗电量和完成时间分别为Ei′(i=1,2,3...)和ti′(i=1,2,3...)。任务申请Container时依照ResourceManager的资源分配机制,会优先分配数据所在节点的Container,如果所在节点的Container不足,会分配同一机架上的Container,如果依然不足,会分配到相邻的机架上,直到获取到足够的Container为止。
一个作业在分配到特定的资源后,其完成时间是不变的。在此实施例中,Container配置前和配置后所获得的虚拟资源是一样多的。唯一不同的是,在没有重新配置Container的情况下,由于有部分节点的能力被高估,其物理能力(CPU,内存等)比配置的值要小,故作业获得的总物理资源数Cx<Cneed,Mx<Mneed。作业在运行时,这些节点会出现内存缺页和CPU拥挤的情况,大大延长了作业的完成时间和增加了作业的总能耗。假设在Container配置前作业申请到的资源分布在集群的1、2、3号机器中,2号机器为慢节点,总消耗时间和能耗公式如下:
Tbefore=max(t1,t2′,t3)(11)
Ebefore=(E1+E2′+E3)×Tbefore(12)
在Container配置后作业申请到的资源分布在集群的1、2、3号机器中,总消耗时间和能耗公式如下:
Tafter=max(t1,t2,t3)(13)
Eafter=(E1+E2+E3)×Tafter(14)
因为t2<t2′,E2<E2′,故在作业相同的情况下,可以得到Container配置前的完成时间Tbefore大于Container配置后的Tafter,Container配置前的能耗Ebefore大于Container配置后的Eafter
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (6)

1.一种面向异构平台的能耗优化调度方法,其特征在于,包含以下顺序的步骤:
S1.通过集群监控软件采集集群平台中所有异构物理节点的资源信息;
S2.将采集到的资源信息发送给虚拟资源配置决策器,由虚拟资源配置决策器进行下一步的决策;
S3.所述虚拟资源配置决策器根据采集到的资源信息计算出每个异构物理节点对应的虚拟资源份额,并相应修改每个异构物理节点的虚拟资源份额大小;
S4.刷新集群平台中所有异构物理节点的配置信息,每个异构物理节点的虚拟资源份额被更新,集群平台重新启动,接收用户提交的作业并放入作业队列中;
S5.集群平台从作业队列中取出一个作业,根据数据块大小将作业切分成若干个任务;
S6.按照DRF算法计算出该作业所需要的虚拟资源份额,集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业;
S7.作业执行完毕后,返回步骤S5。
2.根据权利要求1所述的面向异构平台的能耗优化调度方法,其特征在于,步骤S1中,所述资源信息包括集群平台所有异构物理节点的CPU核心数、CPU频率、内存大小、带宽大小信息。
3.根据权利要求1所述的面向异构平台的能耗优化调度方法,其特征在于,步骤S3中,所述计算出每个异构物理节点对应的虚拟资源份额,具体通过以下方法实现:
假设异构物理节点的资源向量为Resij,i表示异构物理节点,j分别代表CPU核心数、CPU频率、内存大小、带宽大小;函数min()表示取所有数据中的最小值;Viri表示异构物理节点i分得的虚拟资源份额;参数Pi为调和系数,其中i=1,2,3...,j=1,2,3...,则异构物理节点对应的虚拟资源份额的计算公式如下所示:
Vir i = &Sigma; j = 1 n P i &times; Res i j X j - - - ( 1 )
Xj=min(Resij)(2)
其中,(2)式表示j能力在所有异构物理节点当中的最小值。
4.根据权利要求1所述的面向异构平台的能耗优化调度方法,其特征在于,步骤S6中,所述按照DRF算法计算出该作业所需要的虚拟资源份额为:计算每个作业的主资源份额,假设为si;DRF算法每次循环开始时,选取各个作业中主资源份额最小的一个,分配一份资源给该作业,随后更新当前各个作业的主资源份额,进入下一次的循环;当其中一种资源达到物理最大值时,停止分配。
5.根据权利要求1所述的面向异构平台的能耗优化调度方法,其特征在于,步骤S6中,所述集群平台通过能耗最优调度算法将该作业所需的虚拟资源分配给该作业为:
收集不同任务在集群平台中各个异构物理节点的运行速度和能效,构造任务调度的速度矩阵Vi,j和能效矩阵Ei,j;当有新的作业提交到集群中,集群将其切分成若干任务,调度时依据Vi,j和Ei,j计算出执行这些任务时所需要总能耗最小的异构物理节点集合,然后将该作业调度到总能耗最小的异构物理节点上。
6.根据权利要求1所述的面向异构平台的能耗优化调度方法,其特征在于,步骤S5中,所述若干个任务的大小均为block的倍数。
CN201510765040.XA 2015-11-11 2015-11-11 一种面向异构平台的能耗优化调度方法 Active CN105446816B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510765040.XA CN105446816B (zh) 2015-11-11 2015-11-11 一种面向异构平台的能耗优化调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510765040.XA CN105446816B (zh) 2015-11-11 2015-11-11 一种面向异构平台的能耗优化调度方法

Publications (2)

Publication Number Publication Date
CN105446816A true CN105446816A (zh) 2016-03-30
CN105446816B CN105446816B (zh) 2018-12-11

Family

ID=55557051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510765040.XA Active CN105446816B (zh) 2015-11-11 2015-11-11 一种面向异构平台的能耗优化调度方法

Country Status (1)

Country Link
CN (1) CN105446816B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268317A (zh) * 2016-12-30 2018-07-10 华为技术有限公司 一种资源分配方法及装置
CN108984286A (zh) * 2018-06-29 2018-12-11 广东工业大学 一种云计算平台的资源调度方法和系统
CN110599148A (zh) * 2019-09-16 2019-12-20 广州虎牙科技有限公司 集群数据处理方法、装置、计算机集群及可读存储介质
CN110928669A (zh) * 2019-12-10 2020-03-27 浙江工商大学 基于多种群遗传算法的能耗感知云工作流调度优化方法
CN111274036A (zh) * 2020-01-21 2020-06-12 南京大学 一种基于速度预测的深度学习任务的调度方法
CN111338798A (zh) * 2020-02-21 2020-06-26 北京天融信网络安全技术有限公司 一种cpu使用率预测方法及装置
CN112214295A (zh) * 2020-09-23 2021-01-12 桂林理工大学 一种多cpu/gpu异构服务器集群的低能耗作业调度方法
CN114265695A (zh) * 2021-12-26 2022-04-01 特斯联科技集团有限公司 基于决策技术的能控装置及系统
US11392415B2 (en) 2018-08-24 2022-07-19 Samsung Electronics Co., Ltd. Electronic devices and methods for 5G and B5G multi-core load balancing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080028409A1 (en) * 2006-07-25 2008-01-31 Ludmila Cherkasova System and method for determining allocation of resource access demands to different classes of service based at least in part on permitted degraded performance
CN101938416A (zh) * 2010-09-01 2011-01-05 华南理工大学 一种基于动态重配置虚拟资源的云计算资源调度方法
US20120066020A1 (en) * 2010-08-27 2012-03-15 Nec Laboratories America, Inc. Multi-tenant database management for sla profit maximization
CN103488540A (zh) * 2013-09-30 2014-01-01 华南理工大学 面向异构云数据中心的能耗优化资源调度方法
CN104503832A (zh) * 2014-12-22 2015-04-08 西安电子科技大学 一种公平和效率均衡的虚拟机调度系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080028409A1 (en) * 2006-07-25 2008-01-31 Ludmila Cherkasova System and method for determining allocation of resource access demands to different classes of service based at least in part on permitted degraded performance
US20120066020A1 (en) * 2010-08-27 2012-03-15 Nec Laboratories America, Inc. Multi-tenant database management for sla profit maximization
CN101938416A (zh) * 2010-09-01 2011-01-05 华南理工大学 一种基于动态重配置虚拟资源的云计算资源调度方法
CN103488540A (zh) * 2013-09-30 2014-01-01 华南理工大学 面向异构云数据中心的能耗优化资源调度方法
CN104503832A (zh) * 2014-12-22 2015-04-08 西安电子科技大学 一种公平和效率均衡的虚拟机调度系统及方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268317B (zh) * 2016-12-30 2020-07-28 华为技术有限公司 一种资源分配方法及装置
CN108268317A (zh) * 2016-12-30 2018-07-10 华为技术有限公司 一种资源分配方法及装置
CN108984286A (zh) * 2018-06-29 2018-12-11 广东工业大学 一种云计算平台的资源调度方法和系统
US11392415B2 (en) 2018-08-24 2022-07-19 Samsung Electronics Co., Ltd. Electronic devices and methods for 5G and B5G multi-core load balancing
CN110599148A (zh) * 2019-09-16 2019-12-20 广州虎牙科技有限公司 集群数据处理方法、装置、计算机集群及可读存储介质
CN110599148B (zh) * 2019-09-16 2022-05-31 广州虎牙科技有限公司 集群数据处理方法、装置、计算机集群及可读存储介质
CN110928669A (zh) * 2019-12-10 2020-03-27 浙江工商大学 基于多种群遗传算法的能耗感知云工作流调度优化方法
CN110928669B (zh) * 2019-12-10 2022-05-20 浙江工商大学 基于多种群遗传算法的能耗感知云工作流调度优化方法
CN111274036A (zh) * 2020-01-21 2020-06-12 南京大学 一种基于速度预测的深度学习任务的调度方法
CN111274036B (zh) * 2020-01-21 2023-11-07 南京大学 一种基于速度预测的深度学习任务的调度方法
CN111338798A (zh) * 2020-02-21 2020-06-26 北京天融信网络安全技术有限公司 一种cpu使用率预测方法及装置
CN112214295A (zh) * 2020-09-23 2021-01-12 桂林理工大学 一种多cpu/gpu异构服务器集群的低能耗作业调度方法
CN112214295B (zh) * 2020-09-23 2024-02-06 桂林理工大学 一种多cpu/gpu异构服务器集群的低能耗作业调度方法
CN114265695A (zh) * 2021-12-26 2022-04-01 特斯联科技集团有限公司 基于决策技术的能控装置及系统

Also Published As

Publication number Publication date
CN105446816B (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
CN105446816A (zh) 一种面向异构平台的能耗优化调度方法
CN109491790B (zh) 基于容器的工业物联网边缘计算资源分配方法及系统
CN104657221A (zh) 一种云计算中基于任务分类的多队列错峰调度模型及方法
Liu et al. Job scheduling model for cloud computing based on multi-objective genetic algorithm
Sharma et al. A survey of job scheduling and resource management in grid computing
CN104915407A (zh) 一种基于Hadoop多作业环境下的资源调度方法
Huang et al. Energy-aware virtual machine placement in data centers
CN102981890B (zh) 一种在虚拟化数据中心内的计算任务及虚拟机部署方法
CN102780759A (zh) 基于调度目标空间的云计算资源调度方法
CN105159762A (zh) 基于贪心策略的启发式云计算任务调度方法
Liu et al. A survey on virtual machine scheduling in cloud computing
CN111221624A (zh) 一种针对基于Docker容器技术的调控云平台的容器管理方法
CN104331321A (zh) 基于禁忌搜索和负载均衡的云计算任务调度方法
CN104536803A (zh) 一种基于组合优化的虚拟机调度方法
Fernández-Cerero et al. Sphere: Simulator of edge infrastructures for the optimization of performance and resources energy consumption
Zhou et al. Strategy optimization of resource scheduling based on cluster rendering
CN111242801A (zh) 一种电力系统调控云电网运行分析平台
Liao et al. Energy consumption optimization scheme of cloud data center based on SDN
CN105005503A (zh) 基于元胞自动机的云计算负载均衡任务调度方法
CN106027318A (zh) 一种基于云计算的虚拟机两级优化调度管理平台
CN102063329B (zh) 基于多代理协作的管理任务动态分解方法及系统
He et al. Energy-efficient framework for virtual machine consolidation in cloud data centers
Fiore et al. A cluster-based data-centric model for network-aware task scheduling in distributed systems
CN117493020A (zh) 一种数据网格的计算资源调度实现方法
CN103176850A (zh) 一种基于负载均衡的电力系统网络集群任务分配方法

Legal Events

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