CN100549908C - 多核架构中的工作点管理系统和方法 - Google Patents

多核架构中的工作点管理系统和方法 Download PDF

Info

Publication number
CN100549908C
CN100549908C CNB2005800442307A CN200580044230A CN100549908C CN 100549908 C CN100549908 C CN 100549908C CN B2005800442307 A CNB2005800442307 A CN B2005800442307A CN 200580044230 A CN200580044230 A CN 200580044230A CN 100549908 C CN100549908 C CN 100549908C
Authority
CN
China
Prior art keywords
active
processor
nuclear
cores
functional point
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.)
Active
Application number
CNB2005800442307A
Other languages
English (en)
Other versions
CN101111814A (zh
Inventor
E·罗滕
O·兰登
A·纳维
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN101111814A publication Critical patent/CN101111814A/zh
Application granted granted Critical
Publication of CN100549908C publication Critical patent/CN100549908C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
    • 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
    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/452Instruction code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/602Details relating to cache prefetching
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30083Power or thermal control instructions
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

管理工作点的系统和方法用来确定多个处理器核中的活性核数量。根据活性核数量选择至少一个活性核的最大工作点。在一实施例中,通过监测多个核中各核的ACPI的处理器功率状态信号来确定活性核的数量。

Description

多核架构中的工作点管理系统和方法
技术领域
[0001]
本发明的一个或多个实施例通常涉及工作点管理。特别是某些实施例涉及多核架构中的工作点管理。
背景技术
[0002]
计算系统的普及性持续增加,而更加复杂的处理架构的需求已经历了历史性的升级。例如,在计算产业,多核处理器正变得更为普遍,并可能用于服务器、台式个人计算机(PC)、笔记本电脑、个人数字助理、漂亮的无线电话等等。随着系统中处理器核数量的增加,潜在的最大功率也增加。所增加的功耗转变为更多的热量,从而给计算机的设计人员和制造厂商造成许多困难。例如,器件的速度和长期使用的可靠性随着温度的升高而会变坏。如果温度达到关键的高值,就会因发热而造成故障,使寿命降低、或甚至造成部件的永久性损坏。
[0003]
虽然研发了许多冷却办法,但是现代计算机的潜在的热量和冷却容量之间的差距继续增加,在计算机处理器中电源管理的某些方法包括与功率减少装置一起使用的一个或多个在芯片上的(on-die)温度传感器。为了减少功耗,一般根据对应的温度传感器的状态,开启和关闭(例如“扼制”)功率减少装置。另外的方法包括高低频/电压工作点之间交替转换。
[0004]
虽然在某些情况下,这些解决方法已被接受,但依然有相当大的改进余地。例如,这些解决方法往往使系统的性能更难确定(例如,这些解决方法往往是“非确定的”)。事实上,基于温度的扼制通常极大地取决于环境条件,而这会降低性能可预测性的程度。例如,在暖和的日子要比在凉爽的日子可能发生更多的扼制。此外,通过工作点间的扼制减少功率会增加使用者经验的不一致性。如果由于系统中多处理器核的存在而增加耗散功率和外部冷却能力之间的差距,就很可能扩大这些缺点。
发明内容
根据本发明的第一方面,提供了一种用于多核架构中的工作点管理的方法,包括:
确定多个处理器核中的活性核数量,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号,所述确定包括监测多个状态信号以确认活性核;
根据活性核数量为至少一个基于至少如下之一来为所述活性核中的至少一个选择最大工作点:
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
根据本发明的第二方面,提供了一种用于多核架构中的工作点管理的装置,包括:
多个处理器核,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号;以及
激活模块,用于
基于多个状态信号来确定所述多个处理器核中的活性核数量,并
根据所述活性核数量为至少一个基于如下至少之一来为所述活性核中的至少一个选择最大工作点
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
根据本发明的第三方面,提供了一种用于多核架构中的工作点管理的系统,包括:
小外形双列直插式存储器模块(SODIMM);以及
与所述SODIMM连接的处理架构,所述架构包括多个处理器核和一个激活模块,所述激活模块用于可
确定所述多个处理器核中的活性核数量,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号,所述确定包括监测多个状态信号以确认活性核,
基于如下至少之一来为所述活性核中的至少一个选择最大工作点:
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
根据本发明的第四方面,提供了一种用于多核架构中的工作点管理的方法,包括:
监测多个处理器核中各个核的高级配置与电源接口(ACPI)的处理器功率状态(Cx状态)信号;
确认各Cx状态信号是否指示对应的核为活性,以确定所述多个处理器核中活性核的数量;
搜索配置表以找到包含所述活性核数量的条目;
从所述条目检索最大工作点;
根据所述最大工作点来产生限制请求;
根据所述限制请求来限制所述活性核的工作参数。
附图说明
[0005]
通过阅读以下的说明和所附的权利要求并参照以下附图,本领域技术人员将明显看到本发明实施例的各个优点。附图包括:
[0006]
图1表示本发明一实施例的处理架构之一例;
[0007]
图2表示本发明一实施例的系统之一例;
[0008];
图3是本发明一实施例的工作点管理方法实例的流程图;
[0009]
图4是本发明一实施例的活性核数量确定程序实例的流程图。
[0010]
图5是本发明一实施例的最大工作点选择程序实例的流程图。
具体实施方式
[0011]
在以下的说明中,为解释清楚,阐述了许多具体细节,以让读者充分理解本发明的实施例。显然,对于本领域技术人员,无需这些具体细节就可实现本发明的各实施例。在其它实例中,没有描述具体装置的结构和方法,以免模糊本发明的实施例。以下的描述和附图将说明本发明的实施例,而不应理解为对本发明实施例的限制。
[0012]
图1所示的是一个处理架构10。该处理架构有多个处理器核12(12a,12b)、一个激活模块14和可供从中选择的多个最大工作点16(16a,16b)。处理器核12可与英特尔公司(位于美国加利福尼亚Santa Clara)现有的奔腾
Figure C20058004423000091
4处理器核类似,其中各核12可以和取指令部件、指令解码器、电平1(L1)高速缓存、执行部件等等(未示出)一起充分起作用。另外,激活模块14可以用诸如互补金属氧化物半导体(CMOS)技术的固定功能性硬件、微码、诸如作为操作系统(OS)一部分的软件或其中的任何组合来实现。在图示说明的例中,激活模块14用硬件实现。
[0013]
在一实例中,各最大工作点16包括最高工作频率和工作电压。可基于对系统可用的冷却办法和/或系统的热量抑制的认识来确定最大工作点16。例如,可以确定,在只有一个核活性的双核架构中,如果活性核被限制在2.0GHz最高工作频率(和/或1.7V核电压),系统能被适当地冷却。然而还可知,如果两个核都为活性,则为了使冷却办法有效,核应被限制于1.5GHz的最高工作频率(和/或1.35V核电压)。图示说明的激活模块14确定多个处理器核12中活性核的数量18,并根据活性核的数量18为活性核选择最大工作点17。最大工作点16可保存在配置表中。
[0014]
例如,为了在双核架构中选择最大工作点,激活模块14可利用如下表1那样的配置表。
  活性核号   最高频率
  1   2.0GH<sub>Z</sub>
  2   1.5GH<sub>Z</sub>
表1
表中,第一最大工作点16a被指定最大工作频率数值2.0GHz,而第二最大工作点16b被指定最大工作频率数值1.5GHz。因此,如果激活模块14确定第一核12a活性,而第二核12b非活性,则活性核的数量就为1,并为第一核12a选择第一最大工作点16a(即最高工作频率2.0GHz)。同样,如果确定第一核12a非活性,而第二核12b活性,则为第二核12b选择第一最大工作点16a(即最高工作频率2.0GHz)。
[0015]
另一方面,如果激活模块14确定第一核12a和第二核12b均为活性,则活性核的数量就为2,并且为第一核12a和第二核12b选择第二最大工作点16b(即最高工作频率1.5GHz)。因此,在上述情况下,图示说明的激活模块14可确定核12a和核12b均为活性,因而将第二最大工作点16b设为选定最大工作点17。为了便于讨论,给出了具体的频率。
[0016]
通过根据活性核数量18来选择最大工作点17,架构10具有许多优于常规技术的优点。例如,可能最大功率与可用冷却能力之间的差距能以一种不直接取决于温度的方式加以缩小。因为对环境温度条件的依赖能最小化,就能产生更可预测的性能。本专利中所描述的方法比常规方法更加具有确定性。此外,根据活性核数量来限制工作点可增加可用冷却办法的效率。
[0017]
还可以根据活性核性能等级19选择最大工作点17,而该活性核性能等级19能由激活模块14确定。尤其是,处理器核12能基于许多因数在不同的性能等级下工作。例如,一种方法包括根据核的使用和/或温度而在高低频率/电压工作点之间转换。无论如何,可确定活性核在较低的性能等级下工作,这可以使其它核在比纯活性/空闲判定下所允许的要高的性能等级下工作。
[0018]
例如,可确定核12a和12b均为活性,而第一核12a在1.0GHz频率下工作。还可确定,在这样的条件下,第二核12b能在高达1.86GHz频率下工作而不超出系统的冷却能力。激活模块14能以活性核性能等级19设定1.0GHz的第一核最大工作点和1.86GHz的第二核最大工作点,而不是将两个核的最大工作点17选择成1.5GHz。因此,选定最大工作点17可具有按核而定的成分。
[0019]
现在转到图2,所示的是一个具有多核处理器22的系统20,图中,该系统20可以是服务器、台式个人计算机(PCs)、笔记本电脑、手提计算装置等的一部分。在示图说明的实例中,处理器22含有一个激活模块14’、多个处理器核12’(12a′-12n′)和一个电压与频率控制器24。
[0020]
图示说明的系统20还包括一个或多个输入/输出(I/O)装置26和各种直接或通过芯片组28与处理器22连接的存储器子系统。在图示说明的实例中,该存储器子系统包括一个随机存取存储器(RAM)30和31,例如快速页面方式(FPM)、纠错码(ECC)、扩充的数据总线(EDO)或同步动态RAM(SDRAM)型储存器,并能合并到单列直插式存储器组件(SIMM)、双列直插式存储器组件(DIMM)、小外形DIMM(SODIMM)等等。例如,SODIMM由于相对于邻近线路板斜排,从而具有减少的封装件高度。因此,如果系统20是热量抑制比较严厉的笔记本电脑的一部分,则将RAM30配置成SODIMM会特别有用。Toshio等人的美国专利(专利申请序号:5,227,664)中较详细地描述了SODIMM。
[0021]
存储器子系统还可以包括一个只读存储器(ROM)32,例如光盘只读存储器(CD-ROM)、磁盘、闪速存储器等等。图示说明的RAM30,31和ROM32包括可由处理器22执行的作为一个或多个线程的指令。ROM32可以是一个基本输入/输出系统(BIOS)的闪速存储器。各RAM30、31和/或ROM32能储存一个可用来选择最大工作点的配置表36。该配置表36可以用软件“随意”地计算或被预存在存储器里,并能与上述所讨论的表1类似。在这方面,激活模块14’可以包括一个在存取配置表36时使用的配置表输入端38。
[0022]
正如已讨论的那样,激活模块14’能确定多个处理器核12′中活性核的数量。通过监测多个处理器核12′中各个核的状态信号40(40a-40n)并确定各状态信号40是否指示对应的核是活性的,就能确定活性。例如,激活模块14’能监测多个处理器核12′中各个核的高级配置与电源接口(即ACPI规范:版本3.0,2004年9月2日;版本2.0c,2003年8月25日;版本2.0,2000年7月27日,等等)的处理器功率状态(″Cx状态″)信号。监测ACPI Cx状态的监测比较不成问题,因而提供了一种确定活性核数量的有用的解决方法。
[0023]
ACPI将工作状态(″GO″)时系统处理器的功率状态确定为活性(执行)或睡眠(不执行),其中,功率状态可被加到各个处理器核12′。特别是,处理器功率状态被指定为C0、C1、C2、C3、...Cn。最浅的功率状态C0是活性功率状态,在该状态下,中央处理器执行指令。C1到Cn功率状态是处理器睡眠状态,在该状态下,处理器比其处于状态C0时消耗更少的功率并发散更少的热量。在睡眠状态时,处理器核不执行任何命令。各处理器睡眠状态有一个与进、出状态相关联的等待时间,它对应于该状态的节电。通常,进、出等待时间越长,在该状态下的节电越大。为了节省电力,一个操作系统电源管理(OSPM)模块(没有示出)将处理器核在空闲时置于一个其支持的睡眠状态中。
[0024]
状态信号40还包括有关性能等级的信息。例如状态信号40可以指示各活性核的性能等级。这样的信号能由ACPI的性能状态(Px状态)信号提供。特别是,在C0状态时,ACPI可通过规定的“扼制”程序并通过转换到多性能状态(Px状态),使处理器核的性能能被改变。在核处于P0状态时,核使用其最大性能能力,并消耗最大功率。在核处于P1状态时,核的性能能力被限制在低于其最大值并小于最大功率。在核处于Pn状态时,核的性能能力处于其最大值并消耗最小功率,但仍然处于活性状态。状态n是最大状态数,它与处理器和器件有关。根据ACPI规范(版本3.0),处理器核或器件可规定对不超过16的任意性能状态数的支持。
[0025]
因此,如果图示说明的激活模块14′监测睡眠状态信号40,就能确定各睡眠状态信号40是否指示对应的核是活性的。然后,激活模块14′搜索配置表36,寻找含有活性核数量的条目。对于性能等级能进行同样的搜索。一发现该条目,激活模块14′就可通过配置表输入端38从该条目检索最大工作点,其中,该最大工作点可使诸如频率或核电压这一类参数受到限制。
[0026]
例如,激活模块14′能根据最大工作点产生一个限制请求(limitrequest)42。正如已指出的那样,限制请求42可以规定最高工作频率和/或最高核电压。因此,在活性核向控制器24提交工作点请求时,控制器24确保没有工作点超过限制请求42中所规定的最大工作点。简而言之,控制器24能根据限制请求42限制活性核的适当的参数。
[0027]
图示说明的系统20包括一个含有单个的封装件/插座、多核处理器22的处理架构,但本发明的实施例并不以此为限。例如,第一子集的多个处理器核12可包含在第一处理器封装件内,而第二子集的多个处理器核12可包含在第二处理器封装件内。任何处理架构(其中涉及的问题是性能可预测性和/或电源管理)确实能从本文所描述的原理中受益。尽管这样,对于单个封装件/插座、多核处理器的许多方面系统20是非常适合的。
[0028]
现在转到附图3所示的管理工作点的方法44。可以用诸如互补金属氧化物半导体(CMOS)技术的固定功能性硬件、微码、诸如作为操作系统(OS)一部分的软件或其中的任何组合来实现。处理步骤46为确定多个处理器核中活性核数量和/或各个活性核的性能等级而设。根据活性核数量和/或活性核性能等级,在步骤48为活性核选择最大工作点。步骤50为基于最大工作点形成限制请求而设,其中,核的工作参数可根据该限制请求来限定。所述限制请求可规定最高工作频率和/或最高工作电压。
[0029]
图4所示的是,在步骤46’确定的活性核数量的较详细的方法。特别是,图示说明的步骤52为监测各多个处理器核中各个核的睡眠状态信号提供保证。如已讨论的那样,睡眠状态信号可为ACPI Cx状态信号。如果步骤52的监测将包括监测性能状态数据、该信号可为ACPI Px状态信号。步骤54为确定各睡眠状态信号是否指示对应的核为活性而设。
[0030]
现在转到图5较详细表示的在步骤48′选择最大工作点的的方法。在所示实例中,根据活性核的数量选择最大工作点。作为另一种方法,也可以根据各活性核的性能等级进行选择。特别是,图示说明的步骤56为搜索配置表以寻找包含活性核数量的条目而设。在一个实施例中,对BIOS配置表进行搜索。在步骤58,从所述条目检索最大工作点。作为另一种方法,也可以计算最大工作点。如果最大工作点是根据活性核性能等级进行选择,这种方法可能特别有用。例如,该计算可包括求核工作频率的平均值(加权或非加权)。因为较大的核由于其可能对全部功耗贡献较大而被给与较大的加权,加权平均在具有非对称核(即同一系统中的大核和小核)的系统中可能特别有用。
[0031]
因此,在本文所描述的实施例能使多核处理架构中功率得以抑制,同时可在架构功率范围的大部分内提供预测的性能吞吐量。通过按照架构中活性核数量动态地调整最高频率和电压工作点,这些解决方法提供一种粗略的机制,能用作一种独立使用的技术或作为传统的基于温度的扼制技术的补充。
[0032]
本领域技术人员由以上描述当知,本发明的实施例的技术能用许多形式实施。虽然本发明实施例与本专利中具体的实例一起描述,但熟练的专业人员一看附图、说明书和后附的权利要求就能明白其它变型,本发明实施例的范围并不受限于文中的描述。

Claims (23)

1.一种用于多核架构中的工作点管理的方法,包括:
确定多个处理器核中的活性核数量,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号,所述确定包括监测多个状态信号以确认活性核;
基于至少如下之一来为所述活性核中的至少一个选择最大工作点:
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
2.权利要求1所述的方法,其中,监测状态信号包括:
监测多个处理器核中各个核的睡眠状态信号;
确认各睡眠状态信号是否指示对应的核为活性。
3.权利要求2所述的方法,其中,所述监测包括:监测高级配置与电源接口(ACPI)的处理器功率状态(Cx状态)信号。
4.权利要求1所述的方法,其中,所述选择包括:
搜索配置表以找到含有所述活性核数量的条目;以及
从所述条目检索所述最大工作点。
5.权利要求4所述的方法,其中,所述搜索包括:搜索基本输入/输出系统(BIOS)的配置表。
6.权利要求1所述的方法,还包括:根据所述限制请求来限制所述活性核的工作参数。
7.权利要求1所述的方法,还包括:确定各所述活性核的性能等级,还根据所述性能等级进行所述选择。
8.权利要求7所述的方法,其中,确定各性能等级包括:监测对应核的高级配置与电源接口(ACPI)的性能状态(Px状态)信号。
9.一种用于多核架构中的工作点管理的装置,包括:
多个处理器核,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号;以及
激活模块,用于
基于多个状态信号来确定所述多个处理器核中的活性核数量,
基于如下至少之一来为所述活性核中的至少一个选择最大工作点
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
10.权利要求9所述的装置,其中,各状态信号包括所述多个处理器核中各个核的睡眠状态信号,所述激活模块确认各睡眠状态信号是否指示对应的核为活性。
11.权利要求10所述的装置,其中,所述激活模块可监测高级配置与电源接口(ACPI)的处理器功率状态(Cx状态)信号。
12.权利要求9所述的装置,其中,所述激活模块可搜索配置表以找到包含所述活性核数量的条目,并从所述条目检索所述最大工作点。
13.权利要求12所述的装置,其中,所述激活模块可搜索基本输入/输出系统(BIOS)的配置表来找到所述条目。
14.权利要求9所述的装置,还包括可根据所述限制请求来限制所述活性核的工作参数的控制器。
15.权利要求9所述的装置,还包括含有所述多个处理器核的处理器封装件。
16.权利要求9所述的装置,还包括:
含有第一子集的所述多个处理器核的第一处理器封装件;
含有第二子集的所述多个处理器核的第二处理器封装件。
17.一种用于多核架构中的工作点管理的系统,包括:
小外形双列直插式存储器模块(SODIMM);以及
与所述SODIMM连接的处理架构,所述架构包括多个处理器核和一个激活模块,所述激活模块用于
确定所述多个处理器核中的活性核数量,其中所述多个处理器核中的每个都相关于指示核活动的相应状态信号,所述确定包括监测多个状态信号以确认活性核,
基于如下至少之一来为所述活性核中的至少一个选择最大工作点:
所述活性核的性能等级;和
存储在配置表中的最大工作点的相关信息;并且
产生限制请求,所述限制请求指示最大工作频率或最大核电压。
18.权利要求17所述的系统,其中,多个状态信号中的每个都包括所述多个处理器核中各个核的睡眠状态信号,所述激活模块确认各睡眠状态信号是否指示对应的核为活性。
19.权利要求17所述的系统,还包括存放配置表的存储器,所述激活模块搜索所述配置表以找到包含所述活性核数量的条目,并从所述条目检索所述最大工作点。
20.权利要求17所述的系统,还包括控制器根据所述限制请求来限制所述活性核的工作参数。
21.一种用于多核架构中的工作点管理的方法,包括:
监测多个处理器核中各个核的高级配置与电源接口(ACPI)的处理器功率状态(Cx状态)信号;
确认各Cx状态信号是否指示对应的核为活性,以确定所述多个处理器核中活性核的数量;
搜索配置表以找到包含所述活性核数量的条目;
从所述条目检索最大工作点;
根据所述最大工作点来产生限制请求;
根据所述限制请求来限制所述活性核的工作参数。
22.权利要求21所述的方法,其中,所述产生包括:产生规定最高工作频率的限制请求。
23.权利要求22所述的方法,其中,产生所述限制请求还包括:产生规定最高核电压的限制请求。
CNB2005800442307A 2004-12-30 2005-12-20 多核架构中的工作点管理系统和方法 Active CN100549908C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/026,705 US7502948B2 (en) 2004-12-30 2004-12-30 Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US11/026,705 2004-12-30

Publications (2)

Publication Number Publication Date
CN101111814A CN101111814A (zh) 2008-01-23
CN100549908C true CN100549908C (zh) 2009-10-14

Family

ID=36099392

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005800442307A Active CN100549908C (zh) 2004-12-30 2005-12-20 多核架构中的工作点管理系统和方法

Country Status (5)

Country Link
US (7) US7502948B2 (zh)
CN (1) CN100549908C (zh)
DE (1) DE112005003136B4 (zh)
TW (1) TWI310129B (zh)
WO (1) WO2006073899A2 (zh)

Families Citing this family (201)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895520B1 (en) 2001-03-02 2005-05-17 Advanced Micro Devices, Inc. Performance and power optimization via block oriented performance measurement and control
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
GB0519981D0 (en) * 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
US8799687B2 (en) 2005-12-30 2014-08-05 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including optimizing C-state selection under variable wakeup rates
US7650518B2 (en) * 2006-06-28 2010-01-19 Intel Corporation Method, apparatus, and system for increasing single core performance in a multi-core microprocessor
KR101285665B1 (ko) 2006-11-27 2013-07-11 엘지전자 주식회사 수면 모드를 지원하는 멀티 코어 시스템 온 칩
US7793125B2 (en) * 2007-01-10 2010-09-07 International Business Machines Corporation Method and apparatus for power throttling a processor in an information handling system
US7900069B2 (en) * 2007-03-29 2011-03-01 Intel Corporation Dynamic power reduction
US8949635B2 (en) * 2007-09-28 2015-02-03 Intel Corporation Integrated circuit performance improvement across a range of operating conditions and physical constraints
US8032772B2 (en) * 2007-11-15 2011-10-04 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multi-die microprocessor
US8024590B2 (en) * 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US8086885B2 (en) * 2007-12-14 2011-12-27 Nokia Corporation Runtime control of system performance
US8010822B2 (en) 2008-03-28 2011-08-30 Microsoft Corporation Power-aware thread scheduling and dynamic use of processors
US8281160B1 (en) * 2008-04-17 2012-10-02 Marvell International Ltd. Method and system for selecting an operating frequency for a chip to provide a desired overall power dissipation value for the chip
US8732488B1 (en) 2008-04-17 2014-05-20 Marvell International Ltd. Millions of instruction per second (MIPS) based idle profiler in a power management framework
US7757233B2 (en) * 2008-07-10 2010-07-13 International Business Machines Corporation Controlling a computer system having a processor including a plurality of cores
US8386807B2 (en) * 2008-09-30 2013-02-26 Intel Corporation Power management for processing unit
US8402290B2 (en) * 2008-10-31 2013-03-19 Intel Corporation Power management for multiple processor cores
US8064197B2 (en) * 2009-05-22 2011-11-22 Advanced Micro Devices, Inc. Heat management using power management information
US9298583B2 (en) * 2009-06-04 2016-03-29 International Business Machines Corporation Network traffic based power consumption estimation of information technology systems
US9594599B1 (en) * 2009-10-14 2017-03-14 Nvidia Corporation Method and system for distributing work batches to processing units based on a number of enabled streaming multiprocessors
US9098274B2 (en) 2009-12-03 2015-08-04 Intel Corporation Methods and apparatuses to improve turbo performance for events handling
US20110138395A1 (en) * 2009-12-08 2011-06-09 Empire Technology Development Llc Thermal management in multi-core processor
US20110145559A1 (en) * 2009-12-16 2011-06-16 Thomson Steven S System and method for controlling central processing unit power with guaranteed steady state deadlines
US9563250B2 (en) * 2009-12-16 2017-02-07 Qualcomm Incorporated System and method for controlling central processing unit power based on inferred workload parallelism
US8775830B2 (en) 2009-12-16 2014-07-08 Qualcomm Incorporated System and method for dynamically controlling a plurality of cores in a multicore central processing unit based on temperature
US8650426B2 (en) * 2009-12-16 2014-02-11 Qualcomm Incorporated System and method for controlling central processing unit power in a virtualized system
US9176572B2 (en) 2009-12-16 2015-11-03 Qualcomm Incorporated System and method for controlling central processing unit power with guaranteed transient deadlines
US8689037B2 (en) * 2009-12-16 2014-04-01 Qualcomm Incorporated System and method for asynchronously and independently controlling core clocks in a multicore central processing unit
US8909962B2 (en) * 2009-12-16 2014-12-09 Qualcomm Incorporated System and method for controlling central processing unit power with guaranteed transient deadlines
US9128705B2 (en) * 2009-12-16 2015-09-08 Qualcomm Incorporated System and method for controlling central processing unit power with reduced frequency oscillations
US9104411B2 (en) 2009-12-16 2015-08-11 Qualcomm Incorporated System and method for controlling central processing unit power with guaranteed transient deadlines
US8442786B2 (en) 2010-06-02 2013-05-14 Advanced Micro Devices, Inc. Flexible power reporting in a computing system
US8510582B2 (en) * 2010-07-21 2013-08-13 Advanced Micro Devices, Inc. Managing current and power in a computing system
US9600059B2 (en) * 2010-09-20 2017-03-21 Apple Inc. Facilitating power management in a multi-core processor
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8843775B2 (en) * 2010-10-08 2014-09-23 Intel Corporation Energy optimization techniques in a computing system
US8793512B2 (en) * 2010-10-29 2014-07-29 Advanced Micro Devices, Inc. Method and apparatus for thermal control of processing nodes
US9261949B2 (en) 2010-10-29 2016-02-16 Advanced Micro Devices, Inc. Method for adaptive performance optimization of the soc
WO2012069881A1 (en) * 2010-11-25 2012-05-31 Freescale Semiconductor, Inc. Method and apparatus for managing power in a multi-core processor
US8612781B2 (en) * 2010-12-14 2013-12-17 Advanced Micro Devices, Inc. Method and apparatus for application of power density multipliers optimally in a multicore system
US8972746B2 (en) * 2010-12-17 2015-03-03 Intel Corporation Technique for supporting multiple secure enclaves
US20120159123A1 (en) * 2010-12-17 2012-06-21 Advanced Micro Devices, Inc. Cstate boost method and apparatus
US8637212B2 (en) 2010-12-22 2014-01-28 Via Technologies, Inc. Reticle set modification to produce multi-core dies
US8930676B2 (en) * 2010-12-22 2015-01-06 Via Technologies, Inc. Master core discovering enabled cores in microprocessor comprising plural multi-core dies
US9460038B2 (en) 2010-12-22 2016-10-04 Via Technologies, Inc. Multi-core microprocessor internal bypass bus
US8631256B2 (en) 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
US8782451B2 (en) 2010-12-22 2014-07-15 Via Technologies, Inc. Power state synchronization in a multi-core processor
US8972707B2 (en) 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
US9069555B2 (en) 2011-03-21 2015-06-30 Intel Corporation Managing power consumption in a multi-core processor
US8949637B2 (en) * 2011-03-24 2015-02-03 Intel Corporation Obtaining power profile information with low overhead
CN102841808B (zh) * 2011-06-21 2017-12-08 技嘉科技股份有限公司 电脑系统的效能提升方法及其电脑系统
US8793515B2 (en) 2011-06-27 2014-07-29 Intel Corporation Increasing power efficiency of turbo mode operation in a processor
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US8688883B2 (en) 2011-09-08 2014-04-01 Intel Corporation Increasing turbo mode residency of a processor
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US8914650B2 (en) 2011-09-28 2014-12-16 Intel Corporation Dynamically adjusting power of non-core processor circuitry including buffer circuitry
US8832478B2 (en) 2011-10-27 2014-09-09 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US8904209B2 (en) * 2011-11-14 2014-12-02 Microsoft Corporation Estimating and managing power consumption of computing devices using power models
US8862909B2 (en) 2011-12-02 2014-10-14 Advanced Micro Devices, Inc. System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller
US8972763B2 (en) 2011-12-05 2015-03-03 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state
US9239611B2 (en) 2011-12-05 2016-01-19 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including balancing power among multi-frequency domains of a processor based on efficiency rating scheme
US8924758B2 (en) 2011-12-13 2014-12-30 Advanced Micro Devices, Inc. Method for SOC performance and power optimization
US9052901B2 (en) 2011-12-14 2015-06-09 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including configurable maximum processor current
US9098261B2 (en) 2011-12-15 2015-08-04 Intel Corporation User level control of power management policies
US8799694B2 (en) * 2011-12-15 2014-08-05 International Business Machines Corporation Adaptive recovery for parallel reactive power throttling
US9372524B2 (en) 2011-12-15 2016-06-21 Intel Corporation Dynamically modifying a power/performance tradeoff based on processor utilization
US9137848B2 (en) * 2012-01-31 2015-09-15 Lg Electronics Inc. Mobile terminal, controlling method thereof and recording medium thereof
WO2013137859A1 (en) 2012-03-13 2013-09-19 Intel Corporation Providing energy efficient turbo operation of a processor
US9436245B2 (en) * 2012-03-13 2016-09-06 Intel Corporation Dynamically computing an electrical design point (EDP) for a multicore processor
US9323316B2 (en) 2012-03-13 2016-04-26 Intel Corporation Dynamically controlling interconnect frequency in a processor
WO2013147865A1 (en) * 2012-03-30 2013-10-03 Intel Corporation A mechanism for saving and retrieving micro-architecture context
CN104204825B (zh) 2012-03-30 2017-06-27 英特尔公司 动态测量处理器中的功耗
WO2013162589A1 (en) 2012-04-27 2013-10-31 Intel Corporation Migrating tasks between asymmetric computing elements of a multi-core processor
CN102789301A (zh) * 2012-05-17 2012-11-21 江苏中科梦兰电子科技有限公司 一种计算机的电源管理方法
US9218045B2 (en) * 2012-06-30 2015-12-22 Intel Corporation Operating processor element based on maximum sustainable dynamic capacitance associated with the processor
DE102012213063A1 (de) * 2012-07-25 2014-01-30 Siemens Aktiengesellschaft Steuervorrichtung für eine Prozess- und/oder Fertigungsanlage
US9063727B2 (en) 2012-08-31 2015-06-23 Intel Corporation Performing cross-domain thermal control in a processor
US8984313B2 (en) 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US9342122B2 (en) 2012-09-17 2016-05-17 Intel Corporation Distributing power to heterogeneous compute elements of a processor
US9423858B2 (en) 2012-09-27 2016-08-23 Intel Corporation Sharing power between domains in a processor package using encoded power consumption information from a second domain to calculate an available power budget for a first domain
US9037889B2 (en) * 2012-09-28 2015-05-19 Intel Corporation Apparatus and method for determining the number of execution cores to keep active in a processor
US9164931B2 (en) 2012-09-29 2015-10-20 Intel Corporation Clamping of dynamic capacitance for graphics
US9946319B2 (en) * 2012-11-20 2018-04-17 Advanced Micro Devices, Inc. Setting power-state limits based on performance coupling and thermal coupling between entities in a computing device
US9575543B2 (en) 2012-11-27 2017-02-21 Intel Corporation Providing an inter-arrival access timer in a processor
US9183144B2 (en) 2012-12-14 2015-11-10 Intel Corporation Power gating a portion of a cache memory
US9292468B2 (en) 2012-12-17 2016-03-22 Intel Corporation Performing frequency coordination in a multiprocessor system based on response timing optimization
KR102005765B1 (ko) 2012-12-17 2019-07-31 삼성전자주식회사 시스템-온 칩과, 이의 동작 방법
US9405351B2 (en) * 2012-12-17 2016-08-02 Intel Corporation Performing frequency coordination in a multiprocessor system
US9235252B2 (en) 2012-12-21 2016-01-12 Intel Corporation Dynamic balancing of power across a plurality of processor domains according to power policy control bias
US9075556B2 (en) * 2012-12-21 2015-07-07 Intel Corporation Controlling configurable peak performance limits of a processor
US9081577B2 (en) 2012-12-28 2015-07-14 Intel Corporation Independent control of processor core retention states
US9164565B2 (en) 2012-12-28 2015-10-20 Intel Corporation Apparatus and method to manage energy usage of a processor
US9335803B2 (en) * 2013-02-15 2016-05-10 Intel Corporation Calculating a dynamically changeable maximum operating voltage value for a processor based on a different polynomial equation using a set of coefficient values and a number of current active cores
US9367114B2 (en) 2013-03-11 2016-06-14 Intel Corporation Controlling operating voltage of a processor
US9395784B2 (en) 2013-04-25 2016-07-19 Intel Corporation Independently controlling frequency of plurality of power domains in a processor system
US9377841B2 (en) 2013-05-08 2016-06-28 Intel Corporation Adaptively limiting a maximum operating frequency in a multicore processor
US9823719B2 (en) 2013-05-31 2017-11-21 Intel Corporation Controlling power delivery to a processor via a bypass
US9304573B2 (en) * 2013-06-21 2016-04-05 Apple Inc. Dynamic voltage and frequency management based on active processors
US9195291B2 (en) 2013-06-21 2015-11-24 Apple Inc. Digital power estimator to control processor power consumption
US9348401B2 (en) 2013-06-25 2016-05-24 Intel Corporation Mapping a performance request to an operating frequency in a processor
US9471088B2 (en) 2013-06-25 2016-10-18 Intel Corporation Restricting clock signal delivery in a processor
US9348407B2 (en) 2013-06-27 2016-05-24 Intel Corporation Method and apparatus for atomic frequency and voltage changes
US9354681B2 (en) * 2013-06-28 2016-05-31 Intel Corporation Protected power management mode in a processor
US9377836B2 (en) 2013-07-26 2016-06-28 Intel Corporation Restricting clock signal delivery based on activity in a processor
US9495001B2 (en) 2013-08-21 2016-11-15 Intel Corporation Forcing core low power states in a processor
US9292064B2 (en) * 2013-09-18 2016-03-22 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Changing output power to be within a range based on a power use efficiency peak
US10386900B2 (en) 2013-09-24 2019-08-20 Intel Corporation Thread aware power management
US9250910B2 (en) 2013-09-27 2016-02-02 Intel Corporation Current change mitigation policy for limiting voltage droop in graphics logic
US9594560B2 (en) 2013-09-27 2017-03-14 Intel Corporation Estimating scalability value for a specific domain of a multicore processor based on active state residency of the domain, stall duration of the domain, memory bandwidth of the domain, and a plurality of coefficients based on a workload to execute on the domain
US9405345B2 (en) 2013-09-27 2016-08-02 Intel Corporation Constraining processor operation based on power envelope information
US9494998B2 (en) 2013-12-17 2016-11-15 Intel Corporation Rescheduling workloads to enforce and maintain a duty cycle
US9459689B2 (en) 2013-12-23 2016-10-04 Intel Corporation Dyanamically adapting a voltage of a clock generation circuit
US9514715B2 (en) 2013-12-23 2016-12-06 Intel Corporation Graphics voltage reduction for load line optimization
US9436786B1 (en) 2014-02-12 2016-09-06 Xilinx, Inc. Method and circuits for superclocking
US9323525B2 (en) 2014-02-26 2016-04-26 Intel Corporation Monitoring vector lane duty cycle for dynamic optimization
US9606605B2 (en) 2014-03-07 2017-03-28 Apple Inc. Dynamic voltage margin recovery
US10108454B2 (en) 2014-03-21 2018-10-23 Intel Corporation Managing dynamic capacitance using code scheduling
US9665153B2 (en) 2014-03-21 2017-05-30 Intel Corporation Selecting a low power state based on cache flush latency determination
US9395788B2 (en) 2014-03-28 2016-07-19 Intel Corporation Power state transition analysis
US9671767B2 (en) 2014-05-14 2017-06-06 Advanced Micro Devices, Inc. Hybrid system and method for determining performance levels based on thermal conditions within a processor
US9652019B2 (en) 2014-06-02 2017-05-16 Advanced Micro Devices, Inc. System and method for adjusting processor performance based on platform and ambient thermal conditions
US10417149B2 (en) 2014-06-06 2019-09-17 Intel Corporation Self-aligning a processor duty cycle with interrupts
US9760158B2 (en) 2014-06-06 2017-09-12 Intel Corporation Forcing a processor into a low power state
US9513689B2 (en) 2014-06-30 2016-12-06 Intel Corporation Controlling processor performance scaling based on context
US9606602B2 (en) 2014-06-30 2017-03-28 Intel Corporation Method and apparatus to prevent voltage droop in a computer
US9575537B2 (en) 2014-07-25 2017-02-21 Intel Corporation Adaptive algorithm for thermal throttling of multi-core processors with non-homogeneous performance states
US9760136B2 (en) 2014-08-15 2017-09-12 Intel Corporation Controlling temperature of a system memory
US9665161B2 (en) * 2014-08-27 2017-05-30 Mediatek Inc. Method and computer-readable medium for dynamically managing power of multi-core processor
US9619289B2 (en) 2014-09-11 2017-04-11 Dell Products, L.P. Workload optimized server for intelligent algorithm trading platforms
US9671853B2 (en) 2014-09-12 2017-06-06 Intel Corporation Processor operating by selecting smaller of requested frequency and an energy performance gain (EPG) frequency
US20160327999A1 (en) * 2014-09-17 2016-11-10 Mediatek Inc. Dynamic frequency scaling in multi-processor systems
US10339023B2 (en) 2014-09-25 2019-07-02 Intel Corporation Cache-aware adaptive thread scheduling and migration
US9977477B2 (en) 2014-09-26 2018-05-22 Intel Corporation Adapting operating parameters of an input/output (IO) interface circuit of a processor
US10928882B2 (en) * 2014-10-16 2021-02-23 Futurewei Technologies, Inc. Low cost, low power high performance SMP/ASMP multiple-processor system
US10248180B2 (en) 2014-10-16 2019-04-02 Futurewei Technologies, Inc. Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system
US9684360B2 (en) 2014-10-30 2017-06-20 Intel Corporation Dynamically controlling power management of an on-die memory of a processor
US9703358B2 (en) 2014-11-24 2017-07-11 Intel Corporation Controlling turbo mode frequency operation in a processor
US9710043B2 (en) 2014-11-26 2017-07-18 Intel Corporation Controlling a guaranteed frequency of a processor
US20160147280A1 (en) 2014-11-26 2016-05-26 Tessil Thomas Controlling average power limits of a processor
US10048744B2 (en) 2014-11-26 2018-08-14 Intel Corporation Apparatus and method for thermal management in a multi-chip package
US10877530B2 (en) 2014-12-23 2020-12-29 Intel Corporation Apparatus and method to provide a thermal parameter report for a multi-chip package
US20160224098A1 (en) 2015-01-30 2016-08-04 Alexander Gendler Communicating via a mailbox interface of a processor
US9639134B2 (en) 2015-02-05 2017-05-02 Intel Corporation Method and apparatus to provide telemetry data to a power controller of a processor
US10234930B2 (en) 2015-02-13 2019-03-19 Intel Corporation Performing power management in a multicore processor
US9910481B2 (en) 2015-02-13 2018-03-06 Intel Corporation Performing power management in a multicore processor
US9874922B2 (en) 2015-02-17 2018-01-23 Intel Corporation Performing dynamic power control of platform devices
US9842082B2 (en) 2015-02-27 2017-12-12 Intel Corporation Dynamically updating logical identifiers of cores of a processor
US9710054B2 (en) 2015-02-28 2017-07-18 Intel Corporation Programmable power management agent
US9625984B2 (en) * 2015-03-27 2017-04-18 Intel Corporation Technologies for managing power during an activation cycle
US10031574B2 (en) * 2015-05-20 2018-07-24 Mediatek Inc. Apparatus and method for controlling multi-core processor of computing system
US9760160B2 (en) 2015-05-27 2017-09-12 Intel Corporation Controlling performance states of processing engines of a processor
CN105068871B (zh) * 2015-07-28 2018-12-21 深圳市万普拉斯科技有限公司 运算资源的控制方法和装置
US9710041B2 (en) 2015-07-29 2017-07-18 Intel Corporation Masking a power state of a core of a processor
US9990024B2 (en) * 2015-09-09 2018-06-05 Qualcomm Incorporated Circuits and methods providing voltage adjustment as processor cores become active based on an observed number of ring oscillator clock ticks
US10001822B2 (en) 2015-09-22 2018-06-19 Intel Corporation Integrating a power arbiter in a processor
US9983644B2 (en) 2015-11-10 2018-05-29 Intel Corporation Dynamically updating at least one power management operational parameter pertaining to a turbo mode of a processor for increased performance
US9910470B2 (en) 2015-12-16 2018-03-06 Intel Corporation Controlling telemetry data communication in a processor
US10146286B2 (en) 2016-01-14 2018-12-04 Intel Corporation Dynamically updating a power management policy of a processor
US10296067B2 (en) * 2016-04-08 2019-05-21 Qualcomm Incorporated Enhanced dynamic clock and voltage scaling (DCVS) scheme
US9848515B1 (en) 2016-05-27 2017-12-19 Advanced Micro Devices, Inc. Multi-compartment computing device with shared cooling device
US10359833B2 (en) 2016-06-20 2019-07-23 Qualcomm Incorporated Active-core-based performance boost
US10289188B2 (en) 2016-06-21 2019-05-14 Intel Corporation Processor having concurrent core and fabric exit from a low power state
US10324519B2 (en) 2016-06-23 2019-06-18 Intel Corporation Controlling forced idle state operation in a processor
US10281975B2 (en) 2016-06-23 2019-05-07 Intel Corporation Processor having accelerated user responsiveness in constrained environment
US10379596B2 (en) 2016-08-03 2019-08-13 Intel Corporation Providing an interface for demotion control information in a processor
US10234920B2 (en) 2016-08-31 2019-03-19 Intel Corporation Controlling current consumption of a processor based at least in part on platform capacitance
US10379904B2 (en) 2016-08-31 2019-08-13 Intel Corporation Controlling a performance state of a processor using a combination of package and thread hint information
US10423206B2 (en) * 2016-08-31 2019-09-24 Intel Corporation Processor to pre-empt voltage ramps for exit latency reductions
US10168758B2 (en) 2016-09-29 2019-01-01 Intel Corporation Techniques to enable communication between a processor and voltage regulator
US10064141B2 (en) * 2016-12-09 2018-08-28 Qualcomm Incorporated Core frequency/count decision-based thermal mitigation optimization for a multi-core integrated circuit
JP2018106591A (ja) * 2016-12-28 2018-07-05 ルネサスエレクトロニクス株式会社 半導体装置、動作制御方法、及びプログラム
US11054883B2 (en) 2017-06-19 2021-07-06 Advanced Micro Devices, Inc. Power efficiency optimization in throughput-based workloads
US11144085B2 (en) * 2017-06-23 2021-10-12 Intel Corporation Dynamic maximum frequency limit for processing core groups
US10429919B2 (en) 2017-06-28 2019-10-01 Intel Corporation System, apparatus and method for loose lock-step redundancy power management
US10571998B2 (en) * 2017-08-09 2020-02-25 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Systems and methods for operating computing devices at peak power efficiency in real time
WO2019040054A1 (en) 2017-08-23 2019-02-28 Intel Corporation SYSTEM, APPARATUS, AND METHOD FOR ADAPTIVE OPERATING VOLTAGE IN A USER-PROGRAMMED (FPGA) PREDIFFUSED NETWORK
US10565079B2 (en) 2017-09-28 2020-02-18 Intel Corporation Determination of idle power state
US10620266B2 (en) 2017-11-29 2020-04-14 Intel Corporation System, apparatus and method for in-field self testing in a diagnostic sleep state
US10620682B2 (en) 2017-12-21 2020-04-14 Intel Corporation System, apparatus and method for processor-external override of hardware performance state control of a processor
US10909738B2 (en) 2018-01-05 2021-02-02 Nvidia Corporation Real-time hardware-assisted GPU tuning using machine learning
US11500439B2 (en) * 2018-03-02 2022-11-15 Samsung Electronics Co., Ltd. Method and apparatus for performing power analytics of a storage system
US10620969B2 (en) 2018-03-27 2020-04-14 Intel Corporation System, apparatus and method for providing hardware feedback information in a processor
US10739844B2 (en) 2018-05-02 2020-08-11 Intel Corporation System, apparatus and method for optimized throttling of a processor
US10955899B2 (en) 2018-06-20 2021-03-23 Intel Corporation System, apparatus and method for responsive autonomous hardware performance state control of a processor
US10976801B2 (en) 2018-09-20 2021-04-13 Intel Corporation System, apparatus and method for power budget distribution for a plurality of virtual machines to execute on a processor
US10860083B2 (en) 2018-09-26 2020-12-08 Intel Corporation System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail
US11656676B2 (en) 2018-12-12 2023-05-23 Intel Corporation System, apparatus and method for dynamic thermal distribution of a system on chip
US11256657B2 (en) 2019-03-26 2022-02-22 Intel Corporation System, apparatus and method for adaptive interconnect routing
US11442529B2 (en) 2019-05-15 2022-09-13 Intel Corporation System, apparatus and method for dynamically controlling current consumption of processing circuits of a processor
US11157329B2 (en) 2019-07-26 2021-10-26 Intel Corporation Technology for managing per-core performance states
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
US10948957B1 (en) 2019-09-26 2021-03-16 Apple Inc. Adaptive on-chip digital power estimator
US11366506B2 (en) 2019-11-22 2022-06-21 Intel Corporation System, apparatus and method for globally aware reactive local power control in a processor
US11132201B2 (en) 2019-12-23 2021-09-28 Intel Corporation System, apparatus and method for dynamic pipeline stage control of data path dominant circuitry of an integrated circuit
US11921564B2 (en) 2022-02-28 2024-03-05 Intel Corporation Saving and restoring configuration and status information with reduced latency
US20230315191A1 (en) * 2022-03-30 2023-10-05 Advanced Micro Devices, Inc. Core Activation and Deactivation for a Multi-Core Processor

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396635A (en) 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5530932A (en) 1994-12-23 1996-06-25 Intel Corporation Cache coherent multiprocessing computer system with reduced power operating features
JP3466793B2 (ja) 1995-09-28 2003-11-17 株式会社東芝 マルチプロセッサシステム
US5790817A (en) 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US5862368A (en) * 1996-12-11 1999-01-19 Dell Usa, L.P. Process to allow automatic microprocessor clock frequency detection and selection
US5832284A (en) * 1996-12-23 1998-11-03 International Business Machines Corporation Self regulating temperature/performance/voltage scheme for micros (X86)
US6308279B1 (en) 1998-05-22 2001-10-23 Intel Corporation Method and apparatus for power mode transition in a multi-thread processor
US6141762A (en) 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
GB9821671D0 (en) * 1998-10-05 1998-12-02 Muhlbauer Roman C Plant extracts for the treatment of increased bone resorption
US6535798B1 (en) * 1998-12-03 2003-03-18 Intel Corporation Thermal management in a system
US6317840B1 (en) 1999-03-24 2001-11-13 International Business Machines Corporation Control of multiple equivalent functional units for power reduction
US6631474B1 (en) 1999-12-31 2003-10-07 Intel Corporation System to coordinate switching between first and second processors and to coordinate cache coherency between first and second processors during switching
US6766460B1 (en) * 2000-08-23 2004-07-20 Koninklijke Philips Electronics N.V. System and method for power management in a Java accelerator environment
US6988211B2 (en) * 2000-12-29 2006-01-17 Intel Corporation System and method for selecting a frequency and voltage combination from a table using a selection field and a read-only limit field
US6829713B2 (en) 2000-12-30 2004-12-07 Intel Corporation CPU power management based on utilization with lowest performance mode at the mid-utilization range
JP2002215599A (ja) 2001-01-18 2002-08-02 Mitsubishi Electric Corp マルチプロセッサシステムおよびその制御方法
US6990598B2 (en) 2001-03-21 2006-01-24 Gallitzin Allegheny Llc Low power reconfigurable systems and methods
US6836849B2 (en) * 2001-04-05 2004-12-28 International Business Machines Corporation Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements
US6678811B2 (en) * 2001-04-07 2004-01-13 Hewlett-Packard Development Company, L.P. Memory controller with 1X/MX write capability
US6845456B1 (en) * 2001-05-01 2005-01-18 Advanced Micro Devices, Inc. CPU utilization measurement techniques for use in power management
US7111178B2 (en) * 2001-09-28 2006-09-19 Intel Corporation Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system
US6804632B2 (en) 2001-12-06 2004-10-12 Intel Corporation Distribution of processing activity across processing hardware based on power consumption considerations
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
US7089430B2 (en) * 2001-12-21 2006-08-08 Intel Corporation Managing multiple processor performance states
US6996728B2 (en) * 2002-04-26 2006-02-07 Hewlett-Packard Development Company, L.P. Managing power consumption based on utilization statistics
US7222245B2 (en) * 2002-04-26 2007-05-22 Hewlett-Packard Development Company, L.P. Managing system power based on utilization statistics
US7254812B1 (en) * 2002-05-31 2007-08-07 Advanced Micro Devices, Inc. Multi-processor task scheduling
US7155617B2 (en) * 2002-08-01 2006-12-26 Texas Instruments Incorporated Methods and systems for performing dynamic power management via frequency and voltage scaling
DE20212071U1 (de) 2002-08-06 2002-11-07 Clevo Co Notebookcomputer mit Temperaturregelfunktion
US7080263B2 (en) * 2002-08-12 2006-07-18 Hewlett-Packard Development Company, L.P. Voltage management of processors in a bladed system based on number of loaded processors
US6908227B2 (en) 2002-08-23 2005-06-21 Intel Corporation Apparatus for thermal management of multiple core microprocessors
US7313706B2 (en) * 2002-09-17 2007-12-25 Hewlett-Packard Development Company, L.P. System and method for managing power consumption for a plurality of processors based on a supply voltage to each processor, temperature, total power consumption and individual processor power consumption
US7043649B2 (en) * 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules
US7028196B2 (en) * 2002-12-13 2006-04-11 Hewlett-Packard Development Company, L.P. System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
US7069189B2 (en) * 2002-12-31 2006-06-27 Intel Corporation Method and apparatus for controlling multiple resources using thermal related parameters
US6711447B1 (en) * 2003-01-22 2004-03-23 Intel Corporation Modulating CPU frequency and voltage in a multi-core CPU architecture
US7337334B2 (en) * 2003-02-14 2008-02-26 International Business Machines Corporation Network processor power management
US7093147B2 (en) 2003-04-25 2006-08-15 Hewlett-Packard Development Company, L.P. Dynamically selecting processor cores for overall power efficiency
US7392411B2 (en) 2003-04-25 2008-06-24 Ati Technologies, Inc. Systems and methods for dynamic voltage scaling of communication bus to provide bandwidth based on whether an application is active
US20050046400A1 (en) 2003-05-21 2005-03-03 Efraim Rotem Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components
US7146514B2 (en) * 2003-07-23 2006-12-05 Intel Corporation Determining target operating frequencies for a multiprocessor system
US7134031B2 (en) * 2003-08-04 2006-11-07 Arm Limited Performance control within a multi-processor system
US8037445B2 (en) 2003-08-20 2011-10-11 Hewlett-Packard Development Company, L.P. System for and method of controlling a VLSI environment
US7290155B2 (en) 2003-10-28 2007-10-30 Intel Corporation Method, system, and apparatus for dynamically configuring the operating point utilized for thermal management of an integrated circuit
US7770034B2 (en) * 2003-12-16 2010-08-03 Intel Corporation Performance monitoring based dynamic voltage and frequency scaling
US20050132239A1 (en) * 2003-12-16 2005-06-16 Athas William C. Almost-symmetric multiprocessor that supports high-performance and energy-efficient execution
US7167992B2 (en) * 2003-12-18 2007-01-23 Lenovo Singapore Pte, Ltd. Method for controlling the switching of operating modes of an information processor according to the time of switching of the operating modes
EP1555595A3 (en) * 2004-01-13 2011-11-23 LG Electronics, Inc. Apparatus for controlling power of processor having a plurality of cores and control method of the same
US7062933B2 (en) * 2004-03-24 2006-06-20 Intel Corporation Separate thermal and electrical throttling limits in processors
US7360103B2 (en) * 2004-05-21 2008-04-15 Intel Corporation P-state feedback to operating system with hardware coordination
JP3805344B2 (ja) 2004-06-22 2006-08-02 株式会社ソニー・コンピュータエンタテインメント プロセッサ、情報処理装置およびプロセッサの制御方法
US7249268B2 (en) * 2004-06-29 2007-07-24 Intel Corporation Method for performing performance optimization operations for a processor having a plurality of processor cores in response to a stall condition
US7330988B2 (en) 2004-06-30 2008-02-12 Sun Microsystems, Inc. Method and apparatus for power throttling in a multi-thread processor
US8190863B2 (en) 2004-07-02 2012-05-29 Intel Corporation Apparatus and method for heterogeneous chip multiprocessors via resource allocation and restriction
US7966511B2 (en) * 2004-07-27 2011-06-21 Intel Corporation Power management coordination in multi-core processors
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
US7363523B2 (en) 2004-08-31 2008-04-22 Intel Corporation Method and apparatus for controlling power management state transitions
US7711966B2 (en) * 2004-08-31 2010-05-04 Qualcomm Incorporated Dynamic clock frequency adjustment based on processor load
US7426648B2 (en) * 2004-09-30 2008-09-16 Intel Corporation Global and pseudo power state management for multiple processing elements
US7257679B2 (en) 2004-10-01 2007-08-14 Advanced Micro Devices, Inc. Sharing monitored cache lines across multiple cores
US7788670B2 (en) * 2004-10-26 2010-08-31 Intel Corporation Performance-based workload scheduling in multi-core architectures
US7386737B2 (en) 2004-11-02 2008-06-10 Intel Corporation Method and apparatus to control temperature of processor
US7526661B2 (en) * 2004-12-02 2009-04-28 Intel Corporation Performance state-based thread management
US7346787B2 (en) * 2004-12-07 2008-03-18 Intel Corporation System and method for adaptive power management
US7814485B2 (en) * 2004-12-07 2010-10-12 Intel Corporation System and method for adaptive power management based on processor utilization and cache misses
US7502948B2 (en) * 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US7463993B2 (en) 2005-05-10 2008-12-09 Intel Corporation Adaptive thermal-based frequency-bounds control

Also Published As

Publication number Publication date
US20140115362A1 (en) 2014-04-24
US7502948B2 (en) 2009-03-10
CN101111814A (zh) 2008-01-23
US20090172375A1 (en) 2009-07-02
US20110099397A1 (en) 2011-04-28
US11287871B2 (en) 2022-03-29
US9619009B2 (en) 2017-04-11
US10013047B2 (en) 2018-07-03
US9785226B2 (en) 2017-10-10
TWI310129B (en) 2009-05-21
WO2006073899A3 (en) 2007-01-04
US20160018882A1 (en) 2016-01-21
US20160246359A1 (en) 2016-08-25
WO2006073899A2 (en) 2006-07-13
TW200634498A (en) 2006-10-01
US20190041966A1 (en) 2019-02-07
US8650424B2 (en) 2014-02-11
DE112005003136B4 (de) 2009-10-01
DE112005003136T5 (de) 2007-11-22
US20060149975A1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
CN100549908C (zh) 多核架构中的工作点管理系统和方法
Delaluz et al. Hardware and software techniques for controlling dram power modes
Gochman et al. Introduction to Intel Core Duo Processor Architecture.
KR100663864B1 (ko) 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
Naveh et al. Power and Thermal Management in the Intel Core Duo Processor.
EP2569680B1 (en) Method and apparatus for cache control
Mittal A survey of architectural techniques for DRAM power management
EP1763725B1 (en) Controlling standby power of low power devices
US6631474B1 (en) System to coordinate switching between first and second processors and to coordinate cache coherency between first and second processors during switching
CN100555227C (zh) 用于控制多内核处理器的方法
US20080313482A1 (en) Power Partitioning Memory Banks
US20050132239A1 (en) Almost-symmetric multiprocessor that supports high-performance and energy-efficient execution
US20030061383A1 (en) Predicting processor inactivity for a controlled transition of power states
Fleischmann Longrun power management
US20040073826A1 (en) Clock frequency control method and electronic apparatus
CN100552600C (zh) 北桥电源管理装置及其方法
Das et al. The slowdown or race-to-idle question: Workload-aware energy optimization of SMT multicore platforms under process variation
Delaluz et al. Memory energy management using software and hardware directed power mode control
KR101803284B1 (ko) 메모리 사용량에 근거한 에너지 효율적 디바이스 주파수 변경 방법 및 장치
Inoue et al. Trends in high-performance, low-power cache memory architectures
Kim et al. Optimizing leakage energy consumption in cache bitlines
Renau Memory hierarchies in intelligent memories: energy/performance design
McGaughy et al. The Energy Efficiency of IRAM Architectures

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant