CN107145216A - 一种调度方法 - Google Patents
一种调度方法 Download PDFInfo
- Publication number
- CN107145216A CN107145216A CN201710319421.4A CN201710319421A CN107145216A CN 107145216 A CN107145216 A CN 107145216A CN 201710319421 A CN201710319421 A CN 201710319421A CN 107145216 A CN107145216 A CN 107145216A
- Authority
- CN
- China
- Prior art keywords
- waiting task
- cluster
- task
- cpu
- strategy
- 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
Links
Classifications
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Power Sources (AREA)
Abstract
本发明实施例提供一种调度方法,所述方法包括:获取待处理任务;采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略。所述方法能够最大化减少整个集群的能耗,实现整个集群节能的目的。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种调度方法。
背景技术
随着云计算的普及和广泛应用,越来越多的数据集中化、计算集中化管理,使HPC集群、仿真计算集群、图形工作站集群、渲染农场集群、Docker集群以及大数据(Hadoop、Spark)集群的规模越来越大,应用范围越来越广泛。同时,这些数据中心和计算中心的能耗问题也越来越凸显,并已成为最主要的成本之一,而且还在持续上升中。目前,现有技术主要是针对计算节点的单个CPU负载情况来进行降频做法,最主要是对空闲的CPU进行降频处理,但是却无法实现整个集群的节能降耗。
发明内容
有鉴于此,本发明实施例的目的在于提供一种调度方法,以解决上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
本发明实施例提供了一种调度方法,应用于包括多个计算节点的集群中,该方法包括:获取待处理任务;采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略。
作为一种实施方式,所述节点级集中式调度策略包括:将所述待处理任务优先调度到所述集群中满足所述待处理任务的运行要求且已处于计算过程中的计算节点进行处理。
作为一种实施方式,所述计算节点为多核计算节点,所述CPU级集中式调度策略包括:若所述待处理任务在所述计算节点的其中一个内核进行处理,采用CPU绑定技术将所述待处理任务与处理所述待处理任务的内核进行绑定,以避免所述待处理任务在所述计算节点的多个内核间切换。
作为一种实施方式,所述作业分级策略包括:将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率。
作为一种实施方式,所述将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率,包括:若所述待处理任务为第一级别,则所述待处理任务使用CPU或GPU的第一频率来计算;若所述待处理任务为第二级别,则所述待处理任务使用CPU或GPU的第二频率来计算,其中,所述第一频率大于所述第二频率。
作为一种实施方式,所述热点均衡调度策略包括:根据所述集群当前的散热分布情况,对所述待处理任务进行调度。
作为一种实施方式,所述根据所述集群当前的散热分布情况,对所述待处理任务进行调度,包括:将所述待处理任务优先调度到所述集群中CPU或GPU的温度小于第一阈值的计算节点上进行处理。
作为一种实施方式,所述能耗优先调度策略包括:将所述待处理任务调度优先调度到所述集群中当前能耗小于第二阈值的计算节点上进行处理。
作为一种实施方式,所述动态调频策略包括:在所述待处理任务处理过程中,实时对所述待处理任务进行特征图谱分析;若所述待处理任务为非计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行降频处理;若所述待处理任务为计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行升频率处理。
作为一种实施方式,所述待处理任务的类型通过建立机器学习模型获得。
作为一种实施方式,所述动态迁移策略包括:分析所述集群中正在处理的所有待处理任务,若所述集群中正在处理的所有待处理任务离散分布在不同的计算节点进行处理,将所述待处理任务进行迁移,以使所述待处理任务集中在一个或多个计算节点上处理,并将所述集群中未处理所述待处理任务的计算节点休眠,当所述集群中计算资源不足以处理新增待处理任务时,自动唤醒休眠的计算节点以处理新增待处理任务。
与现有技术相比,本发明实施例提供的一种调度方法,通过获取待处理任务,并采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略,本方案能够根据待处理任务,实时动态调度集群中计算节点或计算节点的CPU或GPU,从而最大化减少整个集群的能耗,实现整个集群节能的目的。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的计算集群的示意图。
图2是本发明实施例提供的调度服务器的结构框图。
图3是本发明实施例提供的一种调度方法的流程图。
图4是本发明实施例提供的一种节点级集中式调度策略及CPU级集中式调度策略的原理示意图。
图5是本发明实施例提供的一种热点均衡调度策略的原理示意图。
图6是本发明实施例提供的一种调度方法的部分流程图。
图7是本发明实施例提供的一种动态调频策略的原理示意图。
图8是本发明实施例提供的一种动态迁移策略的原理示意图。
图9是本发明实施例提供的一种调度装置的结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,是本发明较佳实施例提供的计算集群的示意图。该计算集群中可以包括一个或多个调度服务器100(图中仅示出1个)及多个计算节点,所述调度服务器100通过网络与集群中的多个计算节点(图1所示210至240)进行通信连接,以进行数据通信或交互。当调度服务器100获取到待处理任务时,将待处理任务根据调度策略分配到所述计算节点(图1所示210至240)中的其中一个进行处理。所述调度服务器100及所述计算节点(图1所示210至240)可以是网络服务器、数据库服务器等、个人电脑(personal computer,PC)、平板电脑、智能手机等。
如图2所示,是本发明实施例提供的一种调度服务器100的方框示意图。所述调度服务器100包括存储器110,一个或多个(图中仅示出一个)处理器120,以及调度装置500。
所述存储器110与处理器120之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述调度装置500包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中或固化在所述调度服务器100的操作系统(operating system,OS)中的软件功能模块。所述处理器120用于执行存储器110中存储的可执行模块,例如所述调度装置500中包括的软件功能模块或计算机程序。
其中,存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器110用于存储程序,所述处理器120在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的服务器所执行的方法可以应用于处理器中,或者由处理器实现。
处理器120可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)、图形处理器(Graphic Processing Unit,GPU)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
可以理解,图2所示的结构仅为示意,调度服务器100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
图3示出了本发明实施例提供的一种调度方法的流程图,请参阅图3,本实施例描述的是调度服务器的处理流程,所述方法包括:
步骤S310,获取待处理任务。
其中,所述待处理任务可以是HPC集群、仿真计算集群、图形工作站集群、渲染农场集群、Docker集群以及大数据(Hadoop、Spark)集群的中需要处理的任务,可以是一个任务也可以是一批任务,根据需求进行设置。
步骤S320,采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略。
作为一种实施方式,可以根据用户命令来选择采用预设调度策略集中的哪一个策略或采用哪些策略的组合。作为另一种所述方式,也可以设置默认配置,该默认配置中可以预设设置好对于某类待处理任务采用某个具体的调度策略或某几个调度策略的组合。当用户没有进行选择时,则根据默认配置来决定对待处理任务采用的调度策略。作为另一种所述方式,也可以根据待处理任务的类型来决定采用预设调度策略集中的哪一个策略或采用哪些策略的组合。当然,并不局限于上述方式。
作为一种实施方式,所述节点级集中式调度策略包括:将所述待处理任务优先调度到所述集群中满足所述待处理任务的运行要求且已处于计算过程中的计算节点进行处理。
请参阅图4,该集群中包括了四个计算节点,分别为:计算节点A、计算节点B、计算节点B、计算节点D。每个计算节点均包括8个内核。若此时,计算节点A的其中4个内核已使用100%的计算频率在处理计算任务1,计算节点A的剩余4个内核及计算节点B的8个内核已使用80%的计算频率在处理计算任务2。计算节点C的其中4个内核已使用100%的计算频率在处理计算任务3,计算节点C的剩余4个内核及计算节点D的8个内核此时空闲。
可见此处,计算节点A、B、C均属于已处于计算过程中的计算节点,若此时待处理任务只需要使用内核20%的计算频率,则此时采用节点级集中式调度策略,将待处理任务集中调度到计算节点A,B,C上,使得计算资源的使用得以集中化,从而使没有参与的计算资源能更有效的进入节能模式。
作为一种实施方式,所述计算节点为多核计算节点,所述CPU级集中式调度策略包括:若所述待处理任务在所述计算节点的其中一个内核进行处理,采用CPU绑定技术将所述待处理任务与处理所述待处理任务的内核进行绑定,以避免所述待处理任务在所述计算节点的多个内核间切换。
请参阅图4,紧接上例进行说明,通过上述节点级集中式调度策略,此时,计算任务1,2,3及待处理任务被集中调度在计算节点A,B,C上,此时,若此时待处理任务被调度到计算节点B中的其中4个内核(如图4中所示计算节点B的上面4个内核CPU CORE)上进行处理,可以将该待处理任务与处理所述待处理任务的内核(如图4中所示计算节点B的上面4个内核CPU CORE)进行绑定,以避免所述待处理任务切换到该计算节点B的其它内核(如图4中所示计算节点B的下面4个内核CPU CORE)上进行处理。并且,进一步的,对于计算节点C而言,没有被使用的CPU,可以使其CPU频率降到最低,从而大大降低能耗。对于计算节点D而言,由于其整体闲置,则进一步使其进入休眠模式。
通过上述实例可见,将节点级集中式调度策略及CPU级集中式调度策略联合使用,并可以进一步的结合动态调频策略使用,则能够进一步的提高其节能效果。
作为一种实施方式,所述作业分级策略包括:将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率。
进一步的,作为一种实施方式,若所述待处理任务为第一级别,则所述待处理任务使用CPU或GPU的第一频率来计算;若所述待处理任务为第二级别,则所述待处理任务使用CPU或GPU的第二频率来计算,其中,所述第一频率大于所述第二频率。
作为一种实施方式,对于重要并需要紧急完成的待处理任务任务,可以定义高运行级别(第一级别),而对于不紧急只要保证完成的作业定义低运行级别(第二级别)。
请继续参阅图4,将计算任务1定义了高优先级,计算任务2为低优先级。当计算任务1被调度并在在计算节点A上时,其使用的CPU以100%的频率全力参与计算,保证计算任务1高效运行。而计算任务2被调度在计算节点A和B上,其使用的CPU以80%的频率参与计算,在计算的同时能够实现能耗的减少。
作为一种实施方式,所述能耗优先调度策略包括:将所述待处理任务调度优先调度到所述集群中当前能耗小于第二阈值的计算节点上进行处理。通过这种方式,能够降低计算任务在计算的过程中使用的能耗。
作为一种实施方式,所述热点均衡调度策略包括:根据所述集群当前的散热分布情况,对所述待处理任务进行调度。
进一步的,作为一种实施方式,所述根据所述集群当前的散热分布情况,对所述待处理任务进行调度,包括:将所述待处理任务优先调度到所述集群中CPU或GPU的温度小于第一阈值的计算节点上进行处理。
第一阈值的设置可以根据需要进行设置。
请参阅图5,图5示出了整个集群中计算节点整体散热分布的示意图。图5中示出了多个计算节点,分别为1A02、1A01、1A00、1A13、1A12、1A07、1A08、1A09、1A10、1A11,该图中用不同色度(黑白灰)来体现不同的散热程度,当整个集群中计算节点的计算任务到达一定程度时,可以应用热点均衡调度策略,根据当前集群整体散热分布的情况来进行调度的,例如,可以生成一张如图5所示的散热分布图,根据该散热分布图,将待处理任务优先调度到CPU温度低的计算节点(如图5中所示的色度为白色的计算节点)上来运行,从而有效的避免了区域热点的产生和热力的不均衡分布,从而降低了整个集群的降温耗能。
请参阅图6,作为一种实施方式,所述动态调频策略包括:
步骤S410,在所述待处理任务处理过程中,实时对所述待处理任务进行特征图谱分析。
步骤S420,若所述待处理任务为非计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行降频处理。
其中,非计算集中型任务是指该待处理任务在运行过程中的绝大部分时间并不是使用CPU或GPU来进行计算而是进行其他的操作,例如IO操作等。
步骤S430,若所述待处理任务为计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行升频率处理。
其中,计算集中型任务是指该待处理任务在运行过程中的绝大部分时间是使用CPU或GPU来进行计算。
请参阅图7,计算任务1(待处理任务)的运行在计算集群中的计算节点A和B上,在整个运行的过程中,通过动态调频策略来实时优化计算资源的能耗。如图8所示,对计算任务1(待处理任务)进行实时的特征分析,其在t1阶段运行过程中主要以CPU资源的使用为主,CPU100%频率参与计算,当运行到t2阶段时,计算任务1(待处理任务)的运行过程不太需要CPU资源,转而进行大量的IO等操作,此时,通过动态调整策略,将计算任务1(待处理任务)所使用的CPU进行动态调频,以CPU20%频率参与计算,从而减少能耗。当运行到t3阶段时,根据计算任务1(待处理任务)的特征需要,又以100%频率进行计算。
在上述实例中,通过实时对所述待处理任务进行特征图谱分析来确定待处理任务的的类型,作为另一种实施方式,所述待处理任务的类型可以通过建立机器学习模型获得。进一步的,根据待处理任务的运行过程和集群整体能耗情况等相关运行数据的分析和计算,建立机器学习模型,从而不断迭代优化任务分级策略。
作为一种实施方式,所述动态迁移策略包括:分析所述集群中正在处理的所有待处理任务,若所述集群中正在处理的所有待处理任务离散分布在不同的计算节点进行处理,将所述待处理任务进行迁移,以使所述待处理任务集中在一个或多个计算节点上处理,并将所述集群中未处理所述待处理任务的计算节点休眠,当所述集群中计算资源不足以处理新增待处理任务时,自动唤醒休眠的计算节点以处理新增待处理任务。
请参阅图8,如图8中的上半部分所示,计算任务1运行在计算集群中的计算节点A的其中4个内核中和计算节点B的其中2个内核中,计算任务2运行在计算节点C的其中2个内核中,此时,该集群中正在处理的待处理任务1和2离散分布在计算节点A,B,C上处理,通过动态迁移策略,将离散分布的待处理任务采用计算任务进行迁移,从而使计算任务1和计算任务2完全迁移到计算节点A上,计算节点B和C空闲出来(如图9中的下半部分所示),例如可以将运行于计算节点B及计算节点C上的待处理任务打上断点,当将运行于计算节点B及计算节点C上的待处理任务迁移到计算节点A后从该断点开始重新运行。并且,可以进一步的通过动态调频策略,对计算节点B和C进行降频或休眠操作,从而降低整个集群中参与计算的CPU数和节点数,从而减少能耗。
对整个集群的计算任务进行实时的监控,对于离散分布的计算任务采用集中式调度策略的思路进行动态迁移,能够实现计算任务的运行集中化调整,从而使没有参与的计算资源能更有效的进入节能模式。
由上述实施方式可以看出,多个调度策略配合使用,其节能降耗的效果将更加。例如,可以将节点级集中式调度策略及CPU级集中式调度策略配合使用,也可以将节点级集中式调度策略及动态调频策略配合使用,当然也可以将节点级集中式调度策略、CPU级集中式调度策略、及动态调频策略配合使用,还可以将动态调频策略及动态迁移策略配合使用,此处不再赘述,但是,上述策略的所有组合方式均属于本方案保护的范围。
本发明实施例提供的一种调度方法,通过获取待处理任务,并采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略,本方案能够根据待处理任务,实时动态调度集群中计算节点或计算节点的CPU或GPU,从而最大化减少整个集群的能耗,实现整个集群节能的目的。
并且,本方案能够实现在待处理任务的计算过程中既保证运行效率,同时保证待处理任务尽量避免离散分布或热源集中,从而最大化降频和休眠的范围和效果,降低整体能耗,最大化节能效果。
进一步的,本方案基于集群中所有计算节点的能耗值和CPU/GPU温度来统一调度计算任务的。对于给定计算量的任务,优先分配到单位能耗最低的计算节点上运行,从而节约任务计算中使用的能源。在相同条件下,本方案将计算任务分配到当前CPU/GPU温度最低的计算节点上执行,避免机房的热点形成,从而降低机房空调的能耗。
再者,本方案在待处理任务的计算过程当中进行调度,从而最大化节能效果。很多计算集群的计算任务往往需要运行在上百个计算节点,使用上千个CPU。然而,通常会发现,当计算集群中的很多小计算任务完成并释放计算资源后,计算资源的使用非常离散,通过对这类大计算任务的迁移和调整,从而可以将大量的计算节点完全释放出来,从而最大化降频和休眠的范围和效果。
请参阅图9,是本发明实施例提供的调度装置500的功能模块示意图。所述调度装置500运行于调度服务器100。所述调度装置500包括获取模块510,及调度模块520。
获取模块510,用于获取待处理任务。
调度模块520,用于采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略。
作为一种实施方式,所述节点级集中式调度策略包括:将所述待处理任务优先调度到所述集群中满足所述待处理任务的运行要求且已处于计算过程中的计算节点进行处理。
作为一种实施方式,所述计算节点为多核计算节点,所述CPU级集中式调度策略包括:若所述待处理任务在所述计算节点的其中一个内核进行处理,采用CPU绑定技术将所述待处理任务与处理所述待处理任务的内核进行绑定,以避免所述待处理任务在所述计算节点的多个内核间切换。
作为一种实施方式,所述作业分级策略包括:将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率。
作为一种实施方式,所述将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率,包括:若所述待处理任务为第一级别,则所述待处理任务使用CPU或GPU的第一频率来计算;若所述待处理任务为第二级别,则所述待处理任务使用CPU或GPU的第二频率来计算,其中,所述第一频率大于所述第二频率。
作为一种实施方式,所述热点均衡调度策略包括:根据所述集群当前的散热分布情况,对所述待处理任务进行调度。
作为一种实施方式,所述根据所述集群当前的散热分布情况,对所述待处理任务进行调度,包括:将所述待处理任务优先调度到所述集群中CPU或GPU的温度小于第一阈值的计算节点上进行处理。
作为一种实施方式,所述能耗优先调度策略包括:将所述待处理任务调度优先调度到所述集群中当前能耗小于第二阈值的计算节点上进行处理。
作为一种实施方式,所述动态调频策略包括:在所述待处理任务处理过程中,实时对所述待处理任务进行特征图谱分析;若所述待处理任务为非计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行降频处理;若所述待处理任务为计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行升频率处理。
作为一种实施方式,所述待处理任务的类型通过建立机器学习模型获得。
作为一种实施方式,所述动态迁移策略包括:分析所述集群中正在处理的所有待处理任务,若所述集群中正在处理的所有待处理任务离散分布在不同的计算节点进行处理,将所述待处理任务进行迁移,以使所述待处理任务集中在一个或多个计算节点上处理,并将所述集群中未处理所述待处理任务的计算节点休眠,当所述集群中计算资源不足以处理新增待处理任务时,自动唤醒休眠的计算节点以处理新增待处理任务。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于调度服务器100的存储器110内。以上各模块同样可以由硬件例如集成电路芯片实现。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的调度装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种调度方法,其特征在于,应用于包括多个计算节点的集群中,所述方法包括:
获取待处理任务;
采用预设调度策略集中的一个或多个策略,将所述待处理任务在所述集群的各个计算节点中进行调度,或根据所述待处理任务对所述集群中的计算节点的CPU或GPU进行调度,以降低所述集群的能耗,其中,所述预设调度策略集包括节点级集中式调度策略、CPU级集中式调度策略、作业分级策略、热点均衡调度策略、能耗优先调度策略、动态调频策略、动态迁移策略。
2.根据权利要求1所述的方法,其特征在于,所述节点级集中式调度策略包括:
将所述待处理任务优先调度到所述集群中满足所述待处理任务的运行要求且已处于计算过程中的计算节点进行处理。
3.根据权利要求1所述的方法,其特征在于,所述计算节点为多核计算节点,所述CPU级集中式调度策略包括:
若所述待处理任务在所述计算节点的其中一个内核进行处理,采用CPU绑定技术将所述待处理任务与处理所述待处理任务的内核进行绑定,以避免所述待处理任务在所述计算节点的多个内核间切换。
4.根据权利要求1所述的方法,其特征在于,所述作业分级策略包括:
将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率。
5.根据权利要求4所述的方法,其特征在于,所述将所述待处理任务进行分级,根据所述待处理任务的级别调整所述待处理任务所使用的CPU或GPU的频率,包括:
若所述待处理任务为第一级别,则所述待处理任务使用CPU或GPU的第一频率来计算;
若所述待处理任务为第二级别,则所述待处理任务使用CPU或GPU的第二频率来计算,其中,所述第一频率大于所述第二频率。
6.根据权利要求1所述的方法,其特征在于,所述热点均衡调度策略包括:
根据所述集群当前的散热分布情况,对所述待处理任务进行调度。
7.根据权利要求6所述的方法,其特征在于,所述根据所述集群当前的散热分布情况,对所述待处理任务进行调度,包括:
将所述待处理任务优先调度到所述集群中CPU或GPU的温度小于第一阈值的计算节点上进行处理。
8.根据权利要求1所述的方法,其特征在于,所述能耗优先调度策略包括:
将所述待处理任务调度优先调度到所述集群中当前能耗小于第二阈值的计算节点上进行处理。
9.根据权利要求1所述的方法,其特征在于,所述动态调频策略包括:
在所述待处理任务处理过程中,实时对所述待处理任务进行特征图谱分析;
若所述待处理任务为非计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行降频处理;
若所述待处理任务为计算集中型任务,则对所述待处理任务所使用的CPU或GPU进行升频率处理。
10.根据权利要求1所述的方法,其特征在于,所述动态迁移策略包括:
分析所述集群中正在处理的所有待处理任务,若所述集群中正在处理的所有待处理任务离散分布在不同的计算节点进行处理,将所述待处理任务进行迁移,以使所述待处理任务集中在一个或多个计算节点上处理,并将所述集群中未处理所述待处理任务的计算节点休眠,当所述集群中计算资源不足以处理新增待处理任务时,自动唤醒休眠的计算节点以处理新增待处理任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710319421.4A CN107145216A (zh) | 2017-05-05 | 2017-05-05 | 一种调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710319421.4A CN107145216A (zh) | 2017-05-05 | 2017-05-05 | 一种调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107145216A true CN107145216A (zh) | 2017-09-08 |
Family
ID=59777749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710319421.4A Pending CN107145216A (zh) | 2017-05-05 | 2017-05-05 | 一种调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107145216A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108539743A (zh) * | 2018-05-19 | 2018-09-14 | 北京合众汇能科技有限公司 | 一种高效节能型配电终端 |
CN111539607A (zh) * | 2020-04-15 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种服务提供方法和装置 |
CN111966496A (zh) * | 2020-08-21 | 2020-11-20 | 浪潮(北京)电子信息产业有限公司 | 数据处理方法、装置、系统及计算机可读存储介质 |
CN113495923A (zh) * | 2021-02-09 | 2021-10-12 | 深圳市云网万店科技有限公司 | 用于分布式数据库执行器的调度管理方法及系统 |
CN113721741A (zh) * | 2021-08-26 | 2021-11-30 | 联泰集群(北京)科技有限责任公司 | 一种高性能计算集群平台散热的控制方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101938416A (zh) * | 2010-09-01 | 2011-01-05 | 华南理工大学 | 一种基于动态重配置虚拟资源的云计算资源调度方法 |
CN102508714A (zh) * | 2011-11-03 | 2012-06-20 | 南京邮电大学 | 一种云计算中基于绿色计算的虚拟机调度方法 |
CN103605567A (zh) * | 2013-10-29 | 2014-02-26 | 河海大学 | 面向实时性需求变化的云计算任务调度方法 |
CN103902379A (zh) * | 2012-12-25 | 2014-07-02 | 中国移动通信集团公司 | 一种任务调度方法、装置及服务器集群 |
CN104065745A (zh) * | 2014-07-07 | 2014-09-24 | 电子科技大学 | 云计算动态资源调度系统和方法 |
CN104965689A (zh) * | 2015-05-22 | 2015-10-07 | 浪潮电子信息产业股份有限公司 | 一种cpu/gpu的混合并行计算方法及装置 |
WO2016115956A1 (zh) * | 2015-01-23 | 2016-07-28 | 中兴通讯股份有限公司 | 基于云计算的业务系统的调度方法及调度装置 |
-
2017
- 2017-05-05 CN CN201710319421.4A patent/CN107145216A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101938416A (zh) * | 2010-09-01 | 2011-01-05 | 华南理工大学 | 一种基于动态重配置虚拟资源的云计算资源调度方法 |
CN102508714A (zh) * | 2011-11-03 | 2012-06-20 | 南京邮电大学 | 一种云计算中基于绿色计算的虚拟机调度方法 |
CN103902379A (zh) * | 2012-12-25 | 2014-07-02 | 中国移动通信集团公司 | 一种任务调度方法、装置及服务器集群 |
CN103605567A (zh) * | 2013-10-29 | 2014-02-26 | 河海大学 | 面向实时性需求变化的云计算任务调度方法 |
CN104065745A (zh) * | 2014-07-07 | 2014-09-24 | 电子科技大学 | 云计算动态资源调度系统和方法 |
WO2016115956A1 (zh) * | 2015-01-23 | 2016-07-28 | 中兴通讯股份有限公司 | 基于云计算的业务系统的调度方法及调度装置 |
CN104965689A (zh) * | 2015-05-22 | 2015-10-07 | 浪潮电子信息产业股份有限公司 | 一种cpu/gpu的混合并行计算方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108539743A (zh) * | 2018-05-19 | 2018-09-14 | 北京合众汇能科技有限公司 | 一种高效节能型配电终端 |
CN108539743B (zh) * | 2018-05-19 | 2021-08-17 | 北京合众汇能科技有限公司 | 一种高效节能型配电终端 |
CN111539607A (zh) * | 2020-04-15 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种服务提供方法和装置 |
CN111966496A (zh) * | 2020-08-21 | 2020-11-20 | 浪潮(北京)电子信息产业有限公司 | 数据处理方法、装置、系统及计算机可读存储介质 |
CN111966496B (zh) * | 2020-08-21 | 2022-06-10 | 浪潮(北京)电子信息产业有限公司 | 数据处理方法、装置、系统及计算机可读存储介质 |
CN113495923A (zh) * | 2021-02-09 | 2021-10-12 | 深圳市云网万店科技有限公司 | 用于分布式数据库执行器的调度管理方法及系统 |
CN113721741A (zh) * | 2021-08-26 | 2021-11-30 | 联泰集群(北京)科技有限责任公司 | 一种高性能计算集群平台散热的控制方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107145216A (zh) | 一种调度方法 | |
Kołodziej et al. | Energy efficient genetic‐based schedulers in computational grids | |
US20170109205A1 (en) | Computing Resources Workload Scheduling | |
Zidenberg et al. | Multiamdahl: How should i divide my heterogenous chip? | |
US9239734B2 (en) | Scheduling method and system, computing grid, and corresponding computer-program product | |
CN105260235A (zh) | 一种云平台中基于应用场景的资源调度方法及装置 | |
CN104850488A (zh) | 虚拟机功耗测量和管理 | |
Kołodziej et al. | Hierarchical genetic-based grid scheduling with energy optimization | |
CN106202431A (zh) | 一种基于机器学习的Hadoop参数自动调优方法及系统 | |
CN106201707A (zh) | 处理器资源分配方法及装置 | |
CN108549583A (zh) | 大数据处理方法、装置、服务器及可读存储介质 | |
Liao et al. | Long-term generation scheduling of hydropower system using multi-core parallelization of particle swarm optimization | |
Zhang et al. | CloudFreq: Elastic energy-efficient bag-of-tasks scheduling in DVFS-enabled clouds | |
Cheng et al. | Heterogeneity aware workload management in distributed sustainable datacenters | |
CN114442794A (zh) | 服务器功耗控制方法、系统、终端及存储介质 | |
Aksanli et al. | Using datacenter simulation to evaluate green energy integration | |
Fei et al. | Elastic resource provisioning using data clustering in cloud service platform | |
Li et al. | Energy-aware task scheduling optimization with deep reinforcement learning for large-scale heterogeneous systems | |
Singh et al. | Value and energy optimizing dynamic resource allocation in many-core HPC systems | |
Rahbari et al. | Computation offloading and scheduling in edge-fog cloud computing | |
Biswas et al. | A novel energy efficient scheduling for high performance computing systems | |
Hajiamini et al. | A study of DVFS methodologies for multicore systems with islanding feature | |
Al-Fatlawi et al. | A novel approach for new architecture for green data centre | |
CN107402807A (zh) | 在计算机系统中有效提升多任务执行效率的方法、系统和处理器 | |
Ji et al. | A joint energy efficiency optimization scheme based on marginal cost and workload prediction in data centers |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170908 |