CN108509014A - 计算设备和分配功率到每个计算设备中的多个核的方法 - Google Patents

计算设备和分配功率到每个计算设备中的多个核的方法 Download PDF

Info

Publication number
CN108509014A
CN108509014A CN201810042159.8A CN201810042159A CN108509014A CN 108509014 A CN108509014 A CN 108509014A CN 201810042159 A CN201810042159 A CN 201810042159A CN 108509014 A CN108509014 A CN 108509014A
Authority
CN
China
Prior art keywords
control core
process cores
core
group
cores
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
CN201810042159.8A
Other languages
English (en)
Other versions
CN108509014B (zh
Inventor
B.艾格
赵永显
乌洙林
刘东勋
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.)
Samsung Electronics Co Ltd
Seoul National University Industry Foundation
Original Assignee
Samsung Electronics Co Ltd
Seoul National University Industry Foundation
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 Samsung Electronics Co Ltd, Seoul National University Industry Foundation filed Critical Samsung Electronics Co Ltd
Publication of CN108509014A publication Critical patent/CN108509014A/zh
Application granted granted Critical
Publication of CN108509014B publication Critical patent/CN108509014B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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

Abstract

提供了包括多个核的计算设备以及向多个核分配功率的方法。计算设备包括:包括多个控制核的控制核组,控制核组被配置为根据能量管理策略和处理核的状态信息来给处理核分配功率预算,并将所分配的功率预算发送到下控制核和处理核中的至少一个;以及包括至少一个或多个处理核的处理核组,处理核组被配置为基于由控制核组分配的功率预算执行计算,并将处理核的状态信息发送到控制核组,基于执行的计算已经修改了处理核的状态信息。

Description

计算设备和分配功率到每个计算设备中的多个核的方法
相关申请的交叉引用
本申请要求于2017年2月27日在韩国知识产权局提交的韩国专利申请No.10-2017-025654的优先权,其公开内容通过引用整体并入本文。
技术领域
本公开涉及每个包括多个核的计算设备,以及向多个核动态地分配功率的方法。
背景技术
计算设备正在演变为将多个核或处理器集成到单个集成电路中以满足应用的性能要求。例如,多核处理器是具有算术功能的两个或多个核集成在单个处理器上的多核处理器。另外,还开发了一种众核处理器,其中更多的核(通常多于16个)集成在单个处理器上。多核处理器和众核处理器可以安装在诸如平板个人计算机(personal computers,PC)、移动电话、个人数字助理(personal digital assistants,PDA)、膝上型计算机、媒体播放器、全球定位系统(Global Positioning System,GPS)设备、电子书终端、MP3播放器、和数码相机、或包括安装在电视机(televisions,TV)上的多媒体芯片的嵌入式设备的便携式设备上。
设计在多核处理器或众核处理器中管理核的功率和发热的方法是可以期望的。
发明内容
提供了计算设备和向包括在每个计算设备中的被分层地分类的控制核的组中的处理核分配功率的方法。
附加方面将在下面的描述中部分地阐述,并且部分地将从描述中显而易见,或者可以通过实践所呈现的示例性实施例来学习。
根据一些示例性实施例,包括多个核的计算设备包括包括多个控制核的控制核组,控制核组被配置为根据能量管理策略和处理核的状态信息来向处理核分配功率预算,并将分配的功率预算发送到下控制核和处理核中的至少一个。计算设备还包括包括至少一个或多个处理核的处理核组,处理核组被配置为基于由控制核组分配的功率预算执行计算,并将处理核的状态信息发送到控制核组,基于执行的计算已经修改了处理核的状态信息;并且多个控制核根据控制核向其分配功率预算的处理核的数量被分层地分类,下控制核是占据比上控制核更低层的层的控制核。
根据一些示例性实施例,向多个核分配功率的方法包括:根据能量管理策略和处理核的状态信息,通过控制核组给处理核分配功率预算。方法还包括由控制核组将分配的功率预算发送到下控制核和处理核中的至少一个。方法还包括由处理核组中包括的处理核中的至少一个基于分配的功率预算来执行计算。此外,这些方法包括:由处理核将处理核的状态信息发送到控制核组,基于执行的计算已经修改了处理核的状态信息;控制核组包括根据控制核向其分配功率预算的处理核的数量而被分层地分类的控制核,下控制核是占据比上控制核更下层的层的控制核。
根据一些示例性实施例,包括以多个层级配置的多个控制核的控制核组包括最上层级的根控制核,被配置为获得能量管理策略和功率预算,并且将能量管理策略和功率预算发送到多个叶控制核。控制核组还包括最下层级的多个叶控制核,多个叶控制核中的每一个被配置为从根控制核接收能量管理策略和功率预算,并且基于所接收的能量管理策略和所接收的功率预算,控制多个处理核的子集的电压和操作频率中的至少一个。
附图说明
从以下结合附图的一些示例性实施例的描述中,这些和/或其他方面将变得显而易见和更容易理解,其中:
图1是根据一些示例性实施例的包括控制核组的计算设备的配置的框图;
图2是根据一些示例性实施例的包括还包括根控制核和叶控制核组的控制核组的计算设备的配置的框图;
图3示出根据一些示例性实施例的分配给相应控制核的处理核的数量;
图4是示出根据一些示例性实施例的包括控制核的计算机的操作的流程图;
图5示出根据一些示例性实施例的包括控制核和功率管理器的计算设备的结构;
图6示出根据一些示例性实施例的处理核的结构;
图7示出根据一些示例性实施例的叶控制核和处理核的互连性;
图8是示出根据一些示例性实施例的包括控制核并连接到功率管理器的计算设备的操作的流程图;
图9是根据一些示例性实施例的使用控制核组向多个核分配功率的方法的流程图;以及
图10是根据一些示例性实施例的使用控制核组和功率管理器向多个核分配功率的方法的详细流程图。
具体实施方式
现在将详细参考一些示例性实施例,其示例在附图中示出,其中相同的附图标记始终指的是相同的元件。在这方面,本示例性实施例可以具有不同的形式,并且不应被理解为限于本文所阐述的描述。因此,下面仅通过参考附图来描述示例性实施例来解释方面。诸如“至少一个”的表达式在元素列表之前修改整个元素列表,并且不修改列表的单独的元素。
图1是根据一些示例性实施例的包括控制核组的计算设备100的配置的框图。
根据一些示例性实施例的计算设备100包括多个核,并且多个核可以分类为控制核组110和处理核组120。本领域普通技术人员应当理解,除了图1所示的组件之外,还可以包括其他通用组件。根据一些示例性实施例,本文所描述的由控制核组110和处理核组120中的任何一个或全部执行的操作可以由运行程序代码的至少一个处理器来执行,该程序代码包括对应于该操作的指令。指令可以存储在存储器中。在本公开中使用的术语“处理器”可以指的是例如具有被物理构成以运行包括例如表示为包括在一个程序中的代码和/或指令的操作的期望操作的电路的硬件实现的数据处理设备。在至少一些示例性实施例中,上面提到的硬件实现的数据处理设备可以包括但不限于微处理器、中央处理单元(centralprocessing unit,CPU)、处理器核、多核处理器;多处理器、专用集成电路(application-specific integrated circuit,ASIC)、和现场可编程门阵列(field programmable gatearray,FPGA)。
控制核组110指的是根据能量管理策略和处理核的状态信息,向处理核分配功率预算的一组控制核,并将分配给处理核的功率预算发送给下控制核(占用下层的层的控制核或控制核组在下文中称为“下控制核”)和处理核中的至少一个。这里,控制核的描述可以与处理核的描述相同。然而,控制核的描述不限于此,只要控制核能够接收能量管理策略和处理核的状态信息并计算分配给处理核的功率预算即可。根据一些示例性实施例,每个控制核和处理核可以是单独的处理器。这里描述为由控制核和处理核中的任何一个或全部执行的操作可以由运行程序代码的至少一个处理器执行,该程序代码包括对应于该操作的指令。指令可以存储在存储器中。
同时,能量管理策略是指用于管理计算设备100的功耗和发热量的标准,并且可以是基于处理核组120的计算量、由处理核组120生成的热量、以及由处理核组120消耗的功率量中的至少一个的策略。更具体地,能量管理策略可以包括但不限于用于增加包括在计算设备100中的处理核组120的计算总量的策略、用于处理核组120基于有限量的功率执行计算的策略、以及用于处理核组120基于允许发热量执行计算的策略。另外,处理核的状态信息可以是处理核的功耗、处理核的缓存未命中率、以及关于由处理核执行的计算的信息中的至少一个,但不限于此,只要状态信息指示处理核的性能。
处理核组120指的是基于由控制核组110分配的功率预算执行计算的一组处理核,然后由于处理核的计算将改变的状态信息发送到控制核组110。这里,处理核可以对应于多核处理器和众核处理器的每个核,但不限于此。
包括在控制核组110中的多个控制核可以根据控制核分配功率预算的处理核的数量进行分层地分类。将参照图2描述对控制核组110进行分层地分类的示例。
图2是根据一些示例性实施例的包括还包括根控制核和叶控制核组的控制核组的计算设备200的配置的框图。
参考图2,计算设备200可以包括控制核组220和处理核组260。控制核组220可以包括根控制核230和叶控制核组250。此外,根据控制核组220的分层结构,计算设备200还可以包括中间控制核组240。同时,由于图2的处理核组260对应于图1的处理核组120,这里不再赘述。
根控制核230可以建立处理核组260的能量管理策略,并且可以将由下控制核管理的处理核的功率预算发送到下控制核。尽管图2将根控制核230的下控制核显示为中间控制核组240,本领域普通技术人员将理解,根据控制核组220的分层结构,根控制核230的下控制核可以是中间控制核组240和叶控制核组250中的至少一个。
同时,根控制核230可以基于从下控制核接收的处理核的状态信息来建立能量管理策略或从功率管理器210接收能量管理策略。功率管理器210可以是但不限于系统管理器、通用的中央处理单元(CPU)、和能够监控计算设备200的功耗和发热并设置用于计算设备200的功耗和发热的目标值的主机处理器。在一些示例性实施例中,功率管理器210可以是计算设备100的外部设备。
叶控制核组250可以包括多个叶控制核,其从上控制核(占有更高层的层的控制核或控制核组,以下称为“上控制核”)接收功率预算,并将功率分发给处理核。尽管图2将叶控制核组250的上控制核显示为中间控制核组240,本领域普通技术人员应当理解,根据控制核组220的分层结构,叶控制核组250的上控制核可以为根控制核230和中间控制核组240中的至少一个。
中间控制核组240可以包括多个中间控制核,其从根控制核230接收功率预算,并将由叶控制核组250管理的处理核的功率预算发送到叶控制核组250。中间控制核组240可以被分层地分类。参考图2,中间控制核可以根据中间控制核向其分配功率预算的处理核的数量被分层地分类。这里,上层的中间控制核241可以将由下层的中间控制核242管理的处理核的功率预算发送到下层的中间控制核242。根据一些示例性实施例,本文描述的由功率管理器210、控制核组220、处理核组260、根控制核230、中间控制核组240、中间控制核241、中间控制核242和叶控制核组250中的任一个或全部执行的操作可以由运行程序代码的至少一个处理器(例如,功率管理器210)执行,该程序代码包括与操作相对应的指令。指令可以存储在存储器中。
图3示出了根据一些示例性实施例的分配给相应的控制核的处理核的数量。图1、2和3之间的冗余描述可以省略。
根据一些示例性实施例,包括在控制核组220中的控制核可以根据控制核向其分配功率预算的处理核的数量被分层地分类。
图3显示了包括8×8处理核的处理核组。参考图3,根控制核可以将功率预算分配给包括在处理核组中的所有处理核310。
同时,中间控制核可以将功率预算分配给包括在处理核组中的处理核310的子集320。例如,如果中间控制核组240在单层中包括四个中间控制核,则一个中间控制核向其分配功率预算的处理核的数量可以是16。然而,本领域普通技术人员应当理解,对于每个中间控制核,一个中间控制核向其分配功率预算的处理核的数量可能不同。
同时,叶控制核可以从上控制核接收功率预算并控制处理核的功率。例如,叶控制核可以将功率预算分配给由中间控制核分配功率预算的处理核320的子集330。因此,由叶控制核分发功率的处理核330的数量少于由中间控制核分配功率预算的处理核320的数量。
此外,由于根据一些示例性实施例的计算设备100除了处理核组120之外还包括控制核组110,所以所有处理核都可以执行计算。此外,由于控制核组110被分层地分类,所以控制核可以有效地交换信息。将参照图4描述由被分层地分类的控制核动态地分配功率的方法。
图4是示出根据一些示例性实施例的包括控制核的计算机400的操作的流程图。计算机400可以包括根控制核410、中间控制核420、叶控制核430、和处理核440。根据一些示例性实施例,本文所描述由根控制核410、中间控制核420、叶控制核430、和处理核440中的任何一个或全部执行的操作可以由运行包括与该操作相对应的指令的程序代码的至少一个处理器执行。指令可以存储在存储器中。
根据一些示例性实施例的控制核组可以根据经由下控制核从处理核接收的处理核的状态信息来重新分配分配给另一下控制核和另一处理核的功率预算。
参考图4,叶控制核430可以基于从中间控制核420接收的功率预算,将功率预算分配给处理核440。叶控制核430可以通过考虑从处理核440接收的处理核440的状态信息计算分配给处理核440的功率预算。
同时,叶控制核430可以动态地控制处理核440的电压和操作频率,并且可以基于从上控制核接收的功率预算来阻挡处理核440的功率。例如,当叶控制核430从上控制核接收到在限制功耗的同时保持处理核440的计算总量恒定的能量管理策略时,叶控制核430可以阻挡功率或减少处理核440的电压或操作频率。
同时,处理核440可以收集包括功耗、缓存未命中率、运行的特定指令字数等的处理核440的状态信息,并且可以将状态信息发送到叶控制核430。
根据从根控制核410接收的能量管理策略和功率预算以及从叶控制核430接收的处理核440的状态信息,中间控制核420可以将分配给另一叶控制核的功率预算重新分配到叶控制核430。中间控制核420还可以将处理核440的状态信息发送到根控制核410。
根控制核410根据从中间控制核420接收到的处理核440的状态信息,可以将分配给另一中间控制核的功率预算重新分配给处理核440。另外,根控制核410可以根据从中间控制核420接收到的处理核440的状态信息动态地改变能量管理策略。
图5示出了根据一些示例性实施例的包括控制核和功率管理器的计算设备530的结构。
参考图5,计算设备530可以连接到功率管理器510和存储器520。此外,计算设备530可以包括根控制核531、叶控制核533、和处理核534,并且根据控制核组的分层结构还可以包括中间控制核532。根据一些示例性实施例,本文所描述的由功率管理器510、根控制核531、叶控制核533、处理核534和中间控制核532中的任何一个或全部执行的操作由运行包括对应于该操作的指令的程序代码的至少一个处理器执行。指令可以存储在存储器(例如,存储器520)中。
参考图5,根控制核531连接到中间控制核532。因此,根控制核531可以将处理核534的功率预算发送到中间控制核532而不是直接访问处理核534。由于中间控制核532连接到叶控制核533,分配给包括在处理核组中的一些处理核的功率预算可以被发送到叶控制核533。叶控制核533可以连接到处理核534以直接向处理核534分发功率。
同时,根控制核531可以连接到功率管理器510以接收计算设备530的能量管理策略。
图6示出了根据一些示例性实施例的处理核600的结构。
根据一些示例性实施例的处理核600可以监控其状态并将状态信息发送到叶控制核。例如,参考图6,处理核600可以包括用于执行计算的核610、用于与外部设备通信的路由器620、性能监控器630、和动态控制管理器640。
性能监控器630可以监控核610的工作特性,并且经由路由器620将监控结果发送到叶控制核。例如,性能监控器630可以监控核610的计算、核610的缓存未命中率、由核610执行的计算中的特定计算的数量,但是可以被监控的信息不限于此。
动态控制管理器640可以经由路由器620从叶控制核接收关于核610的电压和操作频率的信息,并且可以根据所接收的电压和操作频率来控制核610。
另外,根据一些示例性实施例的处理核600可以包括用于收集热量信息的热传感器650。热传感器650可以测量处理核600的温度,并且经由路由器620将测量结果发送到叶控制核。例如,如果处理核600包括热传感器650,则计算设备可以根据基于由处理核600生成的热量的能量管理策略将功率预算分配给处理核600。根据一些示例性实施例,本文描述的由核610、路由器620、性能监视器630、动态控制管理器640、和热传感器650中的任一个或所有执行的操作由运行包括对应于该操作的指令的程序代码的至少一个处理器执行。指令可以存储在存储器中。
图7示出了根据一些示例性实施例的叶控制核730和处理核710的互连性。
根据一些示例性实施例的叶控制核730可将功率分发给多个处理核710。例如,参考图7,叶控制核730可以连接到四个处理核710,并且可以被配置为基于计算结果计算处理核710的每一个的功率预算并且将功率分发给处理核710的每一个。图7中的核711和路由器712分别对应于图6中的核610和路由器620,因此在此不再赘述。
处理核710可以经由路由器712连接到外部路由器720,并且外部路由器720可以连接到叶控制核730。因此,叶控制核730可以直接控制处理核710。尽管图7显示处理核710中包括单个核711,处理核710中的核711的数量不限于此。根据一些示例性实施例,本文所描述的由处理核710、核711、路由器712、外部路由器720、和叶控制核730中的任何一个或全部执行的操作由运行包括对应于该操作的指令的程序代码的至少一个处理器执行。指令可以存储在存储器中。
路由器712和外部路由器720可以根据片上网络(Network-on-Chip,NoC)通信方法或总线通信方法相互通信。然而,路由器712和外部路由器720的通信方法不限于此。
尽管图7显示了叶控制核730可以将功率分发给四个处理核710,叶控制核730可以向其分发功率的处理核710的数量不限于此。
图8是示出根据一些示例性实施例的包括控制核并连接到功率管理器的计算设备800的操作的流程图。
根据一些示例性实施例的计算设备800可以连接到功率管理器810、缓存820、和外部存储器830。同时,图8的根控制核840、中间控制核850、和叶控制核860分别对应于图4的根控制核410、中间控制核420、和叶控制核430,因此这里不再赘述。
根控制核840可以基于从中间控制核850接收的处理核870的状态信息建立能量管理策略。此外,根控制核840可以从功率管理器810接收能量管理策略。
同时,处理核870的状态信息可以包括处理核870的缓存未命中率。缓存未命中率指示由处理核870请求的数据或指令字未被存储在缓存820中的情况。如果处理核870的缓存未命中率增加,则处理核870访问外部存储器830的次数增加,并且处理核870消耗更高的能量来执行计算。根据一些示例性实施例,本文所描述的由功率管理器810、根控制核840、中间控制核850、叶控制核860、和处理核870中的任何一个或全部执行的操作由运行包括对应于该操作的指令的程序代码的至少一个处理器(例如,功率管理器810)执行。指令可以存储在存储器(例如,外部存储器830)中。
图9是根据一些示例性实施例的使用控制核组向多个核分配功率的方法的流程图。图1和图9之间的冗余描述可以省略。
在操作910中,控制核组110可以根据能量管理策略和处理核的状态信息向处理核分配功率预算。可以根据控制核(例如,控制核组110的)分配功率预算的处理核的数量来分层地分类包括在控制核组110中的多个控制核。
能量管理策略指的是用于管理计算设备100的功耗和发热量的标准。能量管理策略可以是基于处理核组120的计算量、由处理核组120生成的热量、以及处理核组120消耗的功率量中的至少一个的策略。更具体地,能量管理策略可以包括但不限于增加包括在计算设备100中的处理核组120的计算总量的策略、用于处理核组120基于有限量的功率执行计算的策略、以及用于处理核组120基于允许量的发热执行计算的策略。
此外,处理核的状态信息可以包括处理核的功耗、处理核的缓存未命中率、和关于由处理核执行的计算的信息中的至少一个,但不限于此,只要状态信息对应于处理核的性能。
更详细地,控制核组110可以包括根控制核和叶控制核组。
根控制核可以建立处理核组120的能量管理策略,并且可以将由下控制核管理的处理核的功率预算发送到下控制核。此外,根控制核可以基于状态信息建立能量管理策略,或者从功率管理器接收能量管理策略。
叶控制核组可以包括至少一个叶控制核,其从上控制核接收功率预算并将功率分发给处理核。更详细地,叶控制核可以基于从上控制核接收的功率预算来动态地控制处理核的电压和操作频率。另外,叶控制核可以基于从上控制核接收的功率预算来阻挡处理核组120中包括的一个或多个处理核的功率。
此外,控制核组110还可以包括中间控制核组。中间控制核组是包括从根控制核接收功率预算并将由叶控制核组管理的处理核的功率预算发送到叶控制核组的多个中间控制核的组。当根据功率预算被分配到其的处理核的数目对中间控制核进行分层地分类时,上层的中间控制核可以分配由下层的中间控制核管理的处理核的功率预算,到下层的中间控制核。
在操作920中,控制核组110可以将分配给处理核的功率预算发送到下控制核和处理核中的至少一个。
在操作930中,包括至少一个处理核的处理核组120可以基于分配的功率预算来执行计算。
在操作940中,处理核组120可以将由于处理核的计算而改变的状态信息发送到控制核组110。
同时,计算设备100还可以包括用于测量处理核的温度的热传感器。作为结果,处理核的状态信息还可以包括从热传感器接收的处理核的发热信息。
图10是根据一些示例性实施例的使用控制核组和功率管理器向多个核分配功率的方法的详细流程图。
图10是用于详细说明由计算设备100向多个核分配功率的方法的视图,并且本领域技术人员应当理解,向多个核分配功率的方法可以取决于计算设备100的配置而变化。此外,图10的操作1020、1030、1040、和1050分别对应于图9的操作910、920、930和940,因此,这里不再赘述。
在操作1010中,根控制核可以从功率管理器接收能量管理策略。
在操作1060中,根据经由下控制核从处理核接收的处理核的状态信息,多个控制核(例如,控制核组110的)可以重新分配分配给另一下控制核和另一处理核的功率预算。
根据一些示例性实施例,控制核被分层地分类,从而根据能量管理策略有效地将功率分配给处理核。
应当理解,本文描述的示例性实施例应仅在描述性意义上被考虑,而不是为了限制的目的。通常在其他示例性实施例中,对于示例性实施例中的特征或方面的描述被认为可用于其他类似特征或方面。
虽然已经参考附图描述了一个或多个示例性实施例,但是本领域普通技术人员将会理解,在不脱离以下权利要求所定义的精神和范围的情况下,可以对其形式和细节进行各种改变。

