CN105260005B - 面向能耗的云工作流调度优化方法 - Google Patents

面向能耗的云工作流调度优化方法 Download PDF

Info

Publication number
CN105260005B
CN105260005B CN201510607563.1A CN201510607563A CN105260005B CN 105260005 B CN105260005 B CN 105260005B CN 201510607563 A CN201510607563 A CN 201510607563A CN 105260005 B CN105260005 B CN 105260005B
Authority
CN
China
Prior art keywords
task
virtual machine
host
energy consumption
consumption
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.)
Expired - Fee Related
Application number
CN201510607563.1A
Other languages
English (en)
Other versions
CN105260005A (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.)
Nanjing Xiyan Network Information Technology Co ltd
Original Assignee
Zhejiang Gongshang University
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 Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CN201510607563.1A priority Critical patent/CN105260005B/zh
Publication of CN105260005A publication Critical patent/CN105260005A/zh
Application granted granted Critical
Publication of CN105260005B publication Critical patent/CN105260005B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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

  • Power Sources (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

本发明公开了一种面向能耗的云工作流调度优化方法,包括如下步骤:(1)建立面向能耗的云工作流过程模型和资源模型;(2)计算任务的优先级;(3)从任务集T中取出一个优先级最高的任务t,找出可以执行任务t的虚拟机集合VMt,计算把任务t分别分配给VMt中的每个虚拟机后完成所有已分配任务将消耗的能耗;(4)找出消耗能耗最小的vm,如果最小的只有一个,把t分配给此vm,如有多个,则把t分配给能耗消耗最小当中其所在主机性能功耗比最高的;把任务t从任务集T中删除,若任务集T不为空则转到(3),否则转到(5);(5)输出工作流调度方案。提出的调度优化方法考虑了能耗因素,在保持工作流执行时间效率的同时有效降低主机处理任务所消耗的能耗。

Description

面向能耗的云工作流调度优化方法
技术领域
本发明涉及一种计算机技术、信息技术和系统工程领域,更具体的说,尤其涉及一种面向能耗的云工作流调度优化方法。
背景技术
云计算环境下的工作流,简称“云工作流”,是云计算与工作流相关技术的整合,能有效提高云计算的服务质量,在需要高效计算性能和大规模存储支撑的跨组织业务协作、科学计算等领域具有广泛的应用前景。在云计算环境下,通常配置有型号不一定相同的众多主机;工作流执行时,通常以虚拟机作为计算资源的最小分配单位负责接收并处理工作流任务,而虚拟机是建立在单台主机中的,由主机给其分配计算能力、带宽。云工作流调度是指在满足工作流任务时序和用户需要约束下如何把工作流任务映射/分配到合适的云计算资源(虚拟机)上,以及如何安排被分配到云计算资源(虚拟机)上的任务的执行顺序。云工作流调度直接决定了整个云工作流系统的性能,已成为云工作流系统的一个重要研究内容。当前大多数的云工作流调度/执行优化方法通常只关注执行时间或成本的优化,很少考虑能耗因素,少数基于DVFS技术的云工作流执行/调度优化方法考虑了能耗因素,但DVFS技术需要调整服务器CPU的运行电压/频率、反复关闭/重启服务器,这会影响服务器的性能,也会提升服务器组件的磨损率,进而引发服务器采购与替换成本的上升,在实际使用中有一定的局限性。
发明内容
本发明的目的就在于为了解决上述问题而提供了一种面向能耗的云工作流调度优化方法。
本发明通过以下技术方案来实现上述目的:面向能耗的云工作流调度优化方法,包括如下步骤:
步骤1:建立面向能耗的云工作流过程模型和资源模型,获得调度优化所需的信息。
云工作流过程模型定义为:Φ={T,E},T是云工作流过程模型中的任务t的集合,E是一个有向边即T中元素有序对的集合,E中的每个有向边被表示为e(ti,tj);在一个e(ti,tj)中,ti称为tj的前继任务,tj称为ti的后继任务,tj只有在其前继任务ti被执行完成后才能被资源执行;任务集T中的任务t被进一步描述为t=(id,length,IFL,OFL);t.id是任务t的编号或名称;t.length是任务t的执行长度,即任务t被计算资源即虚拟机处理时需要耗费的指令数量;t.IFL是处理任务t时需要的输入文件列表;t.OFL是任务t被处理后产生的输出文件列表。用file.size表示文件file的大小。
云工作流资源模型被定义为:cr=(H,VM);cr.H是云计算环境下主机h的集合;cr.VM是云计算环境下虚拟机vm的集合。
所述主机h被定义为:h=(id,ps,η,st);h.id是主机h的编号或名称;h.ps是主机h的计算能力;h.η是主机h的负载--功耗函数,根据《计算服务器功耗和性能特性的工业标准》提供的数据采用线性内插法来计算获得;h.st是主机h的当前状态,h.st=0表示当前主机h是空闲的,h.st=1表示当前主机h正在处理任务,在s时刻主机h的状态用h.st(s)表示。
所述虚拟机vm被定义为:vm=(id,hid,T,ps,bw,st);vm.id是虚拟机vm的编号或名称;vm.hid是虚拟机vm所在主机的编号或名称;vm.T是虚拟机vm可以处理的工作流任务集合;vm.ps是虚拟机vm的计算能力,由所在主机分配;vm.bw是虚拟机vm的带宽,由所在主机分配;vm.st是虚拟机vm的当前状态,vm.st=0表示当前虚拟机vm空闲,vm.st=1表示当前虚拟机vm正在处理任务,在s时刻虚拟机vm的状态用vm.st(s)表示;vm处于1状态时,其总是全力处理任务,其利用率为1,反之,vm处于0状态时,虚拟机不处理任务,其利用率为0。
步骤2:计算任务的优先级,即rank值
首先,计算处理任务ti时的平均执行时间需要从共享数据库获得输入数据/文件的平均传输时间及两个连续任务在虚拟机间的数据/文件平均传输时间
处理任务ti时的平均执行时间的计算方法如下:
其中:VMi={vm|ti∈vm.T}表示所有可以处理任务ti的虚拟机集合。
处理任务ti时需要从共享数据库获得输入数据/文件的平均传输时间的计算方法如下:
从任务ti到tj的数据/文件平均传输时间的计算方法如下:
其中:VMj={vm|tj∈vm.T}表示所有可以执行任务tj的虚拟机集合;
然后,计算每个任务的优先级,在工作流过程模型中对于没有后继任务的结束任务ti,其优先级为:
其它任务的优先级采用如下递归公式进行计算:
其中:succ(ti)={t|e(ti,t)∈E}是任务ti的后继任务集合;
步骤3:从任务集T中取出一个优先级最高的任务t,找出可以执行任务t的虚拟机集合VMt,计算把任务t分别分配给VMt中的每个虚拟机后完成包括t在内的所有已分配任务{t′1,L,t′m}将消耗的能耗
所述的计算方法如下:
其中:为任务t′1,L,t′m的完成时间,VMh={vm|vm.hid=h.id}是创建在主机h中的虚拟机集合。
步骤4:找出消耗能耗最小的vm,如果最小的只有一个,把t分配给此vm,如有多个最小的,则计算这些vm开始处理任务t时所在主机h的性能功率比ξh(s),其中s是虚拟机vm开始处理任务t的时刻,把t分配给能耗消耗最小当中其所在主机性能功耗比最高的;把任务t从任务集T中删除,若任务集T不为空则转到步骤3,否则转到步骤5;
所述虚拟机vm开始处理任务t时其所在主机h的性能功率比ξh(s)计算如下:
步骤5:输出工作流调度方案。
在步骤1中,若任务ti是任务tj的前继任务,那么任务ti执行后产生的输出文件中至少有一个是任务tj执行所需要的输入文件,即:ti.OFLI tj.IFL≠φ。
在步骤1中,所述主机状态为0的充要条件是:主机中的所有虚拟机都没有处理任务处于0状态,形式化表示为:主机状态为1的充要条件是:主机中有虚拟机在处理任务处于1状态,形式化表示为:
在步骤1中,所述任务执行长度与虚拟机的处理能力共同影响着虚拟机执行任务的时间。任务t在虚拟机vm上的执行时间为:
在步骤1中,所述文件大小与虚拟机带宽共同影响着文件在不同虚拟机或虚拟机与共享文件系统之间的传输时间。
文件在虚拟机vmi,vmj间传输文件file所需的时间为:
文件在虚拟机vmi与共享数据库间传输file所需的时间为:
本发明的有益效果在于:
(1)在云工作流资源模型中包含能耗因素的描述,建立了云工作流任务执行、虚拟机状态和主机负载之间的关系,根据《计算服务器功耗和性能特性的工业标准》(TheSPECpower benchmark)提供的数据采用线性内插法来计算建立了主机负载与功耗之间的关系,实现了基于负载的能耗计算方法。
(2)在任务优先级计算及任务选择时考虑了任务处理时文件在不同虚拟机间传输的速度差异、虚拟机与本地共享数据库间的文件传输等因素,更符合实际情况,在资源选择时,采用了能耗消耗最小的规则,在保持工作流执行时间效率的同时有效降低主机处理任务所消耗的能耗。
(3)从主机负载与功耗关系角度,进行能耗的计算与调度优化方法,不需要通过调整主机CPU的运行电压/频率、反复关闭/重启主机来实现能耗优化,不会影响主机的性能,也不会提升主机组件的磨损率,使用限制更少、范围更广。
附图说明
图1一个CyberShake工作流的过程逻辑结构图。
具体实施方式
下面结合说明书附图及较佳实施例对本发明做进一步详细说明,但本发明并不仅限于以下的实施例。
图1为一个CyberShake工作流的过程逻辑结构图,由20个任务(task)组成,每个任务的执行长度以及处理所需要的输入文件和处理后的输出文件的名称以及其长度如表1所示。
数据中心设置有两台异构的物理主机,分别为ProLiant ML110G5(2cores×2660MHz,4GB)和ProLiant ML110G3(Historical)(2cores×3000MHz,4GB),各负载水平上的功耗如参数表2与表3所示。
有Large型、Medium型、以及Small型等三种不同类型的虚拟机作为计算资源的最小分配单位负责接收并处理工作流任务,其中:Large型虚拟机的处理能为2500MI/s,带宽为200Mbit/s;Medium型虚拟机的处理能力2000MI/s,带宽为150Mbit/s;Small型虚拟机的处理能力1500MI/s,带宽为100Mbit/s。
两台服务器中虚拟机(计算资源节点)配置方案如表4所示。
表1 CyberShake工作流中各任务的具体参数
表2 HP ProLiant ML110G5在各负载水平上的功耗参数
负载 0(空闲) 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
平均有效功率(W) 93.7 97 101 105 110 116 121 125 129 133 135
表3 HP ProLiant ML110G3(Historical)在各负载水平上的功耗参数
负载 0(空闲) 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
平均有效功率(W) 105 112 118 125 131 137 147 153 157 164 169
表4两台主机中的虚拟机配置方案
针对上述案例,一种面向能耗的云工作流调度优化方法,包括以下实施步骤:
执行步骤1:建立面向能耗的云工作流过程模型和资源模型,获得调度优化所需的信息。
过程模型中:T={t1,t2,L,t20},
t1.length=120000MI,t1.IFL={fd1,fd2,fd3},t1.OFL={f1-1,f1-2}
t2.length=126000MI,t2.IFL={fd4,fd5,fd6},t2.OFL={f2-1,f2-2}
t3.length=60000MI,t2.IFL={fd7,f1-1,f1-2},t2.OFL={f3-1}
……
t20.length=3000MI,t20.IFL={f11-1,f12-1,f13-1,f14-1,f15-1,f16-1,f17-1,f18-1},t20.OFL={f20-1}
fd1.size=900MB,fd2.size=900MB,fd3.size=135MB,f1-1.size=600MB,……,f20-1.size=40MB。
资源模型中:H={hHP3000,hHP2600},VM={vm1,vm2,vm3,vm4,vm5};
hHP3000.ps=3000×2=6000MI/s,hHP2660.ps=2660×2=5320MI/s;
根据表2和表3所提供的在各负载水平上的功耗参数,采用线性内插法可分别得到两种主机:hHP3000,hHP2660的负载--功耗函数。
vm1.hid=hHP3000,vm2.hid=hHP2660,vm3.hid=hHP3000,vm4.hid=hHP2660,vm5.hid=hHP3000。vm1.T={t1,t2,t3,t6,t7,t8,t12,t18},vm2.T={t1,t2,t3,t5,t13,t14,t15,t18,t19},vm3.T={t1,t2,t5,t6,t9,t11,t12,t14,t17,t18,t19},vm4.T={t1,t2,t4,t7,t10,t11,t13,t14,t16,t17,t20},vm5.T={t1,t4,t8,t9,t10,t12,t15,t16,t17,t20};
vm1.ps=1500MI/s,vm2.ps=2000MI/s,vm3.ps=2000MI/s,vm4.ps=2500MI/s,vm5.ps=2500MI/s;
vm1.bw=100Mbit/s,vm2.bw=150Mbit/s,vm3.bw=150Mbit/s,vm4.bw=200Mbit/s,vm5.bw=200Mbit/s。
执行步骤2:计算任务的优先级
计算任务ti(i=1,L 20)的平均执行时间
同理可得结果如表5所示。
表5各任务平均执行时间
计算从共享数据库获得文件的平均传输时间
同理可得结果如表6所示。
表6从共享数据库获得文件的平均传输时间
计算任务ti间文件的平均传输时间:
同理可得其他任务间文件的平均传输时间,结果如表7所示。
表7任务间文件的平均传输时间
最后计算各任务的优先级:
同理可以获得其他任务的优先级,结果如表8所示。
表8各任务的优先级rank(ti)
任务 优先级 任务 优先级 任务 优先级
t1 284.77 t5 30.09 t13 6.09
t2 251.7 t10 24.6 t14 5.9
t3 55.17 t9 23.36 t17 5.46
t7 46.8 t12 7.886666667 t16 5.22
t8 35.72 t11 7.17 t19 1.65
t4 34.68666667 t18 7 t20 1.2
t6 34.1 t15 6.9
执行步骤3:从任务集T={t1,t2,L,t20}中的取出一个优先级最高的任务t1,找出可以执行任务t1的虚拟机集合VM1={vm1,vm2,vm3,vm4,vm5}。计算把任务t1分别分配给VM1中的每个虚拟机后完成包括t1在内的所有已分配任务{t1}将消耗的能耗若把t1分配给vm1,根据式(8),可得t1的执行时间根据式(10),可得vm1执行任务t1前获得所需文件的传输时间则任务t1完成时间为234.8,则(0-234.8)时间段内,hHP2660空闲,根据负载--功耗函数,可得主机hHP2660此时的平均有效功率为93.7W,而在hHP3000中只有vm1在运行,此时主机hHP3000的负载为0.25,根据负载--功耗函数,可得主机hHP3000此时的平均有效功率为121.5,根据式(6),可得整个云计算资源所消耗的能耗为234.8*93.7+234.8*121.5=50528.96。同理,计算若把t1分配给vm2,vm3,vm4,vm5后整个云计算资源所消耗的能耗分别为34891.66918,36018.24,27487.11429,28302.78。
执行步骤4:对于任务t1,经对比可以发现消耗能耗最小的虚拟机为vm4,因此把任务t1分配给vm4,t1的实际完成时间为125.4。把t1从任务集T中删除,更新任务集T,T={t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20},由于任务集T非空,故转到步骤3。
执行步骤3:从当前任务集T={t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20}中选择一个优先级最高的任务t2;当前可执行t2的虚拟机集合VM2={vm1,vm2,vm3,vm4},计算把t2分别分配给VM2中每个虚拟机后完成包括t2在内的所有已分配任务{t1,t2}将消耗的能耗若把t2分配给vm1,根据式(8),可得t2的执行时间根据式(10),可得vm1执行任务t2前获得所需文件的传输时间则任务t2的完成时间为213.6。对于hHP2660,在(0-125.4)时间段内,只有vm4运行,主机hHP2660的负载为0.469924812,根据负载--功耗函数,可知平均有效功率为114.1954887,在(125.4-213.6)时间段内,主机hHP2660处于空闲状态,根据负载--功耗函数,闲置状态对应的平均有效功率为93.7,则hHP2660主机的能耗为:125.4*114.1954887+(213.6-125.4)*93.7=22584.45429;对于hHP3000,在(0-213.6)时间段内,只有vm1运行,主机的负载为0.25,根据负载--功耗函数,平均有效功率为121.5,则hHP3000主机的能耗为:213.6*121.5=25952.4,根据式(6),可得整个云计算资源所消耗的能耗为22584.45429+25952.4=48536.85429。同理,计算把t2分配给vm2,vm3,vm4整个云计算资源所消耗的能耗分别为34704.78497,35542.71428,52738.43459。
执行步骤4:对于任务t2,经对比可以发现消耗能耗最小的虚拟机为vm2,则把任务t2分配给vm2,t2的完成时间为149.4,把t2从任务集T中删除,更新任务集T={t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20},由于任务集T非空,故转到步骤3。
执行步骤3:从当前任务集T={t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20}中选择一个优先级最高的任务t3;可执行t3的虚拟机集合VM3={vm1,vm2},计算把t3分别分配给VM3中每个虚拟机后完成包括t3在内的所有已分配任务{t1,t2,t3}将消耗的能耗若把t3分配给vm1,根据式(8),可得t3的执行时间根据式(9)和式(10)可得虚拟机vm1执行t3前获得所需文件的传输时间则任务t3的完成时间为125.4+40+104.4=269.8;对于hHP2660,在(0-125.4)时间段内vm2、vm4同时在运行,根据负载--功耗函数,主机的负载为0.84584662,平均有效功率为130.8345865,在(125.4-149.4)时间段内,只有vm2运行,根据负载--功耗函数,主机的负载为0.37593985,平均有效功率为108.7969925,在(149.4-269.8)时间段内,主机处于空闲状态,根据负载--功耗函数,闲置状态对应的平均有效功率为93.7W,则hHP2660主机的能耗为:125.4*130.8345865+(149.4-125.4)*108.7969925+(269.8-149.4)*93.7=30299.26497;对于hHP3000,在(0-125.4)时间段内,主机处于空闲状态,根据负载--功耗函数,闲置状态对应的平均有效功率为105,在(125.4-269.8)时间段内,只有vm1运行,根据负载--功耗函数,主机的负载为0.25,平均有效功率为121.5,则hHP3000主机的能耗为:125.4*105+(269.8-125.4)*121.5=30711.6,根据式(6),可得整个云计算资源所消耗的能耗为30299.26497+30711.6=61010.86497。同理,计算把t2分配给vm2,整个云计算资源所消耗的能耗为55998.96542。
执行步骤4:对于任务t3,经对比可以发现消耗能耗最小的虚拟机为vm2,则把任务t3分配给vm2,t3的完成时间为249,把t3从任务集T中删除,更新任务集T={t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20},由于任务集T非空,故转到步骤3。
这样不断重复执行步骤3和步骤4直到完成优先级最低的任务t20的分配,得到所有任务的分配方案(整个任务分配的执行过程如下表9所示)。
表9整个任务分配的执行过程
执行步骤5:输出工作流调度(任务分配)方案,如表10所示。
表10工作流调度(任务分配)方案
任务调度顺序 任务ID 任务开始时间 任务结束时间 任务处理时间 当前能耗 虚拟机
1 t1 0 125.4 125.4 27487.11429 vm4
2 t2 0 149.4 149.4 34704.78497 vm2
3 t3 149.4 249 99.6 55998.96542 vm2
4 t7 149.4 222.6 73.2 57612.1173 vm4
5 t8 149.4 216.6 67.2 59426.5173 vm5
6 t4 222.6 244.8 22.2 59915.75189 vm4
7 t6 125.4 208.6 83.2 61805.35189 vm3
8 t5 208.6 293 84.4 72412.95189 vm3
9 t10 216.6 276.6 60 74092.95189 vm5
10 t9 276.6 337.8 61.2 84663.51189 vm5
11 t12 244.8 257.6 12.8 84842.71189 vm1
12 t11 249 257.64 8.64 85019.79291 vm4
13 t18 276.6 284.1 7.5 85133.02035 vm2
14 t15 284.1 293.4 9.3 85273.42238 vm2
15 t13 293.4 301.8 8.4 85400.23712 vm2
16 t14 293 296 3 85469.23712 vm3
17 t17 337.8 340.44 2.64 86065.08512 vm5
18 t16 257.64 264.36 6.72 86202.81481 vm4
19 t19 337.8 368.25 30.45 92401.20181 vm3
20 t20 340.44 356.64 16.2 92733.22872 vm4
上述实施例只是本发明的较佳实施例,并不是对本发明技术方案的限制,只要是不经过创造性劳动即可在上述实施例的基础上实现的技术方案,均应视为落入本发明专利的权利保护范围内。

Claims (1)

1.面向能耗的云工作流调度优化方法,其特征在于:包括如下步骤:
步骤1:建立面向能耗的云工作流过程模型和资源模型,获得调度优化所需的信息
云工作流过程模型定义为:Φ={T,E},T是云工作流过程模型中的任务t的集合,E是一个有向边即T中元素有序对的集合,E中的每个有向边被表示为e(ti,tj);在一个e(ti,tj)中,ti称为tj的前继任务,tj称为ti的后继任务,tj只有在其前继任务ti被执行完成后才能被资源执行;任务集T中的任务t被进一步描述为t=(id,length,IFL,OFL);t.id是任务t的编号或名称;t.length是任务t的执行长度,即任务t被计算资源即虚拟机处理时需要耗费的指令数量;t.IFL是处理任务t时需要的输入文件列表;t.OFL是任务t被处理后产生的输出文件列表;用file.size表示文件file的大小;
云工作流资源模型被定义为:cr=(H,VM);cr.H是云计算环境下主机h的集合;cr.VM是云计算环境下虚拟机vm的集合;
所述主机h被定义为:h=(id,ps,η,st);h.id是主机h的编号或名称;h.ps是主机h的计算能力;h.η是主机h的负载--功耗函数,根据《计算服务器功耗和性能特性的工业标准》提供的数据采用线性内插法来计算获得;h.st是主机h的当前状态,h.st=0表示当前主机h是空闲的,h.st=1表示当前主机h正在处理任务,在s时刻主机h的状态用h.st(s)表示;
所述虚拟机vm被定义为:vm=(id,hid,T,ps,bw,st);vm.id是虚拟机vm的编号或名称;vm.hid是虚拟机vm所在主机的编号或名称;vm.T是虚拟机vm可以处理的工作流任务集合;vm.ps是虚拟机vm的计算能力,由所在主机分配;vm.bw是虚拟机vm的带宽,由所在主机分配;vm.st是虚拟机vm的当前状态,vm.st=0表示当前虚拟机vm空闲,vm.st=1表示当前虚拟机vm正在处理任务,在s时刻虚拟机vm的状态用vm.st(s)表示;vm处于1状态时,其总是全力处理任务,其利用率为1,反之,vm处于0状态时,虚拟机不处理任务,其利用率为0;
步骤2:计算任务的优先级,即rank值
首先,计算处理任务ti时的平均执行时间需要从共享数据库获得输入数据/文件的平均传输时间及两个连续任务在虚拟机间的数据/文件的平均传输时间
处理任务ti时的平均执行时间的计算方法如下:
其中:VMi={vm|ti∈vm.T}表示所有可以处理任务ti的虚拟机集合;
处理任务ti时需要从共享数据库获得输入数据/文件的平均传输时间的计算方法如下:
从任务ti到tj的数据/文件平均传输时间的计算方法如下:
其中:VMj={vm|tj∈vm.T}表示所有可以执行任务tj的虚拟机集合;
然后,计算每个任务的优先级,在工作流过程模型中对于没有后继任务的结束任务ti,其优先级为:
其它任务的优先级采用如下递归公式进行计算:
其中:succ(ti)={t|e(ti,t)∈E}是任务ti的后继任务集合;
步骤3:从任务集T中取出一个优先级最高的任务t,找出可以执行任务t的虚拟机集合VMt,计算把任务t分别分配给VMt中的每个虚拟机后完成包括t在内的所有已分配任务{t′1,L,t′m}将消耗的能耗
所述的计算方法如下:
其中:为任务t′1,L,t′m的完成时间,VMh={vm|vm.hid=h.id}是创建在主机h中的虚拟机集合;
步骤4:找出消耗能耗最小的vm,如果最小的只有一个,把t分配给此vm,如有多个最小的,则计算这些vm开始处理任务t时所在主机h的性能功率比ξh(s),其中s是虚拟机vm开始处理任务t的时刻,把t分配给能耗消耗最小当中其所在主机性能功耗比最高的;把任务t从任务集T中删除,若任务集T不为空则转到步骤3,否则转到步骤5;
所述虚拟机vm开始处理任务t时其所在主机h的性能功率比ξh(s)计算如下:
步骤5:输出工作流调度方案。
CN201510607563.1A 2015-09-22 2015-09-22 面向能耗的云工作流调度优化方法 Expired - Fee Related CN105260005B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510607563.1A CN105260005B (zh) 2015-09-22 2015-09-22 面向能耗的云工作流调度优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510607563.1A CN105260005B (zh) 2015-09-22 2015-09-22 面向能耗的云工作流调度优化方法

Publications (2)

Publication Number Publication Date
CN105260005A CN105260005A (zh) 2016-01-20
CN105260005B true CN105260005B (zh) 2018-09-14

Family

ID=55099730

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510607563.1A Expired - Fee Related CN105260005B (zh) 2015-09-22 2015-09-22 面向能耗的云工作流调度优化方法

Country Status (1)

Country Link
CN (1) CN105260005B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113722076A (zh) * 2021-10-29 2021-11-30 华南理工大学 基于QoS和能耗协同优化的实时工作流调度方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107015858A (zh) * 2016-01-27 2017-08-04 西门子公司 云计算环境中云节点调度方法和装置
CN108416465B (zh) * 2018-01-31 2021-08-31 杭州电子科技大学 一种移动云环境下的工作流优化方法
CN108304256B (zh) * 2018-02-08 2020-09-22 北京信息科技大学 一种边缘计算中低开销的任务调度方法及装置
CN108647084B (zh) * 2018-05-08 2021-07-20 武汉轻工大学 能效云任务调度方法
CN110543148B (zh) * 2018-05-28 2021-04-09 华为技术有限公司 一种任务调度方法及装置
CN108762927B (zh) * 2018-05-29 2022-01-14 上海艾涛信息科技发展有限公司 移动云计算的多目标任务调度方法
CN109032756A (zh) * 2018-07-04 2018-12-18 中国人民解放军国防科技大学 虚拟化云数据中心的调度方法
CN110084507B (zh) * 2019-04-24 2021-07-20 信雅达科技股份有限公司 云计算环境下分级感知的科学工作流调度优化方法
CN110928671B (zh) * 2019-12-10 2022-07-08 浙江工业大学 基于层次与负载均衡遗传算法的云工作流调度优化方法
CN110928669B (zh) * 2019-12-10 2022-05-20 浙江工商大学 基于多种群遗传算法的能耗感知云工作流调度优化方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103778020A (zh) * 2014-02-08 2014-05-07 中国联合网络通信集团有限公司 一种虚拟机放置方法及装置
CN104520815A (zh) * 2014-03-17 2015-04-15 华为技术有限公司 一种任务调度的方法、装置及设备
CN104808770A (zh) * 2015-04-23 2015-07-29 南京大学 基于动态调频的数据中心能耗管理方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103778020A (zh) * 2014-02-08 2014-05-07 中国联合网络通信集团有限公司 一种虚拟机放置方法及装置
CN104520815A (zh) * 2014-03-17 2015-04-15 华为技术有限公司 一种任务调度的方法、装置及设备
CN104808770A (zh) * 2015-04-23 2015-07-29 南京大学 基于动态调频的数据中心能耗管理方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向能耗优化的云工作流调度算法策略;吴汉青;《中国优秀硕士论文全文数据库》;20150515;第23页至第49页 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113722076A (zh) * 2021-10-29 2021-11-30 华南理工大学 基于QoS和能耗协同优化的实时工作流调度方法
CN113722076B (zh) * 2021-10-29 2022-03-29 华南理工大学 基于QoS和能耗协同优化的实时工作流调度方法

Also Published As

Publication number Publication date
CN105260005A (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN105260005B (zh) 面向能耗的云工作流调度优化方法
Qureshi et al. Survey on grid resource allocation mechanisms
Mao et al. Max–min task scheduling algorithm for load balance in cloud computing
Lee et al. Performance analysis based resource allocation for green cloud computing
Kessaci et al. A multi-start local search heuristic for an energy efficient VMs assignment on top of the OpenNebula cloud manager
CN110209494A (zh) 一种面向大数据的分布式任务调度方法及Hadoop集群
da Rosa Righi et al. A lightweight plug-and-play elasticity service for self-organizing resource provisioning on parallel applications
Thaman et al. Green cloud environment by using robust planning algorithm
Abd et al. An effective approach for managing power consumption in cloud computing infrastructure
Li et al. An effective scheduling strategy based on hypergraph partition in geographically distributed datacenters
Tian et al. An online parallel scheduling method with application to energy-efficiency in cloud computing
CN107070965B (zh) 一种虚拟化容器资源下的多工作流资源供给方法
CN103257896B (zh) 一种云环境下的Max-D作业调度方法
Raju et al. Deadline aware two stage scheduling algorithm in cloud computing
Panda et al. An efficient task consolidation algorithm for cloud computing systems
Djebbar et al. Tasks scheduling and resource allocation for high data management in scientific cloud computing environment
Han et al. Energy efficient VM scheduling for big data processing in cloud computing environments
Stafford et al. Improving utilization of heterogeneous clusters
Zhu et al. Energy-efficient independent task scheduling in cloud computing
Senger Improving scalability of Bag-of-Tasks applications running on master–slave platforms
Singh et al. A green computing supportive allocation scheme utilizing genetic algorithm and support vector machine
Gąsior et al. A Sandpile cellular automata-based scheduler and load balancer
Zhou et al. Stability property of clouds and cooperative scheduling policies on multiple types of resources in cloud computing
CN108563497A (zh) 一种高效的多维度算法调度方法、任务服务器
Gawali et al. Implementation of IDEA, BATS, ARIMA and queuing model for task scheduling in cloud computing

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
TR01 Transfer of patent right

Effective date of registration: 20201222

Address after: 233000 Room 1402, Ziyang Building, Pearl Plaza, Huaishang District, Bengbu City, Anhui Province

Patentee after: Anhui Hanbang Technology Consulting Co.,Ltd.

Address before: 310012 149 Xihu District teachers' road, Hangzhou, Zhejiang

Patentee before: ZHEJIANG GONGSHANG University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210305

Address after: 210000 No.22, 1st floor, Jinling Hotel, No.2 Hanzhong Road, Gulou District, Nanjing City, Jiangsu Province

Patentee after: Nanjing Xiyan Network Information Technology Co.,Ltd.

Address before: 233000 Room 1402, Ziyang Building, Pearl Plaza, Huaishang District, Bengbu City, Anhui Province

Patentee before: Anhui Hanbang Technology Consulting Co.,Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180914

Termination date: 20210922

CF01 Termination of patent right due to non-payment of annual fee