CN104813252A - 确定在处理器中应保持活跃的执行核数量的装置及方法 - Google Patents

确定在处理器中应保持活跃的执行核数量的装置及方法 Download PDF

Info

Publication number
CN104813252A
CN104813252A CN201380045899.2A CN201380045899A CN104813252A CN 104813252 A CN104813252 A CN 104813252A CN 201380045899 A CN201380045899 A CN 201380045899A CN 104813252 A CN104813252 A CN 104813252A
Authority
CN
China
Prior art keywords
processor
configuration
core
power consumption
execution core
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
CN201380045899.2A
Other languages
English (en)
Other versions
CN104813252B (zh
Inventor
A·N·阿南塔克里什南
J·F·塞博特
J·D·施瓦茨
S·H·冈瑟
E·C·萨姆森
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 CN104813252A publication Critical patent/CN104813252A/zh
Application granted granted Critical
Publication of CN104813252B publication Critical patent/CN104813252B/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/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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Abstract

描述了一种包括多个执行核的处理器。该处理器还包括功率管理电路,用于动态确定活跃时会使得处理器工作在大致线性的功耗对频率工作区的执行核的数量,从而使得在使用所述数量的执行核的情况下,作为功耗增量的函数的性能增益相比在已确立的功率包络中的其他任何数量的活跃执行核更高。

Description

确定在处理器中应保持活跃的执行核数量的装置及方法
发明领域
发明领域主要涉及计算系统,更具体而言,涉及确定在处理器中应保持活跃的执行核数量的装置及方法。
背景
图1示出了示例性多核处理器100的架构。如图1中所见,处理器包括:1)多个处理核101_1至101_N;2)互连网络102;3)末级缓存系统103;4)存储控制器104以及I/O中枢105。每个处理核包含一个或多个用以执行程序代码指令的指令执行流水线。互连网络102用于将核101_1至101_N中的每一个互连至彼此以及其他元件103、104、105。末级缓存系统103在指令和/或数据被放至系统存储器106之前用作处理器中的最后一层缓存。
存储器控制器104从/至系统存储器106读/写数据和指令。I/O中枢105管理处理器和“IO”设备(如非易失性存储设备和/或网络接口)之间的通信。端口107源自于互连网络102以连接多个处理器,使得具有超过N核的系统可以被实现。图形处理器108执行图形计算。功率管理电路109管理着处理器整体上(“封装级”)的性能和功率状态,以及处理器中独立单元(例如独立核101_1至101_N、图形处理器108等)的性能和功率状态的各方面。为方便起见,其他具有意义的功能模块,例如锁相环(PLL)电路,在图1中未被绘出。
随着计算机系统的功耗开始受到关注,大多现今的系统包括精巧的功率管理功能。一种常见的构架是同时定义“性能”状态和“功率”状态。进入和/或离开这些状态中的任何一个,可由,例如,功率管理电路109来进行控制。逻辑模块的性能对应着其在设定时间周期内的工作能力。也就是说,逻辑模块的性能状态越高,在设定时间周期内其所做的工作就越多。这里,对于一个逻辑模块的固定配置,决定逻辑模块性能的主要因素是其工作的频率。具体而言,应用于逻辑模块的时钟频率越高,其性能就越高。通常,为了在更高频率下正常工作,逻辑模块的供电电压也需要被提高。时钟速度和供电电压水平两者可在运行时(runtime)期间,例如由功率管理电路109进行调节。
另一个可以影响逻辑模块性能的因素是其可工作的内部单元中有多少被启用(enabled)。例如,一种典型的图形处理器108具有多个内部执行核120_1至120_Z,其中的每一个都被设计为实际执行代表计算机显示器上所呈现图像的图形程序代码的片段(shippets)。通常,图形处理器108被设计成支持对应于不同数量的被启用执行核的不同工作配置。例如,第一种配置可将所有执行核120_1至120_Z启用,而另一种配置可仅将一半的核启用。启用核的数量也影响了处理器工作的能力,并且因此也影响其性能。因此,图形处理器实际的“性能”是启用核数量和应用于核的时钟信号频率的复杂混合。
不幸的是,逻辑模块的功耗随其频率和性能而增加这一事实更加重了复杂度。
附图说明
本发明是以示例而非限制附图图形的方式进行说明,其中相同的参考指代类似的元素,而其中:
图1示出了一种处理器的实施例;
图2示出了对于一种图形处理器配置的作为频率的函数的功耗;
图3a示出了对于一对图形处理器配置的作为频率的函数的功耗;
图3b示出了对于一对图形处理器配置的作为功耗的函数的性能;
图4示出了对于M种不同图形处理器配置的作为频率的函数的功耗;
图5示出了一种功率管理方法。
详细说明
智能功率管理的目的在于,对于单位频率增量,以较少量的功率增加得到更多量的性能增长。就处理器而言,例如具有多个执行核的图形处理器,根据被启用的执行核的数量,该处理器基本表现出不同的性能/频率对(vs.)功率的曲线。也就是说,例如,具有第一种数量的启用执行核的图形处理器相比具有不同数量的启用核的同一个处理器会表现出不同的性能和功率曲线。
因此有见地的功率管理会试图将图形处理器的性能和功率曲线定义为其启用核的函数,并且,选择将被启用核的数量,该数量相比具有其他启用核数量的可选配置,会得到对于单位频率增量以较少量功率增加得到更多量的性能增长的图形处理器。
图2示出了一种图形处理器的功率对频率曲线200。图2中的曲线200对于任何启用执行核的数量是通用的。也就是说,具有特定数量启用核的任何配置应该有一个功率对频率的折衷,其表现出如图2中所见曲线200的大体形状。
处理器中的“性能”可假定随频率而缩放。这样,纵坐标也可被视作处理器的性能。曲线200由较低频率中的线性区201和较高频率中的非线性区202来表征。
线性区201中的动态功耗可被近似为:
Dyn_Pwr=CV2f   式1
其中:1)C为处理器中的总开关电容,包括启用核的开关电容;2)V为加在图形处理器上的供电电压;以及,3)f为工作频率。在一种实施例中,至少在线性区201的较低的频率区域,供电电压不需要随递增的频率而增加。因此项V2在式1中作为常数。C也表现得像一个常数。因此,假设图形处理器的活跃等级保持为常数,式1基本对应于动态功率,表现出与频率f的线性关系。
在非线性区202中,供电电压V需要随增加的频率而增加,以支持合适的电路操作。因此,V2项表现得并不像是常数,这进而使得式1表现得更像是一个非线性的多项式。并且,更高频率所需的更高供电电压使得“泄露功率”开始产生明显的影响。在功率对频率曲线200的非线性区202中,该泄露功率导致更为非线性的行为。
回想一下,所希望的是工作在对于单位频率增量具有更高性能增益和更少功率增量的区域中,需要注意的是,线性区201相比非线性区202能更好地满足该条件。对现象的考查在开始处(in onset)203被描绘,其比较了曲线在相同频率增量206_1和206_2下(即,频率增量206_1等于频率增量206_2),两个区域201、202功耗增量204、205的变化。非线性区202中的功耗增量205比线性区201中的功耗增量204更大。对于两个频率增量206_1、206_2将处理器性能增量近似估算是相同的,很明显,对于相同的性能增量,线性区201比非线性区202产生更少的功耗增量。这对应着更理想的工作区域。
图3a示出了两个不同图形处理器配置的一对曲线300_1及300_2。也就是说,每一条曲线对于特定数量的启用执行核来表示处理器的行为,其中,每一条曲线对应着不同的启用执行核的数量。曲线300_1对应着更少启用核的数量(例如,一半核被启用)而曲线300_2对应着更多的启用核数量,(例如,所有核被启用)。
对比两条曲线300_1、300_2,注意,对于相同的功耗水平,采用更多数量核的配置300_2比采用较少数量核的配置300_1具有更低的频率。这直接源于这样的事实,即采用更多核的配置具有更大的使用电路表面积,因此相比采用更少数量核的配置,可以在更慢的速度下做与有更少数量核的配置相同数量的工作。
这里,尽管可以说相对性能沿着任意特定曲线随频率而缩放,并不像图2中的分析那样,两条曲线300_1、300_2之间的处理器性能顺着横坐标(功耗)比顺着纵坐标(频率)更好地被观察。也就是说,两条曲线300_1、300_2之间的处理器性能可被视为在相同的功耗水平下(特别是当两条曲线在各自曲线中相同的线性或非线性区时)比在相同的频率水平下更有可比性。值得注意的是,使用更多执行核的曲线300_2比使用较少执行核的曲线300_1在更高的功耗/性能下保持在线性区。这与一观念相一致,即为了完成相同数量的工作,更多执行核不必与较少执行核工作得同样快。
回想一下,所希望的是保持处理器工作在线性区而不是非线性区,并且,认识到具有更多启用执行核的处理器配置会在更高的性能水平进入非线性区,因此,这也就是为什么对于任何特定的性能水平,智能功率管理方案会基于该准则决定合适的执行核的数量的原因。也就是说,智能功率管理方案会试图将线性区映射到处理器被设计要支持的每一个性能状态。针对性能状态被选择的线性区决定了对于该性能状态要被启用的执行核的数量。
考虑一个示例,其中图形处理器最初被置于较低的性能状态中,而后被要求不断提高其性能水平。在这种情况下,处理器的性能逐渐从其最低性能状态扫掠(scan)至其最高性能状态。这里,再次比较图3a中的两条曲线300_1、300_2,注意,具有较少执行核的曲线300_1的线性区301_1相比具有更多执行核的曲线300_2的线性区301_2,有着更大的斜率。这直接源于这样的事实,即当工作于相同频率时,更多执行核会比较少执行核消耗更多功率。更大的斜率对应着对于单位增加频率的更少的功率增量。因此,具有较少执行核的曲线300_1的线性区301_1是处理器更好的工作区。
因此,功率管理方案应该最初选择具有较少执行核的曲线300_1的线性区301_1作为图形处理器在较低性能水平下的初始工作区。因此,功率管理方案应该选择具有较少执行核的配置。在最低性能水平下的初始工作点被绘作图3a中的点A。随着图形处理器渐进式地步入更高性能水平,所使用的频率会增加,但启用执行核的数量将保持固定。换言之,功率管理方案如箭头310、311所示地沿着曲线300_1的线性区301_1“行进”。
然而,图形处理器将最终到达曲线300_1的线性区上的点B大致对应的区域。点B是相关的(pertinent),因为它代表了在何处曲线300_1开始脱离线性区301_1,而进入非线性区301_2。因此,在实施例中,功率管理方案改变处理器配置并启用更多执行核,这样处理器开始沿着曲线300_2中的线性区301_2工作,而不是曲线300_1中的非线性区301_2。换言之,当处理器被要求工作在大约图3a中点B附近的性能状态时,功率管理方案将图形处理器重新配置以用更多执行核进行工作,这样图形处理器开始工作于曲线300_2的点C且线性区301_2朝前推进。这样一来,图形处理器继续工作在线性区中,且因此保持对于单位频率增量所可消耗的较低功率代价。
图3b给出了另一种观察相同或相似功率管理方案的方法。图3a示出了频率对(vs.)功耗,而图3b示出了性能对(vs.)功耗。图3b的曲线300_11和300_22分别对应着图3a中300_1和300_2的性能对功耗曲线。也就是说,曲线300_11对应着启用较少执行核配置的性能对功耗趋势,而曲线300_22对应着启用更多执行核的配置。图3b中的点X是交叉点,在其之上,移至具有更多启用执行核数量的图形配置开始变得更节能。换言之,留在现有配置中的“代价”开始变得太高。这里,图3b的点X在功耗方面与图3a的点B大约是在相同的区域。值得注意的是,在点X以上的功率水平处,曲线300_11早已进入了非线性的频率对功率缩放区,从而使得增加性能(及频率)的功率开销比在低得多的频率下开启额外执行单元以满足相同的性能水平的开销更大(如曲线300_22所表示)。图3a的曲线300_1上的点B对应着一个频率,在其之上,移至更大执行单元的数量变得更节能。
或者,如果处理器正采用更大执行单元数量沿着曲线300_22运行,随着总的可用功率包络被降低(例如,随着图形处理器的最大允许功耗被降低),工作性能沿图3b中的曲线300_22降低。当达到图3b中的点X时,保持大量执行核活跃的代价显著地消耗了可被用于增加所有活跃执行核频率的功率余量。因此,在该点处,减少启用执行核的数量并利用所节省的功率余量来增加较少活跃执行核的工作频率变得更节能。再回到图3a,当我们在功率方面沿着曲线300_2向下走,在点C处,减少活跃执行核数量并转移至曲线301_1开始变得更节能。
图4示出了一种图形处理器更实际的工作区域。尽管图3仅给出了两种不同数量的启用执行核的曲线300_1、300_2,相比之下,图4示出了多条曲线400_1至400_M,其分别对应不同数量的启用执行核。曲线400_1对应着最少数量的启用执行核(例如一个执行单元)而曲线400_M对应着最多数量的启用执行核(例如所有执行核)。轨迹410循着功率管理方案根据递增的性能的函数将会把图形处理器置于其中的诸个工作区(同样,尽管图4实际上将功耗沿横坐标显示,横坐标也可以被视为性能的衡量,因为具有相同功耗的两条不同的曲线,特别是在线性工作区中,应表现出相似的性能)。本领域的普通技术人员能理解,M可因实施例而不同,对于任意给定的处理器配置有多少执行核被启用亦可因实施例而不同。
根据一个实施例,和轨迹410相当的信息,和/或可以从中确定轨迹410的信息被有效地映射到处理器的功率管理电路中。功率管理电路依靠或不依靠软件的协助,有效地执行与以上讨论原理相一致的功率管理方案。轨迹信息410嵌入功率管理电路和/或软件的方式可因实施例而不同。例如,切换至新配置的决定可基于留在现有配置“代价”太高的判断。
根据一个实施例,存在一种认识,即图形处理器得曲线可在运行期间“漂移(drift)”或改变。示例包括管芯温度的增加或图形处理器活跃程度的改变。例如,管芯温度的增加可导致提前出现漏泄,并因此提前出现非线性区(也就是说,曲线和没有提前出现漏泄的情况相比,在更低的频率处开始表现出非线性区)。更高的活跃程度相比较低的活跃程度也会消耗更多功率,导致非线性区的提前出现。
与该观点相一致,根据一个实施例,存在一种认识,即由于一些生产因素,作为启用执行单元数量的函数的泄露和动态功率可因管芯而异。这样,管芯的特定属性(例如,用于帮助确定参考漏泄及开关电容如何随温度和电压比例缩放)可被编程至非易失性存储器空间内,以帮助动态估计从一种启用/活跃执行核数量到一种不同的启用核数量的“交叉(corss-over)”点。为了详细说明,根据一种实现,被用于确定两种配置间交叉点的信息(如被加入“代价”方程中的常数/系数)可被编程至处理器中。因此,交叉点可以不是纯粹基于是否脱离了线性V-F范围。例如,根据一种方法,实际上是通过观察各种关心的工作量的性能数据,并经验性地确定应在何频率时增加启用执行核数量,而选择每个交叉点的。基于该经验性研究,在制造过程中,交叉点或用于动态确定交叉点的信息(如代价方程式的系数)被编程到处理器管芯中的非易失性配置空间内。这里,交叉点通常会在V-F曲线的拐点周围(即在电压频率曲线从线性移向非线性区间的点的周围),但并不一定正好在该点处。
在一个实施例中,代价函数,如上述代价函数采用以下形式,代价=(A*(一段时间间隔内配置的平均频率))+(B*(该段时间间隔内配置的泄露功率))+(C*(该段时间间隔内配置的动态功率))+(D*(非图形处理器元件的功耗))。
因此,功率管理电路,例如图1的功率管理电路109,被改进以包括用于计算算法或其他对于多种配置(每种具有不同启用执行核数量)的每一种描述图形处理器功耗的公式的电路。尤其是,对于处理器的每种不同配置,功率管理电路计算作为频率变化的函数的功耗变化——把图形处理器的当前状态,如温度和活跃等级考虑进去。然后,所述功率管理电路确定哪些配置对应于作为频率的函数的功耗的最低变化,然后为图形处理器选择该配置。
图5将这种过程的实施例显示为流程方法。如过程501_1至501_M中可见,功率管理电路为处理器所支持的M种不同配置(启用执行核的数量)的每一配置确定:i)总功耗;以及,ii)作为频率变化的函数的功耗变化。用于这些计算的输入变量可以是动态的以及静态的。这里,值得注意的是,在不背离其本意的情况下,可采用与图5中相异的方法。例如,以上(和以下)所述“功耗方面的机会”计算可改为“代价”的函数,例如上文所讨论的代价函数,其衡量留在当前配置下的代价,而非留在当前配置下的好处。
动态变量,如上文所讨论的,对应能在运行时(runtime)期间改变的变量,如温度、活跃等级、供电电压和频率。静态变量对应更为固定的处理器特征,如执行核的总开关电容,以及用于确定泄露功率的参考电流Iref。例如,开关电容和参考电流Iref可通过非易失性配置空间(如“熔丝”或其他在大批量制造期间只读和/或非易失性的储存和/或存储空间)被编程到处理器内。例如,开关电容和Iref参数可取决于制造过程。因此它们可在管芯制造和测试之后被确定。这些参数可以是管芯本身特有的(如,两颗不同的管芯可与不同的开关电容和Iref参数相关联)。启用执行核的数量对于501_1至501_M的每个计算也对应着固定的变量,其对于501_1至501_M的每个计算是不同的。
然后,对于图形处理器必须保持在内的给定“功率包络(power envelope)”,功率管理电路确定在功率包络以内的诸个配置中具有作为频率函数的功耗的最低变化的配置。也就是说,总功耗计算被用于确定哪些配置未超过功率包络(即图形处理器能消耗的最大功率)502。一旦未超过功率包络的一组配置被确定502,具有每频率变化下最低功耗变化的配置从该组中被选择503。
这一方法应如上文中根据图4所讨论地那样,跨不同配置地大致跟踪图形处理器的线性工作区,其中动态变化仍被考虑在内。需要注意的是,根据图5的过程,计算以周期间隔进行,从而使得图形处理器可以适应其配置,并且根据处理器环境的任何变化(诸如任何可反映在计算501_1至501_M的动态输入中的任何变化)而保持更好的功率效率。另外,注意,功率包络也是影响所述一组合适配置的确定502的动态变量。对图形处理器给出的功率包络可,例如,作为处理器中其他元件的功耗(如通用处理核的功耗)的函数进行变化。
功率管理电路可被实现为专用电路或是被设计为执行某种程序代码以达成功率管理的功能的电路(如微控制器)。这些方法的组合也可被实现。在一种实施例中,功率管理电路实际上并不在性能状态中强加任何变化,而是向软件(如图形处理驱动软件)建议性能状态的变化。然后,软件做出最终决定,图形处理器性能状态的变化是否要发生,且若是如此则将实施该变化。功率管理电路可通过中断,门铃寄存器等的方式通信至驱动。该驱动可通过写入设置图形处理器性能状态的处理器中的寄存器来建立性能状态。这也可包括规定需要启用的执行核数量,以及可能规定其他功率管理参数,如施加于图形处理器的供电电压和图形处理器和/或执行核的工作频率。软件实体可查询编程到处理器上非易失性储存空间中的制造参数,跟踪处理器的活跃水平并动态估计要保持活跃的执行单元数量。作为替代,功率管理电路可完全在硬件中完成所有这些功能。再或者,某些硬件和软件的组合可完成这些过程。
值得注意的是,据信本讨论适用于任何由数个相同/相似执行核构成的处理器(例如,以上所讨论的诸过程可潜在地被用于确定多核处理器中需要启用的通用处理核数量的过程)。
由于上述讨论所授的任何过程可由控制器,微控制器或类似元件完成,这样的过程可以是程序代码,例如,使得执行这些指令的机器完成特定功能的机器可执行指令。上述讨论所教示的过程,作为执行程序编码的替代,或与执行程序代码相结合,也可由设计为完成所述过程(或其部分)的电子电路来完成。
据信上述讨论所教示的过程也可用不同的面向对象或非面向对象的计算机编程语言以源级程序代码来加以描述。一种制品可被用于储存程序代码。储存程序编码的制品可体现为,但不限于,一种或多种存储器(如一种或多种闪存、随机存取存储器,静态、动态或其他)、光盘、CD-ROM、DVD ROM、EPROM、EEPROM、磁卡或光卡或其他类型适合于储存电子指令的机器可读介质。程序代码也可通过体现于传播介质中(如通过通信链路(如网络连接))的数据信号的方式从远程计算机(如服务器)下载至请求计算机(如客户端)。
在前述的说明中,本发明参照其具体示例性实施例进行描述。然而,显而易见的是,在不背离如所附权利要求中阐述的本发明的更宽泛的精神和范围的情况下,各种修改和改变可对其进行实施。说明和附图相应地被认为是说明性的,而非限制性意义的。