Claims (20)

1.一种包括多个核的计算设备,所述计算设备包括:
包括多个控制核的控制核组,所述控制核组被配置为
根据能量管理策略和处理核的状态信息给处理核分配功率预算,以及
将所分配的功率预算发送到下控制核和所述处理核中的至少一个;以及
包括至少一个或多个所述处理核的处理核组,所述处理核组被配置为
基于所述由所述控制核组分配的功率预算执行计算,以及
将所述处理核的状态信息发送到所述控制核组,基于所执行的计算已经修改了所述处理核的状态信息;以及
所述多个控制核根据所述控制核向其分配所述功率预算的所述处理核的数量而被分层地分类,所述下控制核是占据比上控制核更下层的层的控制核。
2.如权利要求1所述的计算设备,其中,所述控制核组还包括:
根控制核,被配置为
建立所述处理核组的能量管理策略,以及
将由所述下控制核管理的所述处理核的功率预算发送到所述下控制核;以及
包括多个叶控制核的叶控制核组,所述叶控制核组被配置为
从上控制核接收所述功率预算以及
向所述处理核分发功率。
3.如权利要求2所述的计算设备,其中
所述控制核组还被配置为
根据从所述下控制核和所述处理核接收到的所述处理核的状态信息,重新分配分配给另一下控制核和其他处理核的功率预算。
4.如权利要求3所述的计算设备,其中
所述状态信息是所述处理核的功耗、所述处理核的缓存未命中率、以及由所述处理核执行的计算中的至少一个。
5.如权利要求2所述的计算设备,其中,所述控制核组还包括:
中间控制核组,包括多个中间控制核,所述中间控制核组被配置为
从所述根控制核接收功率预算,以及
将由所述叶控制核组管理的所述处理核的功率预算发送到所述叶控制核组;
所述中间控制核根据所述中间控制核向其分配所述功率预算的所述处理核的数量被分层地分类;以及
更上层的层的中间控制核将所述由更下层的层的中间控制核管理的处理核的功率预算发送到所述更下层的层的中间控制核。
6.如权利要求2所述的计算设备,其中
所述根控制核还被配置为
基于所述状态信息建立所述能量管理策略,或者从功率管理器接收所述能量管理策略。
7.如权利要求2所述的计算设备,其中
所述叶控制核组还被配置为
基于从所述上控制核接收的所述功率预算来动态地控制所述处理核的电压和操作频率。
8.如权利要求2所述的计算设备,其中
所述叶控制核组还被配置为
基于从所述上控制核接收的所述功率预算,阻挡包括在所述处理核组中的一个或多个所述处理核的功率。
9.如权利要求1所述的计算设备,还包括:
热传感器,被配置为测量所述处理核的温度;以及
所述状态信息,其还包括从所述热传感器接收到的所述处理核的发热信息。
10.如权利要求9所述的计算设备,其中
所述能量管理策略基于所述处理核组的计算、由所述处理核组生成的热量、和所述处理核组所使用的功率量中的至少一个。
11.一种由计算设备执行的向多个核分配功率的方法,所述方法包括:
根据能量管理策略和所述处理核的状态信息,由控制核组向处理核分配功率预算;
由所述控制核组将所分配的功率预算发送到下控制核和所述处理核中的至少一个;
由所述包括在处理核组中的处理核中的至少一个,基于所分配的功率预算执行计算;以及
由所述处理核将所述处理核的状态信息发送到所述控制核组,基于所执行的计算已经修改了所述处理核的状态信息;以及
所述控制核组包括根据所述控制核向其分配所述功率预算的所述处理核的数量而被分层地分类的控制核,所述下控制核是占据比上控制核更下层的层的控制核。
12.如权利要求11所述的方法,还包括:
由包括在所述控制核组中的根控制核建立所述处理核组的能量管理策略;
由所述根控制核将由所述下控制核管理的所述处理核的功率预算发送到所述下控制核;
由包括在所述控制核组中的叶控制核组从上控制核接收所述功率预算;
由所述叶控制核组将功率分发给所述处理核;以及
所述叶控制核组包括多个叶控制核。
13.如权利要求12所述的方法,还包括:
由所述控制核组重新分配分配给另一下控制核和其他处理核的功率预算,所述重新分配是根据从所述下控制核和所述处理核接收的所述处理核的状态信息。
14.如权利要求12所述的方法,还包括:
由包括在所述控制核组中的中间控制核组从所述根控制核接收功率预算;
由所述中间控制核组将由所述叶控制核组管理的所述处理核的功率预算发送到所述叶控制核组;
所述中间控制核组包括多个中间控制核;
所述中间控制核根据所述中间控制核向其分配功率预算的所述处理核的数量被分层地分类;以及
所述功率预算向所述处理核的分配还包括:
由上层的层的中间控制核将所述由下层的层的中间控制核管理的处理核的功率预算分配给所述下层的层的中间控制核。
15.如权利要求11所述的方法,还包括:
测量所述处理核的温度;以及
所述状态信息还包括所述处理核的发热信息。
16.一种控制核组,包括以多个层级配置的多个控制核,包括:
最上层级中的根控制核,并被配置为
获得能量管理策略和功率预算,以及
将所述能量管理策略和所述功率预算发送到多个叶控制核;以及
最下层级中的所述多个叶控制核,所述多个叶控制核中的每一个被配置为
从所述根控制核接收所述能量管理策略和所述功率预算,以及
基于所接收的能量管理策略和所接收的功率预算来控制多个处理核的子集的电压和操作频率中的至少一个。
17.如权利要求16所述的控制核组,其中
所述根控制核还被配置为从外部源接收所述能量管理策略。
18.如权利要求16所述的控制核组,其中
所述根控制核还被配置为
从所述多个叶控制核接收多个处理核的状态信息,以及
基于所接收到的状态信息生成所述能量管理策略和所述功率预算;以及
所述多个叶控制核中的每一个还被配置为
从所述多个处理核的子集接收状态信息,基于由所述多个处理核的子集根据所述电压和所述操作频率中的至少一个而执行的计算,已经修改了所述状态信息,以及
将所述状态信息发送到所述根控制核。
19.如权利要求18所述的控制核组,其中
所述状态信息包括功耗、缓存未命中率、运行的特定指令字的数量、和温度中的至少一个。
20.如权利要求18所述的控制核组,还包括:
在所述最上层级和所述最下层级之间的至少一个中间层级中的多个中间控制核,被配置为
(i)从所述根控制核或更高的中间控制核接收所述能量管理策略和所述功率预算以及(ii)从所述多个叶控制核的子集或更低的中间控制核的子集接收所述状态信息;以及
(i)将所述能量管理策略和所述功率预算发送到所述多个叶控制核的子集或所述更低的中间控制核的子集以及(ii)将所述状态信息发送到所述根控制核或更高的中间控制核。
CN201810042159.8A 2017-02-27 2018-01-16 计算设备和分配功率到每个计算设备中的多个核的方法 Active CN108509014B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170025654A KR20180098904A (ko) 2017-02-27 2017-02-27 컴퓨팅 장치 및 컴퓨팅 장치에 포함된 복수의 코어들에 전력을 할당하는 방법
KR10-2017-0025654 2017-02-27

