CN105162844A - 一种任务分配的方法及装置 - Google Patents

一种任务分配的方法及装置 Download PDF

Info

Publication number
CN105162844A
CN105162844A CN201510475799.4A CN201510475799A CN105162844A CN 105162844 A CN105162844 A CN 105162844A CN 201510475799 A CN201510475799 A CN 201510475799A CN 105162844 A CN105162844 A CN 105162844A
Authority
CN
China
Prior art keywords
server
power consumption
consumption values
migration
task
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
CN201510475799.4A
Other languages
English (en)
Other versions
CN105162844B (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201510475799.4A priority Critical patent/CN105162844B/zh
Publication of CN105162844A publication Critical patent/CN105162844A/zh
Application granted granted Critical
Publication of CN105162844B publication Critical patent/CN105162844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例公开了一种任务分配的方法及装置,涉及通信技术领域,能够更好的降低数据中心的能耗。本发明实施例的方法包括:分别获取第一服务器和第二服务器的能力参数;根据能力参数,判断第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上;当第一服务器上所有任务和第二服务器上所有任务能全部运行在第一服务器或第二服务器上时,获取能耗预测值;根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。本发明适用于一种数据中心。

Description

一种任务分配的方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种任务分配的方法及装置。
背景技术
随着通信技术的发展,为了降低数据中心的能耗,通常采用虚拟机迁移的方法。在虚拟机的迁移过程中,考虑到每个服务器上运行的虚拟机的数量,可以将多台运行着少数虚拟机的服务器上的虚拟机集中迁移至一台或少数几台服务器上,之后将已经迁空虚拟机的服务器关停,以达到降低数据中心能耗的目的。比如:服务器A上运行1个虚拟机,服务器B上运行2个虚拟机,可以通过将服务器A上运行的1个虚拟机迁移至服务器B,并将服务器A关停,从而降低数据中心的能耗。
采用上述迁移虚拟机的方法,虽然可以一定程度上降低数据中心的能耗,但由于在虚拟机迁移的过程中,只考虑到服务器上运行的虚拟机的数量,但是,虚拟机在迁移过程中也会产生一定的能耗,并且产生的能耗会影响数据中心的能耗。因此,可能由于服务器A上执行的任务数量远高于服务器B上执行的任务数量,而导致将服务器A上运行的1个虚拟机迁移至服务器B所耗费的能耗,远高于将服务器B上运行的2个虚拟机迁移至服务器A所耗费的能耗。因此,以虚拟机为迁移粒度进行迁移,只考虑到被迁移的虚拟机的数量,从而导致通过迁移虚拟机无法更好的降低数据中心的能耗。
发明内容
本发明实施例提供一种任务分配的方法及装置,能够更好的降低数据中心的能耗。
为达到上述目的,本发明实施例采用如下技术方案:
第一方面,本发明实施例提供一种任务分配的方法,所述方法包括:
分别获取第一服务器和第二服务器的能力参数,所述能力参数用于表示所述第一服务器或所述第二服务器执行任务的能力;
根据所述能力参数,判断所述第一服务器上所有任务和所述第二服务器上所有任务是否能全部运行在所述第一服务器上,且能全部运行在所述第二服务器上;
当所述第一服务器上所有任务和所述第二服务器上所有任务能全部运行在所述第一服务器或所述第二服务器上时,获取能耗预测值,所述能耗预测值包括将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,以及将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值;
根据所述能耗预测值,将所述第一服务器上所有任务迁移至所述第二服务器,或将所述第二服务器上所有任务迁移至所述第一服务器。
第二方面,本发明实施例提供一种任务分配的装置,所述装置包括:
获取模块,用于分别获取第一服务器和第二服务器的能力参数,所述能力参数用于表示所述第一服务器或所述第二服务器执行任务的能力;
判断模块,用于根据所述获取模块获取的所述能力参数,判断所述第一服务器上所有任务和所述第二服务器上所有任务是否能全部运行在所述第一服务器上,且能全部运行在所述第二服务器上;
所述获取模块,还用于当所述第一服务器上所有任务和所述第二服务器上所有任务能全部运行在所述第一服务器或所述第二服务器上时,获取能耗预测值,所述能耗预测值包括将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,以及将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值;
迁移模块,用于根据所述获取模块获取的所述能耗预测值,将所述第一服务器上所有任务迁移至所述第二服务器,或将所述第二服务器上所有任务迁移至所述第一服务器。
本发明实施例提供的一种任务分配的方法及装置,分别获取第一服务器和第二服务器的能力参数,并根据能力参数进行判断,当第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上时,获取能耗预测值,并根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。其中,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,根据能耗预测值来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种具体应用场景示意图;
图2为本发明实施例提供的一种任务分配的方法流程图;
图3为本发明实施例提供的一种任务分配的示意图;
图4为本发明实施例提供的另一种任务分配的示意图;
图5为本发明实施例提供的另一种任务分配的示意图;
图6为本发明实施例提供的另一种任务分配的方法流程图;
图7为本发明实施例提供的另一种任务分配的方法流程图;
图8为本发明实施例提供的另一种任务分配的方法流程图;
图9为本发明实施例提供的一种任务分配的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例可以用于一种数据中心,数据中心设置有至少两个服务器和云管理模块。其中,云管理模块可以用于监测数据中心中各个服务器的状态,比如:服务器的CPU(CentralProcessingUnit,中央处理器)利用率、内存使用率和磁盘吞吐量等信息,以及服务器上所有任务的状态,比如:任务的数量、大小等信息。如图1所示,数据中心设置有N个服务器和云管理模块,每个服务器上至少执行一个任务。
本发明实施例提供一种任务分配的方法,如图2所示,该方法均由云管理模块来执行,该方法包括:
101、分别获取第一服务器和第二服务器的能力参数。
其中,能力参数用于表示第一服务器或第二服务器执行任务的能力。在本发明实施例中,能力参数可以包括第一指令数量和第二指令数量,第一指令数量可以为处理第一服务器或第二服务器上所有任务执行的指令数量之和,第二指令数量可以为第一服务器或第二服务器除执行所有任务以外,还能执行的指令数量之和。
第一指令数量可以体现执行结束服务器上所有任务时,总共需要执行多少条指令,而第二指令数量可以体现服务器除了可以用于执行当前服务器上的所有任务,还可以执行多少条指令。因此,结合第一指令数量和第二指令数量,可以充分体现服务器的处理能力,也就是服务器可以执行的指令数量。例如:服务器的处理能力为服务器可以执行1000条指令,当前服务器上所有任务执行结束共需要执行800条指令,而服务器在保证当前所有任务可以顺利执行的情况下,还可以执行200条指令。也就是服务器的第一指令数量为800,第二指令数量为200。
需要说明的是,能力参数不仅限于第一指令数量和第二指令数量看,能力参数还可以包括其他可以用于表示服务器执行任务的能力的参数。在本发明实施例中,不仅可以将两个服务器上所有任务迁移至同一服务器,只要服务器的状态允许,还可以将更多个服务器上所有任务迁移至同一服务器。
102、根据能力参数,判断第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上。其中,当第一服务器上所有任务和第二服务器上所有任务能全部运行在第一服务器上,且能全部运行在第二服务器上时,执行步骤103和步骤104;否则,执行步骤105。
103、获取能耗预测值。
其中,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。
如图3所示,为第一服务器和第二服务器的初始状态,其中,T1和T2用于表示任务负载,也就是用于表示服务器执行任务结束时,需要执行的指令数量。当根据能力参数,确定第一服务器上所有任务可以迁移至第二服务器上,或第二服务器上所有任务可以迁移至第一服务器上,也就是如图4所示或如图5所示,则获取能耗预测值,以便于选择最优的迁移方案。
104、根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。
需要说明的是,当第一服务器上所有任务迁移至第二服务器之后,或当第二服务器上所有任务迁移至第一服务器之后,云管理模块可以将已经迁空任务的服务器关停,从而降低数据中心的能耗。
105、不执行任务迁移的操作。
本发明实施例提供的一种任务分配的方法,分别获取第一服务器和第二服务器的能力参数,并根据能力参数进行判断,当第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上时,获取能耗预测值,并根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。其中,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,根据能耗预测值来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
为了更加准确的获取能耗预测值,在本发明实施例的一个实现方式中,可以通过获取第一初始能耗值和第二初始能耗值之和、第一迁移能耗值和第二迁移后能耗值之和,以及第二迁移能耗值和第一迁移后能耗值之和,经过计算来确定第一能耗预测值和第二能耗预测值。因此,在如图2所示的实现方式的基础上,还可以实现为如图6所示的实现方式。其中,步骤103获取能耗预测值,可以具体实现为步骤1031至步骤1034:
1031、获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移后能耗值、第二迁移能耗值和第一迁移后能耗值。
其中,第一初始能耗值为第一服务器的初始能耗值,第二初始能耗值为第二服务器的初始能耗值,第一迁移能耗值为第一服务器上所有任务的迁移能耗值,第二迁移能耗值为第二服务器上所有任务的迁移能耗值,第一迁移后能耗值为第二服务器上所有任务迁移至第一服务器之后,第一服务器的能耗值,第二迁移后能耗值为第一服务器上所有任务迁移至第二服务器之后,第二服务器的能耗值。
1032、根据第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,进行计算得到第一初始能耗值和第二初始能耗值之和、第一迁移能耗值和第二迁移后能耗值之和,以及第二迁移能耗值和第一迁移后能耗值之和。
1033、根据第一初始能耗值和第二初始能耗值之和,与第一迁移能耗值和第二迁移后能耗值之和的差值,确定将第一服务器上所有任务迁移至第二服务器上所节省的能耗值。
在本发明实施例中,云管理模块可以根据公式
△E(T1)=(Epm1+Epm2)-[E'pm2+E(T1)]=Epm1-E(T1)-(E'pm2-Epm2),进行计算得到将第一服务器上所有任务迁移至第二服务器上所节省的能耗值△E(T1)。也就是将如图3所示的任务分配状态调整为如图4所示的任务分配状态。其中,T1用于表示第一服务器执行任务结束时,需要执行的指令数量,Epm1为第一初始能耗值,Epm2为第二初始能耗值,E(T1)为第一迁移能耗值,E'pm2为第二迁移后能耗值。需要说明的是,在本发明实施例中,对于获取将第一服务器上所有任务迁移至第二服务器上所节省的能耗值的方式不做限定,云管理模块还可以通过获取第一初始能耗值、第一迁移能耗值,以及第二迁移后能耗值和第二初始能耗值的差值,来确定将第一服务器上所有任务迁移至第二服务器上所节省的能耗值。
1034、根据第一初始能耗值和第二初始能耗值之和,与第二迁移能耗值和第一迁移后能耗值之和的差值,确定将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。
在本发明实施例中,云管理模块可以根据公式
△E(T2)=(Epm1+Epm2)-[E'pm1+E(T2)]=Epm2-E(T2)-(E'pm1-Epm1),进行计算得到将第二服务器上所有任务迁移至第一服务器上所节省的能耗值△E(T2)。也就是将如图3所示的任务分配状态调整为如图5所示的任务分配状态。其中,T2用于表示第二服务器执行任务结束时,需要执行的指令数量,Epm1为第一初始能耗值,Epm2为第二初始能耗值,E(T2)为第二迁移能耗值,E'pm1为第一迁移后能耗值。需要说明的是,在本发明实施例中,对于获取将第二服务器上所有任务迁移至第一服务器上所节省的能耗值的方式不做限定,云管理模块还可以通过获取第二初始能耗值、第二迁移能耗值,以及第一迁移后能耗值和第一初始能耗值的差值,来确定将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。
需要说明的是,由于步骤1033和步骤1034在确定参数的过程中不存在一定的先后顺序。因此,在本发明实施例中,对于步骤1033和步骤1034的执行顺序不作限定,步骤1033和步骤1034可以按照一定先后顺序执行,或同时执行。
本发明实施例提供的一种任务分配的方法,分别获取第一服务器和第二服务器的能力参数,并根据能力参数进行判断,当第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上时,通过获取第一初始能耗值和第二初始能耗值之和、第一迁移能耗值和第二迁移后能耗值之和,以及第二迁移能耗值和第一迁移后能耗值之和来获取能耗预测值,并根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。其中,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,根据第一初始能耗值和第二初始能耗值之和、第一迁移能耗值和第二迁移后能耗值之和,以及第二迁移能耗值和第一迁移后能耗值之和,得到更加准确的能耗预测值,之后根据能耗预测值来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
为了更加准确的确定任务迁移方案,在本发明实施例的一个实现方式中,可以根据将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,与第二服务器上所有任务迁移至第一服务器上所节省的能耗值之间的大小关系,来确定更加合理的任务迁移方案。因此,在如图6所示的实现方式的基础上,还可以实现为如图7所示的实现方式。其中,步骤104根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器,可以具体实现为步骤1041至步骤1044:
1041、判断将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,是否大于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。其中,当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,大于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,执行步骤1042,否则,执行步骤1043。
1042、将第一服务器上所有任务迁移至第二服务器上。
1043、判断将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,是否小于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。其中,当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,小于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,执行步骤1044,否则,执行步骤1045。
1044、将第二服务器上所有任务迁移至第一服务器上。
1045、不迁移第一服务器上所有任务和第二服务器上所有任务。
需要说明的是,用于判断将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,与将第二服务器上所有任务迁移至第一服务器上所节省的能耗值的大小关系的方法,在本发明实施例中不做具体限定。云管理模块可以通过执行步骤1041至步骤1045来确定最终的迁移方案,还可以通过其他判断方式对将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,与将第二服务器上所有任务迁移至第一服务器上所节省的能耗值的大小关系进行判断。比如:云管理模块可以先判断将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,是否小于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值,当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,小于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,再判断将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,是否大于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值,从而确定最终的迁移方案。
本发明实施例提供的一种任务分配的方法,在根据能耗预测值,确定迁移方案的过程中,当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,大于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,将第一服务器上所有任务迁移至第二服务器;当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,小于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,将第二服务器上所有任务迁移至第一服务器。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,并根据将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,与将第二服务器上所有任务迁移至第一服务器上所节省的能耗值之间的大小关系,来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
为了更加准确的确定任务迁移方案,在本发明实施例的一个实现方式中,可以通过获取第一服务器和第二服务器的CPU利用率、内存使用率和磁盘吞吐量,以及第一预设时间和第二预设时间,经过计算得到第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值。因此,步骤1031获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移后能耗值、第二迁移能耗值和第一迁移后能耗值,可以具体实现为如图8所示的步骤10311至步骤10315:
10311、分别获取第一服务器和第二服务器的CPU利用率、内存使用率和磁盘吞吐量。
在本发明实施例中,云管理模块可以通过监测各个服务器的状态,来分别获取第一服务器和第二服务器的CPU利用率、内存使用率和磁盘吞吐量。需要说明的是,云管理模块不仅需要分别获取第一服务器和第二服务器未开始迁移任务时的CPU利用率、内存使用率和磁盘吞吐量。比如:第一服务器的CPU利用率可以为UCPU1,第二服务器的CPU利用率可以为UCPU2,第一服务器的内存使用率可以为UMEM1,第二服务器的内存使用率可以为UMEM2,第一服务器的磁盘吞吐量可以为UIO1,第二服务器的磁盘吞吐量可以为UIO2。云管理模块还需要分别预估出将第一服务器上所有任务迁移至第二服务器上之后,第二服务器的CPU利用率、内存使用率和磁盘吞吐量,以及将第二服务器上所有任务迁移至第一服务器上之后,第一服务器的CPU利用率、内存使用率和磁盘吞吐量。也就是通过预估将第一服务器上所有任务迁移至第二服务器上,第二服务器变化的CPU利用率、内存使用率和磁盘吞吐量,来确定完成第一服务器上所有任务的迁移过程之后,第二服务器的CPU利用率、内存使用率和磁盘吞吐量;并且,通过预估第二服务器上所有任务迁移至第一服务器上,第一服务器变化的CPU利用率、内存使用率和磁盘吞吐量,来确定完成第二服务器上所有任务的迁移过程之后,第一服务器的CPU利用率、内存使用率和磁盘吞吐量。
10312、根据CPU利用率、内存使用率和磁盘吞吐量,得到第一初始能耗值、第二初始能耗值、第一迁移后能耗值和第二迁移后能耗值。
云管理模块可以根据通过步骤10311获取的第一服务器的CPU利用率UCPU1、第二服务器的CPU利用率UCPU2、第一服务器的内存使用率UMEM1、第二服务器的内存使用率UMEM2、第一服务器的磁盘吞吐量UIO1、第二服务器的磁盘吞吐量UIO2,以及公式Epm1=α1UCPU11UMEM11UIO1+Ebaseline1和Epm2=α2UCPU22UMEM22UIO2+Ebaseline2,进行计算得到第一初始能耗值Epm1和第二初始能耗值Epm2。其中,α1、β1和γ1,以及α2、β2和γ2是通过线性拟合的方法进行训练得到的系数,Ebaseline1和Ebaseline2为服务器的基本能耗,也就是当服务器被开启之后未执行任务时候的能耗。需要说明的是,由于服务器的规格不同,为了保证通过计算得到的数据更加准确,可以分别以不同规格的服务器为训练对象,得到每个服务器各自的系数,从而分别得到每个服务器对应的能耗模型。之后云管理模块将获取到的服务器的CPU利用率、内存使用率和磁盘吞吐量输入能耗模型,经过计算得到服务器的初始能耗值。另外,在本发明实施例中还可以通过云管理模块来监控各个服务器的状态,直接获取第一初始能耗值和第二初始能耗值。
在本发明实施例中,采用上述能耗模型还可以通过计算的方式,预估出第一迁移后能耗值和第二迁移后能耗值。也就是将步骤10312中获取的完成第二服务器上所有任务的迁移过程之后,第一服务器的CPU利用率、内存使用率和磁盘吞吐量,作为输入能耗模型的参数,进行计算得到第一迁移后能耗值;将获取的完成第一服务器上所有任务的迁移过程之后,第二服务器的CPU利用率、内存使用率和磁盘吞吐量,作为输入能耗模型的参数,进行计算得到第二迁移后能耗值。
10313、获取第一预设时间和第二预设时间。
其中,第一预设时间用于表示将第一服务器上所有任务迁移至第二服务器上所占用的时间,第二预设时间用于表示将第二服务器上所有任务迁移至第一服务器上所占用的时间。
云管理模块还可以根据监控到的在服务器上的所有任务的状态,也就是任务的数量、大小等信息。之后根据服务器上的所有任务的状态预测出将所有任务迁移至其他服务器上所占用的时间,并将这个时间作为预设时间。例如:第一初始能耗值为Epm1,第二初始能耗值为Epm2,云管理模块通过预测,可以将第一预设时间用t1到t2的区间来表示,也就是[t1,t2],将第二预设时间用t3到t4的区间来表示,也就是[t3,t4]。其中,t1和t3用于表示所有任务开始迁移的时刻,也就是预设时间的开始时刻,t2和t4用于表示所有任务结束迁移的时刻,也就是预设时间的结束时刻。
10314、根据第一预设时间和第一初始能耗值,确定第一迁移能耗值。
10315、根据第二预设时间和第二初始能耗值,确定第二迁移能耗值。
云管理模块可以根据通过步骤10312获取的第一初始能耗值Epm1和第二初始能耗值Epm2,以及通过步骤10313获取的第一预设时间[t1,t2]、第二预设时间[t3,t4],以及公式进行计算得到第一迁移能耗值E(T1)和第二迁移能耗值E(T2)。
需要说明的是,由于步骤10311至步骤10312,以及步骤10313所获取的参数不存在一定的先后关系,因此,在本发明实施例中,对于步骤10311至步骤10312,以及步骤10313,在执行顺序上不作具体限定,步骤10311至步骤10312,以及步骤10313可以按照一定先后顺序执行,或同时执行;由于步骤10314和步骤10315所获取的参数不存在一定的先后关系,因此,在本发明实施例中,对于步骤10314和步骤10315在执行顺序上不作具体限定,步骤10314和步骤10315可以按照一定先后顺序执行,或同时执行。
本发明实施例提供的一种任务分配的方法,在获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值的过程中,可以通过获取第一服务器和第二服务器的CPU利用率、内存使用率和磁盘吞吐量,以及第一预设时间和第二预设时间,之后经过计算得到。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,根据获取的多个相关参数,经过计算得到第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,以得到更加准确的能耗预测值,之后根据能耗预测值来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
本发明实施例提供一种任务分配的装置20,如图9所示,该装置20包括:
获取模块21,分别获取第一服务器和第二服务器的能力参数,能力参数用于表示第一服务器或第二服务器执行任务的能力。
判断模块22,用于根据获取模块21获取的能力参数,判断第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上。
获取模块21,还用于当第一服务器上所有任务和第二服务器上所有任务能全部运行在第一服务器或第二服务器上时,获取能耗预测值,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。
迁移模块23,用于根据获取模块21获取的能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。
在本发明实施例的一个实现方式中,获取模块21,具体用于:
获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,第一初始能耗值为第一服务器的初始能耗值,第二初始能耗值为第二服务器的初始能耗值,第一迁移能耗值为第一服务器上所有任务的迁移能耗值,第二迁移能耗值为第二服务器上所有任务的迁移能耗值,第一迁移后能耗值为第二服务器上所有任务迁移至第一服务器之后,第一服务器的能耗值,第二迁移后能耗值为第一服务器上所有任务迁移至第二服务器之后,第二服务器的能耗值;
根据第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,进行计算得到第一初始能耗值和第二初始能耗值之和、第一迁移能耗值和第二迁移后能耗值之和,以及第二迁移能耗值和第一迁移后能耗值之和;
根据第一初始能耗值和第二初始能耗值之和,与第一迁移能耗值和第二迁移后能耗值之和的差值,确定将第一服务器上所有任务迁移至第二服务器上所节省的能耗值;
根据第一初始能耗值和第二初始能耗值之和,与第二迁移能耗值和第一迁移后能耗值之和的差值,确定将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。
在本发明实施例的一个实现方式中,迁移模块23,具体用于:
当将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,大于将第二服务器上所有任务迁移至第一服务器上所节省的能耗值时,将第一服务器上所有任务迁移至第二服务器上;
当将第二服务器上所有任务迁移至第一服务器上所节省的能耗值,小于将第一服务器上所有任务迁移至第二服务器上所节省的能耗值时,将第二服务器上所有任务迁移至第一服务器上。
在本发明实施例的一个实现方式中,获取模块21,还具体用于:
分别获取第一服务器和第二服务器的中央处理器CPU利用率、内存使用率和磁盘吞吐量;
根据CPU利用率、内存使用率和磁盘吞吐量,得到第一初始能耗值、第二初始能耗值、第一迁移后能耗值和第二迁移后能耗值;
获取第一预设时间和第二预设时间,其中,第一预设时间用于表示将第一服务器上所有任务迁移至第二服务器上所占用的时间,第二预设时间用于表示将第二服务器上所有任务迁移至第一服务器上所占用的时间;
根据第一预设时间和第一初始能耗值,确定第一迁移能耗值;
根据第二预设时间和第二初始能耗值,确定第二迁移能耗值。
本发明实施例提供的一种任务分配的装置,分别获取第一服务器和第二服务器的能力参数,并根据能力参数进行判断,当第一服务器上所有任务和第二服务器上所有任务是否能全部运行在第一服务器上,且能全部运行在第二服务器上时,获取能耗预测值,并根据能耗预测值,将第一服务器上所有任务迁移至第二服务器,或将第二服务器上所有任务迁移至第一服务器。其中,能耗预测值包括将第一服务器上所有任务迁移至第二服务器上所节省的能耗值,以及将第二服务器上所有任务迁移至第一服务器上所节省的能耗值。相比较于现有技术中仅考虑到虚拟机的数量,并以虚拟机为粒度进行迁移,本发明实施例可以以任务为粒度进行迁移,考虑到迁移不同服务器上的任务所节省的能耗的不同,根据能耗预测值来选择合理的任务迁移方案,从而更好的降低数据中心的能耗。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (8)

1.一种任务分配的方法,其特征在于,所述方法包括:
分别获取第一服务器和第二服务器的能力参数,所述能力参数用于表示所述第一服务器或所述第二服务器执行任务的能力;
根据所述能力参数,判断所述第一服务器上所有任务和所述第二服务器上所有任务是否能全部运行在所述第一服务器上,且能全部运行在所述第二服务器上;
当所述第一服务器上所有任务和所述第二服务器上所有任务能全部运行在所述第一服务器或所述第二服务器上时,获取能耗预测值,所述能耗预测值包括将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,以及将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值;
根据所述能耗预测值,将所述第一服务器上所有任务迁移至所述第二服务器,或将所述第二服务器上所有任务迁移至所述第一服务器。
2.根据权利要求1所述的方法,其特征在于,所述获取能耗预测值,包括:
获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,所述第一初始能耗值为所述第一服务器的初始能耗值,所述第二初始能耗值为所述第二服务器的初始能耗值,所述第一迁移能耗值为所述第一服务器上所有任务的迁移能耗值,所述第二迁移能耗值为所述第二服务器上所有任务的迁移能耗值,所述第一迁移后能耗值为所述第二服务器上所有任务迁移至所述第一服务器之后,所述第一服务器的能耗值,所述第二迁移后能耗值为所述第一服务器上所有任务迁移至所述第二服务器之后,所述第二服务器的能耗值;
根据所述第一初始能耗值、所述第二初始能耗值、所述第一迁移能耗值、所述第二迁移能耗值、所述第一迁移后能耗值和所述第二迁移后能耗值,进行计算得到所述第一初始能耗值和所述第二初始能耗值之和、所述第一迁移能耗值和所述第二迁移后能耗值之和,以及所述第二迁移能耗值和所述第一迁移后能耗值之和;
根据所述第一初始能耗值和所述第二初始能耗值之和,与所述第一迁移能耗值和所述第二迁移后能耗值之和的差值,确定将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值;
根据所述第一初始能耗值和所述第二初始能耗值之和,与所述第二迁移能耗值和所述第一迁移后能耗值之和的差值,确定将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述能耗预测值,将所述第一服务器上所有任务迁移至所述第二服务器,或将所述第二服务器上所有任务迁移至所述第一服务器,包括:
当所述将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,大于所述将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值时,将所述第一服务器上所有任务迁移至所述第二服务器上;
当所述将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值,小于所述将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值时,将所述第二服务器上所有任务迁移至所述第一服务器上。
4.根据权利要求2所述的方法,其特征在于,所述获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,包括:
分别获取所述第一服务器和所述第二服务器的中央处理器CPU利用率、内存使用率和磁盘吞吐量;
根据所述CPU利用率、所述内存使用率和所述磁盘吞吐量,得到所述第一初始能耗值、所述第二初始能耗值、所述第一迁移后能耗值和所述第二迁移后能耗值;
获取第一预设时间和第二预设时间,所述第一预设时间用于表示将所述第一服务器上所有任务迁移至所述第二服务器上所占用的时间,所述第二预设时间用于表示将所述第二服务器上所有任务迁移至所述第一服务器上所占用的时间;
根据所述第一预设时间和所述第一初始能耗值,确定所述第一迁移能耗值;
根据所述第二预设时间和所述第二初始能耗值,确定所述第二迁移能耗值。
5.一种任务分配的装置,其特征在于,所述装置包括:
获取模块,用于分别获取第一服务器和第二服务器的能力参数,所述能力参数用于表示所述第一服务器或所述第二服务器执行任务的能力;
判断模块,用于根据所述获取模块获取的所述能力参数,判断所述第一服务器上所有任务和所述第二服务器上所有任务是否能全部运行在所述第一服务器上,且能全部运行在所述第二服务器上;
所述获取模块,还用于当所述第一服务器上所有任务和所述第二服务器上所有任务能全部运行在所述第一服务器或所述第二服务器上时,获取能耗预测值,所述能耗预测值包括将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,以及将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值;
迁移模块,用于根据所述获取模块获取的所述能耗预测值,将所述第一服务器上所有任务迁移至所述第二服务器,或将所述第二服务器上所有任务迁移至所述第一服务器。
6.根据权利要求5所述的装置,其特征在于,所述获取模块,具体用于:
获取第一初始能耗值、第二初始能耗值、第一迁移能耗值、第二迁移能耗值、第一迁移后能耗值和第二迁移后能耗值,所述第一初始能耗值为所述第一服务器的初始能耗值,所述第二初始能耗值为所述第二服务器的初始能耗值,所述第一迁移能耗值为所述第一服务器上所有任务的迁移能耗值,所述第二迁移能耗值为所述第二服务器上所有任务的迁移能耗值,所述第一迁移后能耗值为所述第二服务器上所有任务迁移至所述第一服务器之后,所述第一服务器的能耗值,所述第二迁移后能耗值为所述第一服务器上所有任务迁移至所述第二服务器之后,所述第二服务器的能耗值;
根据所述第一初始能耗值、所述第二初始能耗值、所述第一迁移能耗值、所述第二迁移能耗值、所述第一迁移后能耗值和所述第二迁移后能耗值,进行计算得到所述第一初始能耗值和所述第二初始能耗值之和、所述第一迁移能耗值和所述第二迁移后能耗值之和,以及所述第二迁移能耗值和所述第一迁移后能耗值之和;
根据所述第一初始能耗值和所述第二初始能耗值之和,与所述第一迁移能耗值和所述第二迁移后能耗值之和的差值,确定将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值;
根据所述第一初始能耗值和所述第二初始能耗值之和,与所述第二迁移能耗值和所述第一迁移后能耗值之和的差值,确定将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值。
7.根据权利要求6所述的装置,其特征在于,所述迁移模块,具体用于:
当所述将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值,大于所述将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值时,将所述第一服务器上所有任务迁移至所述第二服务器上;
当所述将所述第二服务器上所有任务迁移至所述第一服务器上所节省的能耗值,小于所述将所述第一服务器上所有任务迁移至所述第二服务器上所节省的能耗值时,将所述第二服务器上所有任务迁移至所述第一服务器上。
8.根据权利要求6所述的装置,其特征在于,所述获取模块,还具体用于:
分别获取所述第一服务器和所述第二服务器的中央处理器CPU利用率、内存使用率和磁盘吞吐量;
根据所述CPU利用率、所述内存使用率和所述磁盘吞吐量,得到所述第一初始能耗值、所述第二初始能耗值、所述第一迁移后能耗值和所述第二迁移后能耗值;
获取第一预设时间和第二预设时间,所述第一预设时间用于表示将所述第一服务器上所有任务迁移至所述第二服务器上所占用的时间,所述第二预设时间用于表示将所述第二服务器上所有任务迁移至所述第一服务器上所占用的时间;
根据所述第一预设时间和所述第一初始能耗值,确定所述第一迁移能耗值;
根据所述第二预设时间和所述第二初始能耗值,确定所述第二迁移能耗值。
CN201510475799.4A 2015-08-05 2015-08-05 一种任务分配的方法及装置 Active CN105162844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510475799.4A CN105162844B (zh) 2015-08-05 2015-08-05 一种任务分配的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510475799.4A CN105162844B (zh) 2015-08-05 2015-08-05 一种任务分配的方法及装置

Publications (2)

Publication Number Publication Date
CN105162844A true CN105162844A (zh) 2015-12-16
CN105162844B CN105162844B (zh) 2018-07-13

Family

ID=54803597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510475799.4A Active CN105162844B (zh) 2015-08-05 2015-08-05 一种任务分配的方法及装置

Country Status (1)

Country Link
CN (1) CN105162844B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126344A (zh) * 2016-06-30 2016-11-16 中国联合网络通信集团有限公司 一种任务分配方法及装置
WO2020000668A1 (zh) * 2018-06-27 2020-01-02 平安科技(深圳)有限公司 一种基于服务器集群的任务执行方法及服务器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101604264A (zh) * 2009-07-08 2009-12-16 深圳先进技术研究院 超级计算机的任务调度方法及系统
US20120204176A1 (en) * 2010-10-29 2012-08-09 Huawei Technologies Co., Ltd. Method and device for implementing load balance of data center resources
CN103488540A (zh) * 2013-09-30 2014-01-01 华南理工大学 面向异构云数据中心的能耗优化资源调度方法
CN103906211A (zh) * 2014-04-16 2014-07-02 东南大学 基于优选关闭基站的网络节能方法
CN104284141A (zh) * 2013-07-08 2015-01-14 株式会社日立制作所 视频监视系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101604264A (zh) * 2009-07-08 2009-12-16 深圳先进技术研究院 超级计算机的任务调度方法及系统
US20120204176A1 (en) * 2010-10-29 2012-08-09 Huawei Technologies Co., Ltd. Method and device for implementing load balance of data center resources
CN104284141A (zh) * 2013-07-08 2015-01-14 株式会社日立制作所 视频监视系统
CN103488540A (zh) * 2013-09-30 2014-01-01 华南理工大学 面向异构云数据中心的能耗优化资源调度方法
CN103906211A (zh) * 2014-04-16 2014-07-02 东南大学 基于优选关闭基站的网络节能方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DUNG H.PHAN等: "Evolutionary Multiobjective Optimization for Green Clouds", 《ACM GENETIC & EVOL COMPUTAT CONFERENCE》 *
何丽等: "一种基于能耗优化的云计算系统任务调度方法", 《计算机工程与应用》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126344A (zh) * 2016-06-30 2016-11-16 中国联合网络通信集团有限公司 一种任务分配方法及装置
WO2020000668A1 (zh) * 2018-06-27 2020-01-02 平安科技(深圳)有限公司 一种基于服务器集群的任务执行方法及服务器

Also Published As

Publication number Publication date
CN105162844B (zh) 2018-07-13

Similar Documents

Publication Publication Date Title
CN102866915B (zh) 虚拟化集群整合方法、装置及虚拟化集群系统
CN107797853B (zh) 一种任务调度方法、装置及多核处理器
US20190080429A1 (en) Adaptive scheduling for task assignment among heterogeneous processor cores
US9032175B2 (en) Data migration between storage devices
KR20100026989A (ko) 에너지 절약형 멀티 코어 프로세서
EP3467651B1 (en) Method, device and terminal for allocating computational resources of processor
US8806491B2 (en) Thread migration to improve power efficiency in a parallel processing environment
CN110941325B (zh) 处理器的调频方法及装置、计算设备
CN111427758A (zh) 任务计算量确定方法、装置和电子设备
CN104881316A (zh) 一种迁移虚拟机的方法及装置
CN103838520A (zh) 一种输入/输出流量控制方法及设备
CN104820616A (zh) 一种任务调度的方法及装置
WO2020164644A2 (zh) 神经网络模型拆分方法、装置、计算机设备和存储介质
US20120054762A1 (en) Scheduling apparatus and method for a multicore device
CN105162844A (zh) 一种任务分配的方法及装置
US20130117757A1 (en) Method and apparatus for scheduling application programs
Padoin et al. Managing power demand and load imbalance to save energy on systems with heterogeneous CPU speeds
CN108595250B (zh) 一种面向IaaS云平台的资源调度效率优化方法及系统
JP2013149221A (ja) プロセッサの制御装置およびその方法
CN114021733B (zh) 模型训练优化方法、装置、计算机设备及存储介质
WO2020082757A1 (en) Energy efficiency adjustments for cpu governor
CN103631571A (zh) 一种进度条的控制方法和装置
KR101586712B1 (ko) 멀티 프로세서 시스템에서 태스크 의존성 그래프를 이용한 스케줄링 방법 및 장치
EP4024286A1 (en) Computing method and apparatus for convolutional neural network model
CN105426229A (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