CN102687097A - 用于以保证的稳定状态期限来控制中央处理单元功率的系统和方法 - Google Patents
用于以保证的稳定状态期限来控制中央处理单元功率的系统和方法 Download PDFInfo
- Publication number
- CN102687097A CN102687097A CN2010800565331A CN201080056533A CN102687097A CN 102687097 A CN102687097 A CN 102687097A CN 2010800565331 A CN2010800565331 A CN 2010800565331A CN 201080056533 A CN201080056533 A CN 201080056533A CN 102687097 A CN102687097 A CN 102687097A
- Authority
- CN
- China
- Prior art keywords
- cpu
- steady state
- frequency
- responsiveness
- wireless device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 119
- 230000004043 responsiveness Effects 0.000 claims description 48
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000001413 cellular effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Power Sources (AREA)
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明揭示动态地控制中央处理单元的方法。所述方法可包含:确定CPU何时进入稳定状态;在所述CPU进入稳定状态时计算用于所述CPU的最佳频率;保证稳定状态CPU利用率;以及保证稳定状态CPU利用率期限。
Description
相关申请案
本申请案主张2009年12月16日申请的标题为“动态地控制中央处理单元的系统和方法(SYSTEM AND METHOD OF DYNAMICALLY CONTROLLING A CENTRALPROCESSING UNIT)”的第61/286,999号美国临时专利申请案的优先权,所述申请案的内容以引用的方式全部并入。
技术领域
背景技术
便携式计算装置(PD)到处可见。这些装置可包含蜂窝式电话、便携式数字助理(PDA)、便携式游戏控制台、掌上型计算机,和其它便携式电子装置。除了这些装置的主要功能之外,许多装置包含外围功能。举例来说,蜂窝式电话可包含进行蜂窝式电话呼叫的主要功能,和静态相机、视频相机、全球定位系统(GPS)导航、网络浏览、发送和接收电子邮件、发送和接收文本消息、即按即说能力等的外围功能。随着此类装置的功能性增加,支持此类功能性所需的计算或处理功率也增加。此外,随着计算功率增加,更需要有效地管理提供计算能力的处理器。
因此,所需的是控制多核CPU内的功率的改进的方法。
发明内容
附图说明
在图中,相同的参考数字在所有各种视图中指代相同的部分,除非另有指示。
图1是处于闭合位置的便携式计算装置(PCD)的第一方面的正视平面图;
图2是处于打开位置的PCD的第一方面的正视平面图;
图3是PCD的第二方面的方框图;
图4是处理系统的方框图;
图5是说明动态地控制CPU的方法的第一方面的流程图;
图6是说明动态地控制CPU的方法的第二方面的流程图;
图7是说明动态地控制CPU的方法的第三方面的流程图;以及
图8是说明动态地控制CPU的方法的第四方面的流程图;
图9是说明计算有效CPU利用率的方法的流程图;
图10是说明确定滤波器是否足够快地响应的方法的流程图;
图11是说明在闲置周期期间更新滤波器的方法的流程图;
图12是说明在忙周期期间更新滤波器的方法的流程图;以及
图13是描绘CPU利用率对时间的图表。
具体实施方式
词语“示范性”在本文中用于表示“充当实例、例子或说明”。在本文中描述为“示范性”的任何方面不一定解释为比其它方面优选或有利。
在此描述中,术语“应用程序”还可包含具有可执行内容的文件,例如:对象代码、脚本、字节代码、标记语言文件和补丁。另外,本文中所涉及的“应用程序”还可包含本质上不可执行的文件,例如可能需要打开的文档或需要存取的其它数据文件。
术语“内容”还可包含具有可执行内容的文件,例如:对象代码、脚本、字节代码、标记语言文件和补丁。另外,本文中所涉及的“内容”还可包含本质上不可执行的文件,例如可能需要打开的文档或需要存取的其它数据文件。
如此描述中所使用,术语“组件”、“数据库”、“模块”、“系统”等意欲指代计算机相关实体,硬件、固件、硬件和软件的组合、软件或执行中的软件。举例来说,组件可为(但不限于)运行在处理器上的进程、处理器、对象、可执行程序、执行线程、程序,和/或计算机。以说明的方式,运行在计算装置上的应用程序和计算装置两者均可为组件。一个或一个以上组件可驻留于进程和/或执行线程内,且组件可位于一个计算机上和/或分布于两个或两个以上计算机之间。另外,这些组件可从上面存储有各种数据结构的各种计算机可读媒体来执行。组件可例如根据具有一个或一个以上数据包的信号(例如,来自一个借助所述信号与在本地系统、分布式系统中的另一组件和/或跨越例如因特网等网络与其它系统交互的组件的数据)而通过本地和/或远程进程进行通信。
起初参看图1和图2,展示示范性便携式计算装置(PCD)且大体上标示为100。如图所示,PCD 100可包含外壳102。外壳102可包含上部外壳部分104和下部外壳部分106。图1展示上部外壳部分104可包含显示器108。在特定方面中,显示器108可为触摸屏显示器。上部外壳部分104还可包含跟踪球输入装置110。此外,如图1中所示,上部外壳部分104可包含通电按钮112和断电按钮114。如图1中所示,PCD 100的上部外壳部分104可包含多个指示器灯116和扬声器118。每一指示器灯116可为发光二极管(LED)。
在特定方面中,如图2中所描绘,上部外壳部分104可相对于下部外壳部分106移动。具体来说,上部外壳部分104可相对于下部外壳部分106滑动。如图2中所示,下部外壳部分106可包含多按钮键盘120。在特定方面中,多按钮键盘120可为标准QWERTY键盘。在上部外壳部分104相对于下部外壳部分106移动时可露出多按钮键盘120。图2进一步说明PCD 100可包含下部外壳部分106上的复位按钮122。
参看图3,其展示便携式计算装置(PCD)的示范性非限制性方面且大体上标示为320。如图所示,PCD 320包含芯片上系统322,芯片上系统322包含多核CPU 324。多核CPU324可包含第零核325、第一核326和第N核327。
如图3中所说明,显示器控制器328和触摸屏控制器330耦合到多核CPU 324。芯片上系统322外部的触摸屏显示器332又耦合到显示器控制器328和触摸屏控制器330。
图3进一步指示视频编码器334(例如,逐行倒相(PAL)编码器、顺序传送彩色与存储(SECAM)编码器,或美国电视系统委员会(NTSC)编码器)耦合到多核CPU 324。此外,视频放大器336耦合到视频编码器334和触摸屏显示器332。而且,视频端口338耦合到视频放大器336。如图3中所描绘,通用串行总线(USB)控制器340耦合到多核CPU324。而且,USB端口342耦合到USB控制器340。存储器344和订户身份模块(SIM)卡346也可耦合到多核CPU 324。此外,如图3中所示,数码相机348可耦合到多核CPU324。在示范性方面中,数码相机348为电荷耦合装置(CCD)相机或互补金属氧化物半导体(CMOS)相机。
如图3中进一步说明,立体声音频CODEC 350可耦合到多核CPU 324。另外,音频放大器352可耦合到立体声音频CODEC 350。在示范性方面中,第一立体声扬声器354和第二立体声扬声器356耦合到音频放大器352。图3展示麦克风放大器358也可耦合到立体声音频CODEC 350。另外,麦克风360可耦合到麦克风放大器358。在特定方面中,调频(FM)无线电调谐器362可耦合到立体声音频CODEC 350。而且,FM天线364耦合到FM无线电调谐器362。此外,立体声头戴式送受话器366可耦合到立体声音频CODEC 350。
图3进一步指示射频(RF)收发器368可耦合到多核CPU 324。RF开关370可耦合到RF收发器368和RF天线372。如图3中所示,小键盘374可耦合到多核CPU 324。而且,具有麦克风的单声道耳机376可耦合到多核CPU 324。此外,振动器装置378可耦合到多核CPU 324。图3还展示电源380可耦合到芯片上系统322。在特定方面中,电源380为给PCD 320的需要电力的各种组件提供电力的直流(DC)电源。此外,在特定方面中,电源为可再充电DC电池或从连接到AC电源的交流(AC)-DC变压器得到的DC电源。
图3进一步指示PCD 320还可包含网卡388,网卡388可用于接入数据网络,例如局域网、个域网或任何其它网络。网卡388可为蓝牙网卡、WiFi网卡、个域网(PAN)卡、个域网超低功率技术(PeANUT)网卡,或此项技术中众所周知的任何其它网卡。此外,网卡388可并入到芯片中,即网卡388可为芯片上的整个解决方案,且可不为单独的网卡388。
如图3中所描绘,触摸屏显示器332、视频端口338、USB端口342、相机348、第一立体声扬声器354、第二立体声扬声器356、麦克风360、FM天线364、立体声头戴式送受话器366、RF开关370、RF天线372、小键盘374、单声道耳机376、振动器378,和电源380在芯片上系统322的外部。
在特定方面中,本文中所描述的方法步骤中的一者或一者以上可作为计算机程序指令存储于存储器344中。这些指令可由多核CPU 324执行以便执行本文中所描述的方法。此外,多核CPU 324、存储器344或其组合可用作用于执行本文中所描述的方法步骤中的一者或一者以上以便动态地控制多核CPU 324内的每一CPU或核的功率的装置。
参看图4,展示处理系统且大体上标示为500。在特定方面中,处理系统500可并入到上文结合图3所描述的PCD 320中。如图所示,处理器系统500可包含多核中央处理单元(CPU)402和连接到多核CPU 402的存储器404。多核CPU 402可包含第零核410、第一核412和第N核414。第零核410可包含在其上执行的第零动态时钟和电压缩放(DCVS)算法416。第一核412可包含在其上执行的第一DCVS算法417。此外,第N核414可包含在其上执行的第N DCVS算法418。在特定方面中,每一DCVS算法416、417、418可独立地在相应核412、414、416上执行。
另外,如所说明,存储器404可包含存储于其上的操作系统420。操作系统420可包含调度器422,且调度器422可包含第一运行队列424、第二运行队列426,和第N运行队列428。存储器404还可包含存储于其上的第一应用程序430、第二应用程序432和第N应用程序434。
在特定方面中,应用程序430、432、434可将一个或一个以上任务436发送到操作系统420以在多核CPU 402内的核410、412、414处进行处理。可将任务436处理或执行为单个任务、线程或其组合。此外,调度器422可调度任务、线程或其组合以用于在多核CPU 402内执行。另外,调度器422可将任务、线程或其组合放置于运行队列424、426、428中。核410、412、414可如(例如)操作系统420所指令而从运行队列424、426、428检索任务、线程或其组合,以用于在核410、412、414处对那些任务和线程的处理或执行。
图4还展示存储器404可包含存储于其上的并行度监视器440。并行度监视器440可连接到操作系统420和多核CPU 402。具体来说,并行度监视器440可连接到操作系统420内的调度器422。
图5说明动态地控制中央处理单元的功率的方法的第一方面,其经展示且大体上标示为500。开始于方框502处,在操作期间,可执行以下步骤。在决策504处,控制器(例如,动态时钟和电压缩放(DCVS)算法)可确定CPU是否处于稳定状态。如果不是,则方法500可结束。
否则,方法500可前进到方框506,且控制器可计算CPU的最佳频率。在方框508处,DCVS可保证稳定状态CPU利用率。此外,在方框510处,DCVS可保证稳定状态CPU利用率期限。其后,方法500可结束。
参看图6,展示动态地控制中央处理单元的功率的方法的第二方面,且大体上标示为600。方法600可以do循环开始于方框602处,其中在装置通电时或每当响应性保证被改变时,可执行以下步骤。
在方框604处,功率控制器(例如,动态时钟和电压缩放(DCVS)算法)可将响应性设定为最不可能的响应性值。在决策606处,功率控制器可确定响应性是否小于最快可能的响应性值。如果不是,则方法600可结束。相反,如果响应性小于最快可能的响应性,则方法600可移动到方框608。在方框608处,功率控制器可将时间变量设定成等于一。其后,在决策610处,功率控制器可确定时间是否小于或等于CPU利用率期限。如果不是,则方法可移动到方框612,且功率控制器可增加响应性。随后,方法600可返回到决策606且方法600可如本文中所描述继续。
返回到决策610,如果时间小于或等于CPU利用率期限,则方法可前进到方框614,且功率控制器可基于响应性值、滤波器(IIR)和CPU忙时间(CPUBusy)来确定稳定状态CPU频率(SteadyStateCPUFreq)。
随后,在决策616处,功率控制器可确定SteadyStateCPUFreq是否大于或等于最大CPU频率(MaxCPUFreq)。如果SteadyStateCPUFreq不大于或等于MaxCPUFreq,则方法可移动到方框618,且功率控制器可将时间变量增加整数一(时间=时间+1)。其后,方法600可返回到决策610且方法600可如本文中所描述继续下去。
返回到决策616,如果SteadyStateCPUFreq大于或等于MaxCPUFreq,则方法600可继续到方框620,且功率控制器可将稳定状态响应性变量(SteadyStateResp)设定成等于响应性值。方法600可随后结束。
参看图7,展示动态地控制中央处理单元的功率的方法的第三方面,且大体上标示为700。方法700可开始于方框702处。在方框702处,功率控制器(例如,动态时钟和电压缩放(DCVS)算法)可将稳定状态α变量(SteadyStateAlpha)设定成等于零。在方框704处,功率控制器可将稳定状态CPU频率(SteadyStateCPUFreq)设定成等于零。此外,在方框706处,功率控制器可将无限脉冲响应(IIR)滤波器值设定成等于零。在方框708处,功率控制器可将变量(α)设定成等于最大α变量(MaxAlpha)。
移动到决策710,功率控制器可确定α是否大于零。如果不是,则方法700可结束。相反,如果α大于零,则方法700可移动到方框712。在方框712处,功率控制器可将时间变量设定成等于一。其后,在决策714处,功率控制器可确定时间是否小于或等于CPU利用率期限。如果不是,则方法可移动到方框716,且功率控制器可将α减小整数一(α=α-1)。随后,方法700可返回到决策710且方法700可如本文中所描述继续。
返回到决策714,如果时间小于或等于CPU利用率期限,则方法可前进到方框718,且功率控制器可基于变量(α)、滤波器(IIR)和CPU忙时间(CPUBusy)来确定稳定状态CPU频率(SteadyStateCPUFreq)。随后,在决策720处,功率控制器可确定SteadyStateCPUFreq是否大于或等于最大CPU频率(MaxCPUFreq)。如果SteadyStateCPUFreq不大于或等于MaxCPUFreq,则方法可移动到方框722,且功率控制器可将时间变量增加整数一(时间=时间+1)。其后,方法700可返回到决策714且方法700可如本文中所描述继续下去。
返回到决策720,如果SteadyStateCPUFreq大于或等于MaxCPUFreq,则方法700可继续到方框724,且功率控制器可将稳定状态α变量(SteadyStateAlpha)设定成等于α。方法700可随后结束。
图8说明动态地控制中央处理单元的功率的方法的第四方面,其被展示且大体上标示为800。方法800可开始于方框802处。在方框802处,功率控制器(例如,动态时钟和电压缩放(DCVS)算法)可将稳定状态α变量(SteadyStateAlpha)设定成等于零。在方框804处,功率控制器可将稳定状态CPU频率(SteadyStateCPUFreq)设定成等于零。此外,在方框806处,功率控制器可将无限脉冲响应(IIR)滤波器值设定成等于零。在方框808处,功率控制器可将变量α设定成等于最大α值MaxAlpha。在方框808处,还可将另一变量BestAlpha设定为MaxAlpha。而且,在方框808处,可将另一变量BestHeadroomPct设定为零,且可将变量BestEffectiveCPUUtilization设定为零。
移动到决策810,功率控制器可确定α是否大于零。如果不是,则方法800可前进到方框826,且控制器可将稳定状态α变量(SteadyStateAlpha)设定成等于最佳α值。而且,控制器可将稳定状态净空变量设定为最佳净空值。其后,方法800可结束。
返回到决策810,如果α大于零,则方法800可移动到方框812。在方框812处,功率控制器可将净空百分比(HeadroomPCT)变量设定成等于一。其后,在决策814处,功率控制器可确定净空百分比是否小于CPU利用率。如果不是,则方法可移动到方框816,且功率控制器可将α减小整数一(α=α-1)。随后,方法800可返回到决策810且方法800可如本文中所描述继续。
返回到决策814,如果净空百分比小于CPU利用率,则方法可前进到方框818,且功率控制器可确定有效CPU利用率是否大于最佳有效CPU利用率。如果不是,则方法800可移动到方框820,且功率控制器可将净空百分比变量增加整数一(HeadroomPCT=HeadroomPCT+1)。其后,方法800可返回到决策814且方法800可如本文中所描述继续下去。
返回到决策818,如果有效CPU利用率大于最佳有效CPU利用率,则方法800可继续到决策822,且控制器可例如使用下文所描述的图10中所示的方法步骤来确定滤波器是否足够快地响应。如果不是,则方法800可返回到方框820且如本文中所描述继续下去。否则,方法800可前进到方框824,且控制器可将BestEffectiveCPUUtilization设定成等于EffectiveCPUUtilization。在特定方面中,可如图9中所示确定EffectiveCPUUtilization,如下文所描述。在方框824处,可将BestAlpha设定成α的值且将BestHeadRoomPct设定为HeadroomPCT的值。方法800可从方框824返回到方框820且方法800可随后如本文中所描述继续。
现在参看图9,展示计算EffectiveCPUUtilization的方法且开始于方框902。在方框902处,将EffectiveCPUUtilization设定成等于零。接下来,在决策904处,可确定当前CPUUtilization是否大于净空百分比(HeadroomPCT)。如果不是,则方法900可结束。否则,方法900可前进到方框906,且可例如使用以下公式确定EffectiveCPUUtilization:EffectiveCPUUtilization=((maxFreq*CPUUtilizationPct)/EffectiveFrequency
其中,
maxFreq=最大频率,
CPUUtilizationPct=当前CPU利用率百分比,且
EffectiveFrequency=根据以下公式确定的有效频率:
EffectiveFrequency=(((maxFreq+minFreq>>alpha))/CPUUtilizationPct-HeadroomPCT))*100)
其中,
maxFreq=最大频率,
minFreq=最小频率,
α=滤波器变量,
CPUUtilizationPct=当前CPU利用率百分比,且
HeadroomPCT=当前净空百分比。
>>=右移
在于方框906处确定EffectiveCPUUtilization之后,方法900可结束。
图10说明确定滤波器是否足够快地响应的方法,其经展示且大体上标示为1000。开始于方框1002处,将忙时间变量BusyMS设定为(CPUUtilizationDeadline*CPUUtilizationPct)/100。在方框1004处,可将闲置时间变量IdleMS设定为(CPUUtilization-BusyMS)。在1006处,可将性能水平变量pLevel设定为零。
移动到方框1008,可将稳定状态滤波器IIR设定为((2^(IIR_Size-alpha))-1)。在方框1010处,可确定IIR2Freq是否大于最大频率maxFreq。如果不是,则方法1000可移动到方框1012,且其可指示滤波器正在预定时间内作出响应,例如,其足够快地响应。其后,方法1000可结束。
返回到决策1010,如果IIR2Freq小于最大频率,则方法1000可前进到方框1014,且可将稳定状态IIR值设定为零。其后,可确定BusyMS是否大于零且IIR2Freq是否小于maxFreq。如果不是,则方法1000可前进到方框1012且方法1000可如本文中所描述继续。如果是,则方法1000可前进到决策1018,且可确定IdleMS是否大于零。如果是,则方法1000可移动到方框1020,且可将busyPulse值设定为ceiling(busyMS/idleMS),其中如果(busyMS/idleMS)含有非零分数部分,则取上限装置四舍五入为下一最高整数值。而且,可将idlePulse值设定为等于ceiling(idleMS/busyMS)。其后,在方框1022处,可执行UpdateIIRBusy方法以便在先前所计算的整数个忙循环内更新稳定状态IIR。举例来说,UpdateIIRBusy方法可为图12中所示的UpdateIIRBusy方法。此外,可执行UpdateIIRIdle方法以便在先前所计算的整数个闲置循环内更新稳定状态IIR。举例来说,UpdateIIRIdle方法可为图11中所示的UpdateIIRIdle方法。在方框1022处,可将BusyMS值减去BusyPulse值,且可将IdleMS值减去IdlePulse值。其后,方法1000可返回到决策1016且方法1000可如本文中所描述继续下去。
图11说明UpdateIIRIdle方法,其大体上标示为1100。方法1100可以do循环开始于方框1102,其中在执行UpdateIIRIdle方法时,可执行以下步骤。在决策1104处,可确定持续时间变量是否大于零。如果不是,则方法1100可结束。否则,如果持续时间大于零,则方法1100可前进到方框1106,且可将滤波器值IIR减去IIR>>α(例如,将整数IIR值右移α位)(IIR=IIR-(IIR>>α)。其后,方法1100可移动到方框1108,且可将持续时间减去整数一(持续时间=持续时间-1)。方法1100可随后返回到决策1104,且如本文中所描述继续下去。
图12说明UpdateIIRBusy方法,其大体上标示为1200。方法1200可以do循环开始于方框1202,其中在执行UpdateIIRBusy方法时,可执行以下步骤。在决策1204处,可确定持续时间变量是否大于零。如果不是,则方法1200可结束。否则,如果持续时间大于零,则方法1200可前进到方框1206,且可使用以下公式确定滤波器值IIR:
IIR=(IIR-(IIR>>alpha))+((l<<(IIR_Size-alpha))-1
其中,
IIR=滤波器值,
α=变量,且
IIR_Size=IIR的大小。
X>>Y=将整数值X右移Y位(即,X/(2^Y))
X<<Y=将整数值X左移Y位(即,X*(2^Y))
在方框1206处确定IIR之后,方法1200可移动到方框1208,且可将持续时间减去整数一(持续时间=持续时间-1)。方法1200可随后返回到决策1204,且如本文中所描述继续下去。
应理解,本文中所描述的方法步骤不需要一定以所描述的次序执行。此外,例如“其后”、“随后”、“接下来”等词语无意限制步骤的次序。这些词语仅用于引导读者阅读方法步骤的描述。另外,本文中所描述的方法被描述为可在便携式计算装置(PCD)上执行。PCD可为移动电话装置、便携式数字助理装置、智能本计算装置、上网本计算装置、膝上型计算装置、桌上型计算装置或其组合。
本文中所描述的系统和方法提供一种防止DCVS将工作负荷延滞得过多并导致任务失败的方法。所述系统和方法利用稳定状态性能保证。所述稳定状态性能保证可为CPU可超过指定CPU利用率(即,忙百分比)的最大时间量(即,期限)。通过使用稳定状态性能保证,可消除为了满足QoS要求而对DCVS算法和相关性能特性的特用分析。
可将稳定状态性能组件建模为滤波器,且滤波器参数可经计算以使得滤波器的响应性得到保证以满足稳定状态CPU利用率限值和稳定状态CPU利用率限值期限。举例来说,在特定方面中,为满足1000毫秒期限内最大百分之九十(90%)的CPU利用率要求,可在26的α(取决于性能水平)下以1毫秒粒度的忙/闲置输入来配置简单的IIR滤波器。在特定方面中,为确定α的正确值,可将滤波器设定为其最低值,且随后可在滤波器中执行忙/闲置链以匹配CPU利用率限值。随后对于每一可能的α,可选择满足CPU利用率期限的最大α。
在一个或一个以上示范性方面中,可以硬件、软件、固件或其任何组合来实施所描述的功能。如果以软件实施,则可将功能作为一个或一个以上指令或代码而存储在计算机程序产品(例如,机器可读媒体(即,计算机可读媒体))上或经由计算机程序产品进行传输。计算机可读媒体包含计算机存储媒体与通信媒体两者,通信媒体包含促进将计算机程序从一处传递到另一处的任何媒体。存储媒体可为可由计算机存取的任何可用媒体。举例来说而非限制,此计算机可读媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用以运载或存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。而且,可恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电及微波的无线技术从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波的无线技术包含于媒体的定义中。如本文中所使用,磁盘及光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各者的组合也应包含在计算机可读媒体的范围内。
虽然已详细地说明和描述了选定的方面,但将理解,在不脱离由所附权利要求书界定的本发明的精神和范围的情况下,可在其中进行各种替代和更改。
Claims (40)
1.一种动态地控制中央处理单元的方法,所述方法包括:
确定CPU何时进入稳定状态;
在所述CPU进入稳定状态时计算所述CPU的最佳频率;
保证稳定状态CPU利用率;以及
保证稳定状态CPU利用率期限。
2.根据权利要求1所述的方法,其进一步包括:
将响应性值设定成最不可能的响应性值。
3.根据权利要求2所述的方法,其进一步包括:
确定所述响应性值是否大于最快可能的响应性值。
4.根据权利要求3所述的方法,其进一步包括:
在所述响应性大于所述最快可能的响应性值时,将时间变量设定成等于一。
5.根据权利要求4所述的方法,其进一步包括:
确定所述时间变量是否小于CPU利用率期限。
6.根据权利要求5所述的方法,其进一步包括:
在所述时间小于所述CPU利用率期限时,增加所述响应性值。
7.根据权利要求5所述的方法,其进一步包括:
在所述时间变量小于所述CPU利用率期限时,确定稳定状态CPU频率。
8.根据权利要求7所述的方法,其进一步包括:
确定所述稳定状态CPU频率是否大于最大CPU频率。
9.根据权利要求8所述的方法,其进一步包括:
在所述稳定状态CPU频率不大于所述最大CPU频率时,将所述时间变量增加整数一。
10.根据权利要求8所述的方法,其进一步包括:
在所述稳定状态CPU频率大于所述最大CPU频率时,将稳定状态响应性变量设定成等于所述响应性值。
11.一种无线装置,其包括:
用于确定CPU何时进入稳定状态的装置;
用于在所述CPU进入稳定状态时计算所述CPU的最佳频率的装置;
用于保证稳定状态CPU利用率的装置;以及
用于保证稳定状态CPU利用率期限的装置。
12.根据权利要求11所述的无线装置,其进一步包括:
用于将响应性值设定成最不可能的响应性值的装置。
13.根据权利要求12所述的无线装置,其进一步包括:
用于确定所述响应性值是否大于最快可能的响应性值的装置。
14.根据权利要求13所述的无线装置,其进一步包括:
用于在所述响应性大于所述最快可能的响应性值时将时间变量设定成等于一的装置。
15.根据权利要求14所述的无线装置,其进一步包括:
用于确定所述时间变量是否小于CPU利用率期限的装置。
16.根据权利要求15所述的无线装置,其进一步包括:
用于在所述时间小于所述CPU利用率期限时增加所述响应性值的装置。
17.根据权利要求15所述的无线装置,其进一步包括:
用于在所述时间变量小于所述CPU利用率期限时确定稳定状态CPU频率的装置。
18.根据权利要求17所述的无线装置,其进一步包括:
用于确定所述稳定状态CPU频率是否大于最大CPU频率的装置。
19.根据权利要求18所述的无线装置,其进一步包括:
用于在所述稳定状态CPU频率不大于所述最大CPU频率时将所述时间变量增加整数一的装置。
20.根据权利要求18所述的无线装置,其进一步包括:
用于在所述稳定状态CPU频率大于所述最大CPU频率时将稳定状态响应性变量设定成等于所述响应性值的装置。
21.一种无线装置,其包括:
处理器,其中所述处理器可操作以:
确定CPU何时进入稳定状态;
在所述CPU进入稳定状态时计算所述CPU的最佳频率;
保证稳定状态CPU利用率;以及
保证稳定状态CPU利用率期限。
22.根据权利要求21所述的无线装置,其中所述处理器进一步可操作以:
将响应性值设定成最不可能的响应性值。
23.根据权利要求22所述的无线装置,其中所述处理器进一步可操作以:
确定所述响应性值是否大于最快可能的响应性值。
24.根据权利要求23所述的无线装置,其中所述处理器进一步可操作以:
在所述响应性大于所述最快可能的响应性值时,将时间变量设定成等于一。
25.根据权利要求24所述的无线装置,其中所述处理器进一步可操作以:
确定所述时间变量是否小于CPU利用率期限。
26.根据权利要求25所述的无线装置,其中所述处理器进一步可操作以:
在所述时间小于所述CPU利用率期限时,增加所述响应性值。
27.根据权利要求25所述的无线装置,其中所述处理器进一步可操作以:
在所述时间变量小于所述CPU利用率期限时,确定稳定状态CPU频率。
28.根据权利要求27所述的无线装置,其中所述处理器进一步可操作以:
确定所述稳定状态CPU频率是否大于最大CPU频率。
29.根据权利要求28所述的无线装置,其中所述处理器进一步可操作以:
在所述稳定状态CPU频率不大于所述最大CPU频率时,将所述时间变量增加整数一。
30.根据权利要求28所述的无线装置,其中所述处理器进一步可操作以:
在所述稳定状态CPU频率大于所述最大CPU频率时,将稳定状态响应性变量设定成等于所述响应性值。
31.一种存储器媒体,其包括:
用于确定CPU何时进入稳定状态的至少一个指令;
用于在所述CPU进入稳定状态时计算所述CPU的最佳频率的至少一个指令;
用于保证稳定状态CPU利用率的至少一个指令;以及
用于保证稳定状态CPU利用率期限的至少一个指令。
32.根据权利要求31所述的存储器媒体,其进一步包括:
用于将响应性值设定成最不可能的响应性值的至少一个指令。
33.根据权利要求32所述的存储器媒体,其进一步包括:
用于确定所述响应性值是否大于最快可能的响应性值的至少一个指令。
34.根据权利要求33所述的存储器媒体,其进一步包括:
用于在所述响应性大于所述最快可能的响应性值时将时间变量设定成等于一的至少一个指令。
35.根据权利要求34所述的存储器媒体,其进一步包括:
用于确定所述时间变量是否小于CPU利用率期限的至少一个指令。
36.根据权利要求35所述的存储器媒体,其进一步包括:
用于在所述时间小于所述CPU利用率期限时增加所述响应性值的至少一个指令。
37.根据权利要求35所述的存储器媒体,其进一步包括:
用于在所述时间变量小于所述CPU利用率期限时确定稳定状态CPU频率的至少一个指令。
38.根据权利要求37所述的存储器媒体,其进一步包括:
用于确定所述稳定状态CPU频率是否大于最大CPU频率的至少一个指令。
39.根据权利要求38所述的存储器媒体,其进一步包括:
用于在所述稳定状态CPU频率不大于所述最大CPU频率时将所述时间变量增加整数一的至少一个指令。
40.根据权利要求38所述的存储器媒体,其进一步包括:
用于在所述稳定状态CPU频率大于所述最大CPU频率时将稳定状态响应性变量设定成等于所述响应性值的至少一个指令。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US28699909P | 2009-12-16 | 2009-12-16 | |
US61/286,999 | 2009-12-16 | ||
US12/944,516 | 2010-11-11 | ||
US12/944,516 US20110145559A1 (en) | 2009-12-16 | 2010-11-11 | System and method for controlling central processing unit power with guaranteed steady state deadlines |
PCT/US2010/059550 WO2011084332A2 (en) | 2009-12-16 | 2010-12-08 | System and method for controlling central processing unit power with guaranteed steady state deadlines |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102687097A true CN102687097A (zh) | 2012-09-19 |
CN102687097B CN102687097B (zh) | 2016-01-27 |
Family
ID=44144219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080056533.1A Active CN102687097B (zh) | 2009-12-16 | 2010-12-08 | 用于以保证的稳定状态期限来控制中央处理单元功率的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20110145559A1 (zh) |
EP (1) | EP2513778A2 (zh) |
JP (2) | JP2013513897A (zh) |
KR (1) | KR101516859B1 (zh) |
CN (1) | CN102687097B (zh) |
WO (1) | WO2011084332A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104756043A (zh) * | 2012-11-05 | 2015-07-01 | 高通股份有限公司 | 用于以有保证的瞬态最后期限来控制中央处理单元功率的系统和方法 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US9128705B2 (en) * | 2009-12-16 | 2015-09-08 | Qualcomm Incorporated | System and method for controlling central processing unit power with reduced frequency oscillations |
US8909962B2 (en) * | 2009-12-16 | 2014-12-09 | 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 |
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 |
US9104411B2 (en) | 2009-12-16 | 2015-08-11 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient 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 |
CN102591443A (zh) * | 2011-12-29 | 2012-07-18 | 华为技术有限公司 | 一种虚拟化集群整合方法、装置及系统 |
US9116181B2 (en) | 2011-12-29 | 2015-08-25 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for virtual cluster integration |
KR101795378B1 (ko) | 2012-08-07 | 2017-11-09 | 현대자동차 주식회사 | 차량 하중에 기초하여 엔진 토크를 보정하는 방법 및 장치 |
CN103853307A (zh) * | 2012-12-04 | 2014-06-11 | 鸿富锦精密工业(深圳)有限公司 | 电子装置及降低处理器系统功耗的方法 |
EP2954385A1 (en) * | 2013-02-05 | 2015-12-16 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060036878A1 (en) * | 2004-08-11 | 2006-02-16 | Rothman Michael A | System and method to enable processor management policy in a multi-processor environment |
CN101211215A (zh) * | 2006-12-29 | 2008-07-02 | Arm有限公司 | 管理数据处理设备中的处理器的性能 |
US7467291B1 (en) * | 2005-02-28 | 2008-12-16 | Sun Microsystems, Inc. | System and method for calibrating headroom margin |
US7596709B2 (en) * | 2000-12-30 | 2009-09-29 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
Family Cites Families (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS593651A (ja) * | 1982-06-30 | 1984-01-10 | Fujitsu Ltd | フア−ムウエアによる性能測定システム |
US5644769A (en) * | 1993-06-14 | 1997-07-01 | Matsushita Electric Industrial Co., Ltd. | System for optimizing program by virtually executing the instruction prior to actual execution of the program to invalidate unnecessary instructions |
JPH10268963A (ja) * | 1997-03-28 | 1998-10-09 | Mitsubishi Electric Corp | 情報処理装置 |
JPH11184554A (ja) * | 1997-12-24 | 1999-07-09 | Mitsubishi Electric Corp | クロック制御タイプ情報処理装置 |
KR100613201B1 (ko) * | 2000-08-28 | 2006-08-18 | 마이크로코넥트 엘엘씨 | 씨피유 사용량 측정 방법 |
TW521177B (en) * | 2000-08-31 | 2003-02-21 | Primarion Inc | Apparatus and system for providing transient suppression power regulation |
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 |
US6901522B2 (en) * | 2001-06-07 | 2005-05-31 | Intel Corporation | System and method for reducing power consumption in multiprocessor system |
US7058824B2 (en) * | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
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 |
US6978389B2 (en) * | 2001-12-20 | 2005-12-20 | Texas Instruments Incorporated | Variable clocking in an embedded symmetric multiprocessor system |
JP2003256069A (ja) * | 2002-03-05 | 2003-09-10 | Ricoh Co Ltd | 制御装置及び複合機 |
JP2003271401A (ja) * | 2002-03-18 | 2003-09-26 | Fujitsu Ltd | 負荷監視機能を有するマイクロプロセッサ |
US7240223B2 (en) * | 2003-05-07 | 2007-07-03 | Apple Inc. | Method and apparatus for dynamic power management in a processor system |
US7134031B2 (en) * | 2003-08-04 | 2006-11-07 | Arm Limited | Performance control within a multi-processor system |
JP4549652B2 (ja) * | 2003-10-27 | 2010-09-22 | パナソニック株式会社 | プロセッサシステム |
US7107187B1 (en) * | 2003-11-12 | 2006-09-12 | Sprint Communications Company L.P. | Method for modeling system performance |
US20050108591A1 (en) * | 2003-11-13 | 2005-05-19 | Mendelson Geoffrey S. | Method for reduced power consumption |
US7133806B2 (en) * | 2004-05-13 | 2006-11-07 | Ittiam Systems (P) Ltd | Method and apparatus for measurement of processor-utilization |
US7401240B2 (en) * | 2004-06-03 | 2008-07-15 | International Business Machines Corporation | Method for dynamically managing power in microprocessor chips according to present processing demands |
US7219245B1 (en) * | 2004-06-03 | 2007-05-15 | Advanced Micro Devices, Inc. | Adaptive CPU clock management |
KR100716730B1 (ko) * | 2004-06-11 | 2007-05-14 | 삼성전자주식회사 | 중앙 처리 장치의 아이들 상태에서의 시스템 전력 소모절감을 위한 방법 및 그 방법을 적용한 모바일 장치 |
US7761874B2 (en) * | 2004-08-13 | 2010-07-20 | Intel Corporation | Managing processing system power and performance based on utilization trends |
US7711966B2 (en) * | 2004-08-31 | 2010-05-04 | Qualcomm Incorporated | Dynamic clock frequency adjustment based on processor load |
US7437581B2 (en) * | 2004-09-28 | 2008-10-14 | Intel Corporation | Method and apparatus for varying energy per instruction according to the amount of available parallelism |
US7543161B2 (en) * | 2004-09-30 | 2009-06-02 | International Business Machines Corporation | Method and apparatus for tracking variable speed microprocessor performance caused by power management in a logically partitioned data processing system |
US7370189B2 (en) * | 2004-09-30 | 2008-05-06 | Intel Corporation | Method and apparatus for establishing safe processor operating points in connection with a secure boot |
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 |
DE102004059996B4 (de) * | 2004-12-13 | 2006-10-05 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Einstellen der Taktfrequenz eines Prozessors |
US7228446B2 (en) * | 2004-12-21 | 2007-06-05 | Packet Digital | Method and apparatus for on-demand power management |
US7369967B1 (en) * | 2004-12-27 | 2008-05-06 | Sprint Communications Company L.P. | System and method for monitoring and modeling system performance |
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 |
JP4082706B2 (ja) * | 2005-04-12 | 2008-04-30 | 学校法人早稲田大学 | マルチプロセッサシステム及びマルチグレイン並列化コンパイラ |
US7490254B2 (en) * | 2005-08-02 | 2009-02-10 | Advanced Micro Devices, Inc. | Increasing workload performance of one or more cores on multiple core processors |
US7548859B2 (en) * | 2005-08-03 | 2009-06-16 | Motorola, Inc. | Method and system for assisting users in interacting with multi-modal dialog systems |
US7233188B1 (en) * | 2005-12-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Methods and apparatus for reducing power consumption in a processor using clock signal control |
US7689838B2 (en) * | 2005-12-22 | 2010-03-30 | Intel Corporation | Method and apparatus for providing for detecting processor state transitions |
US7263457B2 (en) * | 2006-01-03 | 2007-08-28 | Advanced Micro Devices, Inc. | System and method for operating components of an integrated circuit at independent frequencies and/or voltages |
US7650527B2 (en) * | 2006-02-07 | 2010-01-19 | Broadcom Corporation | MIPS recovery technique |
US20070260898A1 (en) * | 2006-05-03 | 2007-11-08 | Edward Burton | Voltage regulator with suspend mode |
US20080005591A1 (en) * | 2006-06-28 | 2008-01-03 | Trautman Mark A | Method, system, and apparatus for dynamic thermal management |
US7584369B2 (en) * | 2006-07-26 | 2009-09-01 | International Business Machines Corporation | Method and apparatus for monitoring and controlling heat generation in a multi-core processor |
US7819349B2 (en) * | 2006-10-16 | 2010-10-26 | Owens Corning Intellectual Capital, Llc | Entrance chute for blowing insulation machine |
US7949887B2 (en) * | 2006-11-01 | 2011-05-24 | Intel Corporation | Independent power control of processing cores |
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 |
US7783906B2 (en) * | 2007-02-15 | 2010-08-24 | International Business Machines Corporation | Maximum power usage setting for computing device |
US7730340B2 (en) * | 2007-02-16 | 2010-06-01 | Intel Corporation | Method and apparatus for dynamic voltage and frequency scaling |
US7865751B2 (en) * | 2007-06-18 | 2011-01-04 | Intel Corporation | Microarchitecture controller for thin-film thermoelectric cooling |
US7902800B2 (en) * | 2007-07-13 | 2011-03-08 | Chil Semiconductor Corporation | Adaptive power supply and related circuitry |
US8356306B2 (en) * | 2007-07-31 | 2013-01-15 | Hewlett-Packard Development Company, L.P. | Workload management controller using dynamic statistical control |
US20090049314A1 (en) * | 2007-08-13 | 2009-02-19 | Ali Taha | Method and System for Dynamic Voltage and Frequency Scaling (DVFS) |
US7945804B2 (en) * | 2007-10-17 | 2011-05-17 | International Business Machines Corporation | Methods and systems for digitally controlled multi-frequency clocking of multi-core processors |
US20090150696A1 (en) * | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US8024590B2 (en) * | 2007-12-10 | 2011-09-20 | Intel Corporation | Predicting future power level states for processor cores |
JP4488072B2 (ja) * | 2008-01-18 | 2010-06-23 | 日本電気株式会社 | サーバシステム、及びサーバシステムの電力削減方法 |
US8245236B2 (en) * | 2008-02-27 | 2012-08-14 | International Business Machines Corporation | Lock based moving of threads in a shared processor partitioning environment |
JP4996519B2 (ja) * | 2008-03-27 | 2012-08-08 | パナソニック株式会社 | 仮想マルチプロセッサ、システムlsi、携帯電話機器、及び仮想マルチプロセッサの制御方法 |
US20090271646A1 (en) * | 2008-04-24 | 2009-10-29 | Vanish Talwar | Power Management Using Clustering In A Multicore System |
US8170845B2 (en) * | 2008-09-24 | 2012-05-01 | International Business Machines Corporation | Method and apparatus for automatic performance modeling with load dependent service times and overheads |
US8195962B2 (en) * | 2008-11-11 | 2012-06-05 | Globalfoundries Inc. | Method and apparatus for regulating power consumption |
US8924975B2 (en) * | 2009-07-23 | 2014-12-30 | Empire Technology Development Llc | Core selection for applications running on multiprocessor systems based on core and application characteristics |
US9563250B2 (en) * | 2009-12-16 | 2017-02-07 | Qualcomm Incorporated | System and method for controlling central processing unit power based on inferred workload parallelism |
US9128705B2 (en) * | 2009-12-16 | 2015-09-08 | Qualcomm Incorporated | System and method for controlling central processing unit power with reduced frequency oscillations |
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 |
US8650426B2 (en) * | 2009-12-16 | 2014-02-11 | Qualcomm Incorporated | System and method for controlling central processing unit power in a virtualized system |
US9104411B2 (en) * | 2009-12-16 | 2015-08-11 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
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 |
-
2010
- 2010-11-11 US US12/944,516 patent/US20110145559A1/en not_active Abandoned
- 2010-12-08 WO PCT/US2010/059550 patent/WO2011084332A2/en active Application Filing
- 2010-12-08 EP EP10798873A patent/EP2513778A2/en not_active Withdrawn
- 2010-12-08 CN CN201080056533.1A patent/CN102687097B/zh active Active
- 2010-12-08 JP JP2012544630A patent/JP2013513897A/ja active Pending
- 2010-12-08 KR KR1020127018443A patent/KR101516859B1/ko not_active IP Right Cessation
-
2014
- 2014-08-28 JP JP2014173648A patent/JP2015008006A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596709B2 (en) * | 2000-12-30 | 2009-09-29 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
US20060036878A1 (en) * | 2004-08-11 | 2006-02-16 | Rothman Michael A | System and method to enable processor management policy in a multi-processor environment |
US7467291B1 (en) * | 2005-02-28 | 2008-12-16 | Sun Microsystems, Inc. | System and method for calibrating headroom margin |
CN101211215A (zh) * | 2006-12-29 | 2008-07-02 | Arm有限公司 | 管理数据处理设备中的处理器的性能 |
Non-Patent Citations (1)
Title |
---|
COMPAQ COMPUTER CORPORATION等: "Advanced Configuration and Power Interface Specification", 《WWW.ACPI.INFO/DOWNLOADS/ACPISPEC20.PDF》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104756043A (zh) * | 2012-11-05 | 2015-07-01 | 高通股份有限公司 | 用于以有保证的瞬态最后期限来控制中央处理单元功率的系统和方法 |
CN104756043B (zh) * | 2012-11-05 | 2016-06-08 | 高通股份有限公司 | 用于以有保证的瞬态最后期限来控制中央处理单元功率的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2015008006A (ja) | 2015-01-15 |
KR20120086378A (ko) | 2012-08-02 |
CN102687097B (zh) | 2016-01-27 |
WO2011084332A9 (en) | 2011-12-15 |
EP2513778A2 (en) | 2012-10-24 |
JP2013513897A (ja) | 2013-04-22 |
WO2011084332A2 (en) | 2011-07-14 |
US20110145559A1 (en) | 2011-06-16 |
KR101516859B1 (ko) | 2015-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102687097B (zh) | 用于以保证的稳定状态期限来控制中央处理单元功率的系统和方法 | |
CN102934045B (zh) | 用于以保证的瞬时期限来控制中央处理单元功率的系统和方法 | |
KR101518163B1 (ko) | 멀티 코어 중앙 처리 장치에서의 코어 클록들을 비동기적으로 및 독립적으로 제어하는 시스템 및 방법 | |
US9081558B2 (en) | System and method for dynamically controlling a plurality of cores in a multicore central processing unit based on tempature | |
JP5893568B2 (ja) | 推定される作業負荷並列性に基づき中央処理装置電力を制御するためのシステムおよび方法 | |
US8904399B2 (en) | System and method of executing threads at a processor | |
KR101411729B1 (ko) | 감소된 주파수 발진들을 갖는 중앙 처리 장치 전력을 제어하기 위한 시스템 및 방법 | |
JP2013516710A (ja) | 中央処理装置内のデータをサンプリングするシステムおよび方法 | |
JP5460883B2 (ja) | ワークロードの要求に基づいて動的なクロックおよび電圧切替えアルゴリズムを調整するシステムおよび方法 |
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 |