Publications (2)

Publication Number Publication Date
CN108509014A true CN108509014A (zh) 2018-09-07
CN108509014B CN108509014B (zh) 2023-09-29

Family

ID=63246768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810042159.8A Active CN108509014B (zh) 2017-02-27 2018-01-16 计算设备和分配功率到每个计算设备中的多个核的方法

Country Status (3)

Country Link
US (2) US10409351B2 (zh)
KR (1) KR20180098904A (zh)
CN (1) CN108509014B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360186A (zh) * 2020-03-04 2021-09-07 北京希姆计算科技有限公司 任务调度方法、装置、电子设备及计算机可读存储介质
WO2022188306A1 (zh) * 2021-03-09 2022-09-15 华为技术有限公司 一种任务分配方法及装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109937217B (zh) * 2016-09-30 2021-09-14 陶氏环球技术有限责任公司 适用于链梭移的多头或双头组合物和其制备方法
US11567556B2 (en) * 2019-03-28 2023-01-31 Intel Corporation Platform slicing of central processing unit (CPU) resources
US11698812B2 (en) * 2019-08-29 2023-07-11 Intel Corporation System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor
US20220318056A1 (en) * 2021-03-30 2022-10-06 Advanced Micro Devices, Inc. Dynamic system power load management
US11797045B2 (en) 2021-09-22 2023-10-24 Qualcomm Incorporated Dynamic voltage and frequency scaling (DVFS) within processor clusters
US11662795B2 (en) * 2021-09-29 2023-05-30 Dell Products L.P. System and method for ending a power reduction protocol in an information handling system environment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101278264A (zh) * 2005-09-28 2008-10-01 英特尔公司 众核处理器的可靠计算
CN101981529A (zh) * 2008-03-28 2011-02-23 微软公司 功率知晓线程调度和处理器的动态使用
US20110145461A1 (en) * 2008-08-19 2011-06-16 Zte Corporation Method and device for balancing interrupt load of multicore processor
US20130227326A1 (en) * 2012-02-24 2013-08-29 Samsung Electronics Co., Ltd. Apparatus and method for controlling power of electronic device having multi-core
US20130238912A1 (en) * 2010-11-25 2013-09-12 Michael Priel Method and apparatus for managing power in a multi-core processor
US20160179162A1 (en) * 2014-12-22 2016-06-23 Intel Corporation Holistic global performance and power management

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1495523A (zh) 1996-08-27 2004-05-12 ������������ʽ���� 转移方法和有源矩阵基板的制造方法
USRE38466E1 (en) 1996-11-12 2004-03-16 Seiko Epson Corporation Manufacturing method of active matrix substrate, active matrix substrate and liquid crystal display device
US7208725B2 (en) 1998-11-25 2007-04-24 Rohm And Haas Electronic Materials Llc Optoelectronic component with encapsulant
US6711691B1 (en) 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
JP3906654B2 (ja) 2000-07-18 2007-04-18 ソニー株式会社 半導体発光素子及び半導体発光装置
KR20040029301A (ko) 2001-08-22 2004-04-06 소니 가부시끼 가이샤 질화물 반도체소자 및 질화물 반도체소자의 제조방법
JP2003218034A (ja) 2002-01-17 2003-07-31 Sony Corp 選択成長方法、半導体発光素子及びその製造方法
JP3815335B2 (ja) 2002-01-18 2006-08-30 ソニー株式会社 半導体発光素子及びその製造方法
KR100499129B1 (ko) 2002-09-02 2005-07-04 삼성전기주식회사 발광 다이오드 및 그 제조방법
US7002182B2 (en) 2002-09-06 2006-02-21 Sony Corporation Semiconductor light emitting device integral type semiconductor light emitting unit image display unit and illuminating unit
KR100714639B1 (ko) 2003-10-21 2007-05-07 삼성전기주식회사 발광 소자
KR100506740B1 (ko) 2003-12-23 2005-08-08 삼성전기주식회사 질화물 반도체 발광소자 및 그 제조방법
US7281146B2 (en) 2004-06-30 2007-10-09 Intel Corporation Dynamic power requirement budget manager
KR100664985B1 (ko) 2004-10-26 2007-01-09 삼성전기주식회사 질화물계 반도체 소자
KR100665222B1 (ko) 2005-07-26 2007-01-09 삼성전기주식회사 확산재료를 이용한 엘이디 패키지 및 그 제조 방법
KR100661614B1 (ko) 2005-10-07 2006-12-26 삼성전기주식회사 질화물계 반도체 발광소자 및 그 제조방법
KR100723247B1 (ko) 2006-01-10 2007-05-29 삼성전기주식회사 칩코팅형 led 패키지 및 그 제조방법
US7421601B2 (en) * 2006-02-17 2008-09-02 International Business Machines Corporation Method and system for controlling power in a chip through a power-performance monitor and control unit
KR100735325B1 (ko) 2006-04-17 2007-07-04 삼성전기주식회사 발광다이오드 패키지 및 그 제조방법
KR100930171B1 (ko) 2006-12-05 2009-12-07 삼성전기주식회사 백색 발광장치 및 이를 이용한 백색 광원 모듈
KR100855065B1 (ko) 2007-04-24 2008-08-29 삼성전기주식회사 발광 다이오드 패키지
KR100982980B1 (ko) 2007-05-15 2010-09-17 삼성엘이디 주식회사 면 광원 장치 및 이를 구비하는 lcd 백라이트 유닛
KR101164026B1 (ko) 2007-07-12 2012-07-18 삼성전자주식회사 질화물계 반도체 발광소자 및 그 제조방법
KR100891761B1 (ko) 2007-10-19 2009-04-07 삼성전기주식회사 반도체 발광소자, 그의 제조방법 및 이를 이용한 반도체발광소자 패키지
KR101332794B1 (ko) 2008-08-05 2013-11-25 삼성전자주식회사 발광 장치, 이를 포함하는 발광 시스템, 상기 발광 장치 및발광 시스템의 제조 방법
KR20100030470A (ko) 2008-09-10 2010-03-18 삼성전자주식회사 다양한 색 온도의 백색광을 제공할 수 있는 발광 장치 및 발광 시스템
KR101530876B1 (ko) 2008-09-16 2015-06-23 삼성전자 주식회사 발광량이 증가된 발광 소자, 이를 포함하는 발광 장치, 상기 발광 소자 및 발광 장치의 제조 방법
US8008683B2 (en) 2008-10-22 2011-08-30 Samsung Led Co., Ltd. Semiconductor light emitting device
US8386808B2 (en) 2008-12-22 2013-02-26 Intel Corporation Adaptive power budget allocation between multiple components in a computing system
US8433662B2 (en) 2009-05-15 2013-04-30 The Aerospace Corporation Systems and methods for a core management system for parallel processing of an evolutionary algorithm
US9069555B2 (en) 2011-03-21 2015-06-30 Intel Corporation Managing power consumption in a multi-core processor
US10088891B2 (en) 2013-09-23 2018-10-02 Cornell University Multi-core computer processor based on a dynamic core-level power management for enhanced overall power efficiency
US20150241944A1 (en) 2014-02-25 2015-08-27 International Business Machines Corporation Distributed power management with performance and power boundaries
US9665161B2 (en) 2014-08-27 2017-05-30 Mediatek Inc. Method and computer-readable medium for dynamically managing power of multi-core processor
US10466754B2 (en) 2014-12-26 2019-11-05 Intel Corporation Dynamic hierarchical performance balancing of computational resources
US9880599B1 (en) * 2016-10-12 2018-01-30 International Business Machines Corporation Priority-aware power capping for hierarchical power distribution networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101278264A (zh) * 2005-09-28 2008-10-01 英特尔公司 众核处理器的可靠计算
CN101981529A (zh) * 2008-03-28 2011-02-23 微软公司 功率知晓线程调度和处理器的动态使用
US20110145461A1 (en) * 2008-08-19 2011-06-16 Zte Corporation Method and device for balancing interrupt load of multicore processor
US20130238912A1 (en) * 2010-11-25 2013-09-12 Michael Priel Method and apparatus for managing power in a multi-core processor
US20130227326A1 (en) * 2012-02-24 2013-08-29 Samsung Electronics Co., Ltd. Apparatus and method for controlling power of electronic device having multi-core
US20160179162A1 (en) * 2014-12-22 2016-06-23 Intel Corporation Holistic global performance and power management

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
何元烈等: "基于动态规划的暗硅背景下功率受限众核系统芯片功率分配方法研究", 《计算机应用研究》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360186A (zh) * 2020-03-04 2021-09-07 北京希姆计算科技有限公司 任务调度方法、装置、电子设备及计算机可读存储介质
WO2022188306A1 (zh) * 2021-03-09 2022-09-15 华为技术有限公司 一种任务分配方法及装置

Also Published As

Publication number Publication date
US20180246554A1 (en) 2018-08-30
KR20180098904A (ko) 2018-09-05
US11301016B2 (en) 2022-04-12
CN108509014B (zh) 2023-09-29
US20190339760A1 (en) 2019-11-07
US10409351B2 (en) 2019-09-10

Similar Documents

Publication Publication Date Title
CN108509014A (zh) 计算设备和分配功率到每个计算设备中的多个核的方法
US10355966B2 (en) Managing variations among nodes in parallel system frameworks
CN104798004B (zh) 根据功率平衡控制偏置,跨多个处理器域的动态功率平衡
CN103995577B (zh) 动态控制处理器的最大工作电压
CN104798008B (zh) 控制处理器的可配置的峰值性能极限
US9547027B2 (en) Dynamically measuring power consumption in a processor
EP2894542B1 (en) Estimating scalability of a workload
TWI430079B (zh) 用於多處理器核心之電力管理的裝置、系統及方法
TWI514126B (zh) 完全平台電力控制
US9250682B2 (en) Distributed power management for multi-core processors
CN104798034B (zh) 用于协调频率的方法、处理器以及系统
JP2018500673A (ja) ホリスティックグローバルなパフォーマンス及び電力管理
WO2012074573A1 (en) Dynamic power balancing among blade servers in a chassis
US20210034130A1 (en) Priority-based battery allocation for resources during power outage
JP2015127955A (ja) メモリアレイのための動的熱予算割当
CN109684074A (zh) 物理机资源分配方法及终端设备
CN108885483A (zh) 确定多管芯处理器中的热余量
CN104115091A (zh) 多层级cpu高电流保护
US20220188208A1 (en) Methods for configuring span of control under varying temperature
CN108292161A (zh) 具有工作负载适配的热传感器最大温度的集成电路热节流
CN104750213A (zh) 对处理器中的热电致冷的模糊逻辑控制
US10620687B2 (en) Hybrid power management approach
CN104956345B (zh) 基于响应定时优化在多处理器系统中执行频率协调
Ali et al. Communication and aging aware application mapping for multicore based edge computing servers
US20210191490A1 (en) Balancing power between discrete components in a compute node

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