Claims (20)

1.一种处理器,包括:
多个执行核;
功率管理电路,用于动态确定活跃时会使得所述处理器工作在大致线性的功耗对频率工作区中的所述执行核的数量,从而使得在使用所述数量的执行核的情况下,作为功耗增量的函数的性能增益相比在已确立的功率包络中的其他任何数量的活跃执行核而言更高。
2.如权利要求1所述的处理器,其中所述执行核在图形处理器中。
3.如权利要求2所述的处理器,其中所述处理器包括通用处理核。
4.如权利要求1所述的处理器,其中所述功率管理电路接受一个或多个静态和动态的输入变量。
5.如权利要求4所述的处理器,其中所述一个或多个静态输入变量包括以下任意项:
开关电容项,用以确定动态功耗;
参考电流项,用以确定漏泄功耗,
一组制造相关的参数,用以帮助确定参考漏泄和开关电容如何随温度和电压缩放。
6.如权利要求4所述的处理器,其中所述一个或多个动态输入变量包括以下任意一个:
供电电压;
温度;
执行核的活跃等级。
7.一种处理器,包括:
多个执行核;
功率管理电路,用以通过确定以下项,来确定要启用以进行操作的所述执行核的数量:
所述处理器的一组配置,所述一组配置保持在为所述处理器确立的功率包络中,每项配置对应于不同数量的活跃执行核;
所述一组配置中的每一项所述配置的作为频率参数变化的函数的功耗变化;
来自所述一组配置中的配置,该配置在所述一组中的其他配置之中具有最低的作为频率参数变化的函数的功耗变化。
8.如权利要求7所述的处理器,其中所述执行核在图形处理器中。
9.如权利要求8所述的处理器,其中所述处理器包括通用处理核。
10.如权利要求7所述的处理器,其中所述功率管理电路接受一个或多个静态和动态的输入变量。
11.如权利要求10所述的处理器,其中所述一个或多个静态输入变量包括以下任意项:
开关电容项,用以确定动态功耗;
参考电流项,用以确定漏泄功耗,
一组制造相关的参数,用以帮助确定参考泄露和开关电容如何随温度和电压缩放。
12.如权利要求10所述的处理器,其中所述的一个或多个动态输入变量包括以下任意一个:
供电电压;
温度;
执行核的活跃等级。
13.一种方法,包括:
为处理器确定一组配置,所述一组配置保持在为所述处理器确立的功率包络中,每项配置对应于所述处理器的不同数量的活跃执行核;
为所述一组配置中的每一项所述配置确定作为频率参数变化的函数的功耗变化;以及
从所述一组配置中确定配置,该配置在所述一组配置中的其他配置之中具有最低的作为频率参数变化的函数的功耗变化。
14.如权利要求13所述的方法,其中所述配置对应于活跃执行核的数量,对于所述处理器所工作的区域,所述数量相比于任何其他数量的活跃执行核使得所述处理器以更高性能增益来工作,所述性能为功耗的函数。
15.如权利要求13所述的方法,其中所述执行核在图形处理器中。
16.如权利要求2所述的方法,其中所述执行核是多核处理器中的通用处理核。
17.如权利要求13所述的方法,还包括接受一个或多个静态和动态的输入变量。
18.如权利要求17所述的方法,其中所述一个或多个静态输入变量包括以下任意项:
开关电容项,用以确定动态功耗;
参考电流项,用以确定漏泄功耗,
一组制造相关的参数,用以帮助确定参考泄露和开关电容如何随温度和电压缩放。
19.如权利要求17所述的方法,其中所述一个或多个动态输入变量包括以下任意项:
供电电压;
温度;
执行核的活跃等级。
20.一种机器可读储存介质,包含已储存的程序代码,其在被数字处理系统处理时使得一种方法被执行,所述方法包括:
为处理器确定一组配置,所述一组配置保持在为所述处理器确立的功率包络中,每项配置对应于所述处理器的不同数量的活跃执行核;
为所述一组配置中的每一项所述配置确定作为频率参数变化的函数的功耗变化;以及
从所述一组配置中确定配置,该配置在所述一组配置中的其他配置之中具有最低的作为频率参数变化的函数的功耗变化。
CN201380045899.2A 2012-09-28 2013-06-25 确定在处理器中应保持活跃的执行核数量的装置及方法 Active CN104813252B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/631,679 2012-09-28
US13/631,679 US9037889B2 (en) 2012-09-28 2012-09-28 Apparatus and method for determining the number of execution cores to keep active in a processor
PCT/US2013/047629 WO2014051780A1 (en) 2012-09-28 2013-06-25 Apparatus and method for determining the number of execution cores to keep active in a processor

Publications (2)

Publication Number Publication Date
CN104813252A true CN104813252A (zh) 2015-07-29
CN104813252B CN104813252B (zh) 2018-03-30

Family

ID=50386426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380045899.2A Active CN104813252B (zh) 2012-09-28 2013-06-25 确定在处理器中应保持活跃的执行核数量的装置及方法

Country Status (4)

Country Link
US (2) US9037889B2 (zh)
CN (1) CN104813252B (zh)
GB (1) GB2520870B (zh)
WO (1) WO2014051780A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997311A (zh) * 2016-01-25 2017-08-01 宏达国际电子股份有限公司 具有多核心处理器的电子装置及多核心处理器的管理方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9217771B2 (en) * 2014-01-14 2015-12-22 International Business Machines Corporation Method for breaking down hardware power into sub-components
US10402767B2 (en) * 2014-02-13 2019-09-03 Johnson Controls Technology Company Systems and methods for monetizing and prioritizing building faults
US9715272B2 (en) * 2014-04-24 2017-07-25 Htc Corporation Portable electronic device and core swapping method thereof
US10025367B2 (en) 2014-08-19 2018-07-17 Intel Corporation Dynamic scaling of graphics processor execution resources
US10031573B2 (en) * 2014-11-17 2018-07-24 Mediatek, Inc. Energy efficiency strategy for interrupt handling in a multi-cluster system
US10296067B2 (en) * 2016-04-08 2019-05-21 Qualcomm Incorporated Enhanced dynamic clock and voltage scaling (DCVS) scheme
US10359833B2 (en) 2016-06-20 2019-07-23 Qualcomm Incorporated Active-core-based performance boost
US11138037B2 (en) * 2017-11-02 2021-10-05 Mediatek Inc. Switch policy for hybrid scheduling in multi-processor systems
US20210089423A1 (en) * 2019-09-24 2021-03-25 Advanced Micro Devices, Inc. Flexible multi-user graphics architecture
CN112799838A (zh) * 2021-01-27 2021-05-14 Oppo广东移动通信有限公司 任务处理方法、多核处理器及计算机设备
US20230315191A1 (en) * 2022-03-30 2023-10-05 Advanced Micro Devices, Inc. Core Activation and Deactivation for a Multi-Core Processor
US11977757B2 (en) 2022-04-29 2024-05-07 Advanced Micro Devices, Inc. Real time profile switching for memory overclocking

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1993669A (zh) * 2004-07-27 2007-07-04 英特尔公司 多核处理器内的电源管理协调
US20100058086A1 (en) * 2008-08-28 2010-03-04 Industry Academic Cooperation Foundation, Hallym University Energy-efficient multi-core processor
US20100185882A1 (en) * 2009-01-16 2010-07-22 International Business Machines Corporation Computer System Power Management Based on Task Criticality
US20110099397A1 (en) * 2004-12-30 2011-04-28 Efraim Rotem Operating point management in multi-core architectures

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043795B2 (en) * 2008-12-11 2015-05-26 Qualcomm Incorporated Apparatus and methods for adaptive thread scheduling on asymmetric multiprocessor
US8527794B2 (en) * 2010-05-27 2013-09-03 Advanced Micro Devices, Inc. Realtime power management of integrated circuits
US9268611B2 (en) 2010-09-25 2016-02-23 Intel Corporation Application scheduling in heterogeneous multiprocessor computing platform based on a ratio of predicted performance of processor cores
US8627128B2 (en) * 2010-11-09 2014-01-07 International Business Machines Corporation Power management for processing capacity upgrade on demand
WO2012069881A1 (en) * 2010-11-25 2012-05-31 Freescale Semiconductor, Inc. Method and apparatus for managing power in a multi-core processor
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US20140317389A1 (en) * 2011-11-18 2014-10-23 The Trustees Of The University Of Pennsylvania Computational sprinting using multiple cores
CN108509021B (zh) * 2011-11-21 2021-11-09 英特尔公司 用于性能改善的可重配置图形处理器
US10242652B2 (en) * 2013-06-13 2019-03-26 Intel Corporation Reconfigurable graphics processor for performance improvement

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1993669A (zh) * 2004-07-27 2007-07-04 英特尔公司 多核处理器内的电源管理协调
US20110099397A1 (en) * 2004-12-30 2011-04-28 Efraim Rotem Operating point management in multi-core architectures
US20100058086A1 (en) * 2008-08-28 2010-03-04 Industry Academic Cooperation Foundation, Hallym University Energy-efficient multi-core processor
US20100185882A1 (en) * 2009-01-16 2010-07-22 International Business Machines Corporation Computer System Power Management Based on Task Criticality

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997311A (zh) * 2016-01-25 2017-08-01 宏达国际电子股份有限公司 具有多核心处理器的电子装置及多核心处理器的管理方法
CN106997311B (zh) * 2016-01-25 2020-09-18 宏达国际电子股份有限公司 具有多核心处理器的电子装置及多核心处理器的管理方法

Also Published As

Publication number Publication date
US20150241954A1 (en) 2015-08-27
US9037889B2 (en) 2015-05-19
GB2520870B (en) 2020-05-13
GB201502690D0 (en) 2015-04-01
US20140095904A1 (en) 2014-04-03
WO2014051780A1 (en) 2014-04-03
CN104813252B (zh) 2018-03-30
GB2520870A (en) 2015-06-03

Similar Documents

Publication Publication Date Title
CN104813252A (zh) 确定在处理器中应保持活跃的执行核数量的装置及方法
US9436253B2 (en) Dynamic voltage frequency scaling method and apparatus
JP2021140825A (ja) ホリスティックグローバルなパフォーマンス及び電力管理
EP2488929B1 (en) Memory object relocation for power savings
KR102239598B1 (ko) 듀얼 서플라이 메모리
EP2818973B1 (en) Apparatus and method to implement power management of a processor
US8612781B2 (en) Method and apparatus for application of power density multipliers optimally in a multicore system
US10019539B2 (en) Partitioning of a network using multiple poles for each part thereof
US8806491B2 (en) Thread migration to improve power efficiency in a parallel processing environment
US20100268968A1 (en) Managing processor power-performance states
US20120166838A1 (en) Method and systems for energy efficiency and energy conservation including on-off keying for power control
CN105493053A (zh) 多核处理器中的高速缓存划分
US10242418B2 (en) Reconfigurable graphics processor for performance improvement
CN106528290A (zh) 移动终端的资源调度方法及移动终端
KR20160137030A (ko) 씨피유 주파수 제어 장치 및 방법
Wang et al. Real-time rendering on a power budget
KR20160044467A (ko) 전력 신호 인터페이스
KR20190090356A (ko) 기계학습 알고리즘 기반 cpu 온도 예측 방법 및 장치
KR20110026493A (ko) 동적 전력 절감 메모리 아키텍처
KR102346890B1 (ko) 기계학습 알고리즘 기반 최적의 cpu 주파수 예측 장치
US20160011962A1 (en) Allocating memory usage based on voltage regulator efficiency
Oh et al. Runtime temperature-based power estimation for optimizing throughput of thermal-constrained multi-core processors
Monil et al. Incorporating Migration Control in VM Selection Strategies to Enhance Performance.
Gupta et al. Formal methods for dynamic power management
CN113993343A (zh) 制冷设备的节能控制方法、装置、终端及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant