CN112214295A - 一种多cpu/gpu异构服务器集群的低能耗作业调度方法 - Google Patents
一种多cpu/gpu异构服务器集群的低能耗作业调度方法 Download PDFInfo
- Publication number
- CN112214295A CN112214295A CN202011007696.2A CN202011007696A CN112214295A CN 112214295 A CN112214295 A CN 112214295A CN 202011007696 A CN202011007696 A CN 202011007696A CN 112214295 A CN112214295 A CN 112214295A
- Authority
- CN
- China
- Prior art keywords
- tasks
- processor
- cpu
- job
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000005265 energy consumption Methods 0.000 title claims abstract description 17
- 230000000694 effects Effects 0.000 claims abstract description 6
- 238000005516 engineering process Methods 0.000 claims abstract description 6
- 238000013507 mapping Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000001816 cooling Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 102100033538 Clusterin-associated protein 1 Human genes 0.000 description 1
- 101000945057 Danio rerio Clusterin-associated protein 1 homolog Proteins 0.000 description 1
- 101000945060 Homo sapiens Clusterin-associated protein 1 Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005059 dormancy Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
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
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种多CPU/GPU异构服务器集群的低能耗作业调度方法。首先接收用户提交的作业,根据该作业在CPU和GPU上的执行时间情况对该作业进行分类,然后调用动态分配方法对该作业进行分配。动态分配方法的中心思想在于尽可能把任务分配到偏好的处理器上以确保较好的执行效果,无法分配时把尝试把处理器的任务队列中异构比较小的任务替换出来,必要时可以通过DVFS技术调高处理器频率的方法强行分配,通过这种方法达到少开服务器以降低能耗的效果。本发明以最小化集群完成任务所需能耗为目的,在满足作业时限的前提下,实现在线的调度作业,该方法计算简单、运算速度快,适用于在线、大规模的服务请求场景。
Description
技术领域
本发明涉及集群节能领域,特别是一种多CPU/GPU异构服务器集群的低能耗作业调度方法,即在满足作业时限的前提下,采用合理的作业分配方法,从而保证作业的顺利完成并且最小化集群的能耗。
背景技术
云计算提供商和高性能计算(HPC)集群通常依赖于由多个CPU和GPU组成的服务器节点来处理高性能密集型计算。例如美国最强超级计算机summit,一共有4,608个运算节点,每节点就是一台主机,每个节点内仍然使用与泰坦类似的CPU+GPU异构运算体系,由两颗 POWER9 CPU以及六块NVIDIA Tesla V100运算加速卡组成。由于GPU优秀的高密度运算以及高效并行性等优点,通常CPU可以把任务交给GPU处理以节约时间,因此GPU常常被用作计算加速器。比如相同的卷积神经网络的训练这种有大量简单运算的任务,使用GPU运行的速度可能是CPU的数十倍。GPU同时还比传统的多核CPU更为节能,在评选每瓦性能比的Green500中,前25名中使用Nvidia GPU加速的就有22台,其中summit由于使用了 CPU+GPU异构运算体系,在Green500排名中也排到了第8名。即便summit的每瓦性能比已经十分优秀,但summit使用的液冷系统,每分钟流量高达4,000加仑,4,608台主机连同液冷系统的整机组全速运行时的功率就高达1500万瓦,几乎是泰坦的两倍。因此,哪怕是几个百分比电量的节约,都能节省下大量资金。
多CPU/GPU异构服务器中节能的研究中两种常用的数据节能技术是动态电压和频率缩放(DVFS)和动态资源休眠(DRS)。DVFS指的是动态调整处理器电压和频率的能力,而DRS 则将空闲服务器置于深度睡眠状态(或简单地关闭它们)以节省能源。大量的理论研究将处理器功耗与处理器速度这一单一变量联系在一起,通过改变处理器的电压和频率来控制处理器的速度。有一研究提出了一种自适应映射技术,将应用映射到由CPU和GPU组成的异构系统上。该映射算法已在一个名为Qilin的实验系统中实现,用于CPU和GPU的编程。评估结果表明,与手动映射(例如,程序员手动完成)相比,它们的自适应映射在执行时间和能耗方面表现得很好,但能更好地适应输入大小和硬件和软件配置的变化。有一研究提出了一种高效的映射技术,将通信与计算重叠,在由CPU和GPU组成的异构系统中支持应用图。此外,一些研究提出了异构系统中的调度技术,以提高用户级和操作系统内核级的性能和/或能源效率。另外,针对同构系统的基于DVFS的功耗感知调度技术也做了很多工作。在实时和嵌入式系统中,在DVFSenabled平台(包括单处理器和多处理器系统)上进行了大量的电能和节能调度工作。然而,这些之前的工作都没有针对由CPU和GPU组成的异构系统。
发明内容
本发明针对多CPU/GPU异构服务器工作时产生大量能耗这一问题,结合DVFS和DRS技术,提出了一种多CPU/GPU异构服务器集群的能耗控制方法,主要由任务类型判定和任务分配两部分组成。
任务类型判定主要指对提交到集群的任务进行分类判断。将该任务在CPU和GPU上执行时间的比值定义为H,若H>1/H,则该任务为GPU型任务,否则为CPU型任务。在此基础上再进行细分,若H>参数Δ(Δ在本方法的不同应用场景下会有所不同),则该任务为Only 型任务,否则为Prefer型任务。综上,任务会被分为4种类型,分别为:GPU-Only型、CPU-Only型、GPU-Prefer型以及CPU-Prefer型。
接着,为了把已经分类的任务分配到最合适的处理器上以降低能耗,动态分配方法根据任务的类型、任务的截至时间、集群中服务器的开关情况、各个服务器上各个处理器的负载情况等综合考量,决定将提交的任务分配到哪个处理器上。中心思想在于尽可能把任务分配到偏好的处理器上以达到比在非偏好处理器上更好的执行效果,无法分配时遍历偏好处理器,尝试使用替换方法替换处理器的任务队列中异构比最小的任务以分配任务,仍无法分配可以通过DVFS技术调高处理器频率的方法强行分配。若任务类型为Prefer型,还会尝试分配到非偏好处理器上,无法分配时会尝试使用替换方法,若无法分配才会通过DVFS技术调高处理器频率的方法强行分配。通过以上方法若还是无法分配,则新开服务器,把任务分配到偏好处理器上。通过这种方法达到少开服务器以降低能耗的效果。具体的分配步骤如下:
其中涉及的替换方法的具体步骤为:
本发明的优点在于:
(1)本发明以最小化集群能耗为目标,提出了一种实时作业调度方法,其时间复杂度是多项式时间的,说明该方法可以适用于处理在线的、大规模作业。
(2)本发明在不同集群规模、不同服务器配置、不同任务组成下都可通过调节参数以应用,说明本发明可应用场景广泛。
本发明主要解决了当多任务在多CPU/GPU异构服务器集群上的分配问题。对于动态到达的用户作业请求,在满足作业截止时间的前提下,通过本发明提出的动态分配方法以最小化集群完成任务消耗的能量。
附图说明
图1是任务集在集群上分配的示意图。
图2是动态分配方法示意图。
图3是替换方法示意图
具体实施方式
本发明是一种多CPU/GPU异构服务器集群作业分配方法。在本发明中核心设计通过将任务按照异构比进行分类并通过动态分配方法结合任务类型、任务截至时间、集群中服务器负载等条件进行分配,这种方法复杂度低,运行速度快,可以适应各种场景。
下面结合附图2对本发明设计多CPU/GPU异构服务器集群的低能耗作业调度方法进行详细说明。
如附图2,本发明所述包括以下步骤:
Claims (1)
1.一种多CPU/GPU异构服务器集群的低能耗作业调度方法,其特征在于:基于作业分类的集群作业调度方法,中心思想在于把任务分配到偏好的处理器上以达到比在非偏好处理器上更好的执行效果,无法分配时遍历偏好处理器,尝试使用替换方法替换处理器的任务队列中异构比最小的任务以分配任务,仍无法分配可以通过DVFS技术调高处理器频率的方法强行分配,若任务类型为Prefer型,还会尝试分配到非偏好处理器上,无法分配时会尝试使用替换方法,若无法分配才会通过DVFS技术调高处理器频率的方法强行分配,通过以上方法若还是无法分配,则新开服务器,把任务分配到偏好处理器上,通过这种方法达到少开服务器以降低能耗的效果,具体步骤如下:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011007696.2A CN112214295B (zh) | 2020-09-23 | 2020-09-23 | 一种多cpu/gpu异构服务器集群的低能耗作业调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011007696.2A CN112214295B (zh) | 2020-09-23 | 2020-09-23 | 一种多cpu/gpu异构服务器集群的低能耗作业调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112214295A true CN112214295A (zh) | 2021-01-12 |
CN112214295B CN112214295B (zh) | 2024-02-06 |
Family
ID=74051770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011007696.2A Active CN112214295B (zh) | 2020-09-23 | 2020-09-23 | 一种多cpu/gpu异构服务器集群的低能耗作业调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112214295B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114518798A (zh) * | 2022-02-17 | 2022-05-20 | 深圳集智数字科技有限公司 | 设备集群的低功耗控制方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075199A (zh) * | 2006-05-18 | 2007-11-21 | 迈普(四川)通信技术有限公司 | 一种多cpu调度的方法 |
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 |
CN102819460A (zh) * | 2012-08-07 | 2012-12-12 | 清华大学 | 一种基于预算功率指导的高能效gpu集群系统调度算法 |
CN104125165A (zh) * | 2014-08-18 | 2014-10-29 | 浪潮电子信息产业股份有限公司 | 一种基于异构集群的作业调度系统及方法 |
CN105446816A (zh) * | 2015-11-11 | 2016-03-30 | 华南理工大学 | 一种面向异构平台的能耗优化调度方法 |
CN108762818A (zh) * | 2018-05-30 | 2018-11-06 | 郑州云海信息技术有限公司 | 一种优化设计服务器及维护方法 |
CN109324875A (zh) * | 2018-09-27 | 2019-02-12 | 杭州电子科技大学 | 一种基于强化学习的数据中心服务器功耗管理与优化方法 |
CN111562837A (zh) * | 2020-05-02 | 2020-08-21 | 桂林理工大学 | 一种多cpu/gpu异构服务器的功耗控制方法 |
-
2020
- 2020-09-23 CN CN202011007696.2A patent/CN112214295B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075199A (zh) * | 2006-05-18 | 2007-11-21 | 迈普(四川)通信技术有限公司 | 一种多cpu调度的方法 |
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 |
CN102819460A (zh) * | 2012-08-07 | 2012-12-12 | 清华大学 | 一种基于预算功率指导的高能效gpu集群系统调度算法 |
CN104125165A (zh) * | 2014-08-18 | 2014-10-29 | 浪潮电子信息产业股份有限公司 | 一种基于异构集群的作业调度系统及方法 |
CN105446816A (zh) * | 2015-11-11 | 2016-03-30 | 华南理工大学 | 一种面向异构平台的能耗优化调度方法 |
CN108762818A (zh) * | 2018-05-30 | 2018-11-06 | 郑州云海信息技术有限公司 | 一种优化设计服务器及维护方法 |
CN109324875A (zh) * | 2018-09-27 | 2019-02-12 | 杭州电子科技大学 | 一种基于强化学习的数据中心服务器功耗管理与优化方法 |
CN111562837A (zh) * | 2020-05-02 | 2020-08-21 | 桂林理工大学 | 一种多cpu/gpu异构服务器的功耗控制方法 |
Non-Patent Citations (2)
Title |
---|
KARAN R. SHETTI等: "Optimization of the HEFT Algorithm for a CPU-GPU Environment", 《2013 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING, APPLICATIONS AND TECHNOLOGIES》, pages 212 - 218 * |
裴颂文;宁静;张俊格;: "CPU-GPU异构多核系统的动态任务调度算法", 计算机应用研究, no. 11 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114518798A (zh) * | 2022-02-17 | 2022-05-20 | 深圳集智数字科技有限公司 | 设备集群的低功耗控制方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112214295B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | Virtual machine placement algorithm for both energy-awareness and SLA violation reduction in cloud data centers | |
KR101629155B1 (ko) | 전력-인식 스레드 스케줄링 및 프로세서들의 동적 사용 | |
JP6130296B2 (ja) | グラフィクスプロセッサにおけるsimdユニットの動的な有効化及び無効化 | |
Li et al. | An energy-efficient scheduling approach based on private clouds | |
Mao et al. | A multi-resource task scheduling algorithm for energy-performance trade-offs in green clouds | |
CN103823718A (zh) | 一种面向绿色云计算的资源配置方法 | |
Chen et al. | Reducing the data center electricity costs through participation in smart grid programs | |
Long et al. | A three-phase energy-saving strategy for cloud storage systems | |
KR20140140943A (ko) | 멀티 코어 시스템 및 멀티 코어 시스템의 작업 스케줄링 방법 | |
CN114710563A (zh) | 一种集群节能方法及装置 | |
Than et al. | Energy-saving resource allocation in cloud data centers | |
Binder et al. | Green computing: Energy consumption optimized service hosting | |
El Ghor et al. | Energy efficient scheduler of aperiodic jobs for real-time embedded systems | |
Terzopoulos et al. | Bag-of-task scheduling on power-aware clusters using a dvfs-based mechanism | |
CN112214295B (zh) | 一种多cpu/gpu异构服务器集群的低能耗作业调度方法 | |
Terzopoulos et al. | Dynamic voltage scaling scheduling on power-aware clusters under power constraints | |
CN111240461A (zh) | 一种基于任务调度的异构计算系统低功耗方法 | |
Anan et al. | SLA-based optimization of energy efficiency for green cloud computing | |
Zhu et al. | Energy-aware rolling-horizon scheduling for real-time tasks in virtualized cloud data centers | |
Sakamoto et al. | Analyzing resource trade-offs in hardware overprovisioned supercomputers | |
CN109582119B (zh) | 基于动态电压频率调整的双层Spark节能调度方法 | |
Yuan et al. | An Online Energy Saving Resource Optimization Methodology for Data Center. | |
CN111562837A (zh) | 一种多cpu/gpu异构服务器的功耗控制方法 | |
Eibel et al. | Empya: Saving energy in the face of varying workloads | |
Ghose et al. | Energy efficient online scheduling of aperiodic real time task on large multi-threaded multiprocessor systems |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |