CN103460189A - 用于管理处理器的功率消耗状态的技术 - Google Patents
用于管理处理器的功率消耗状态的技术 Download PDFInfo
- Publication number
- CN103460189A CN103460189A CN201280008516XA CN201280008516A CN103460189A CN 103460189 A CN103460189 A CN 103460189A CN 201280008516X A CN201280008516X A CN 201280008516XA CN 201280008516 A CN201280008516 A CN 201280008516A CN 103460189 A CN103460189 A CN 103460189A
- Authority
- CN
- China
- Prior art keywords
- report value
- latency tolerance
- tolerance report
- interruption
- affairs
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- 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/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- 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/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
描述了用于确定临时的容许时延报告(tLTR)值的技术。处理单元必须在由tLTR指定的持续期间内响应装置中断,以确保没有输入数据由于装置缓冲器溢出而丢失。tLTR值可用于当装置驱动器期望用于事务的多次的连续中断时防止处理单元进入太深的睡眠状态。
Description
技术领域
本文公开的主题一般地涉及用于管理装置的功率消耗的技术。
背景技术
例如膝上计算机、平板计算机、以及手持装置的移动装置与提供例如网络连接性和音频与视频接口的操作的装置相连接。在该装置和主机系统的中央处理单元(CPU)之间的通信可以由该装置通过中断或者由该主机通过轮询来进行驱动。中断驱动方法通常更加省电,因为它允许主机和装置只要可能就停留在低功率状态。
为了例如低功率使用、性能以及实现成本的考虑,使用例如PCI快速(PCIe)和USB的接口以及其他新兴的接口,例如安全数字输入输出(SDIO)规范3.0版和4.0版及其修订版和变型,将装置连接到平台。基于SDIO的装置为一项事务生成多次连续的和紧密间隔的中断。多次连续的和紧密间隔的中断可能引起在该平台和别的装置之间的通信的处理能力以及CPU和装置的功率消耗方面的严重退化。
使用SDIO接口的网络接口可以为一项事务生成多次中断。就网络接口来说,单个事务可以包括接收或发送一个分组。例如,当网络接口使用SDIO接口时,网络接口发出多次中断以指示对分组的接收、请求主机对该分组的处理、以及为主机的处理而转送该分组。对比起来,就PCIe来说,当网络接口接收分组时,网络接口会通过直接存储器存取(DMA)将分组转送到主机,而不必在完成DMA之后询问以及发出单个中断。
例如,当装置使用SDIO接口时,为完成一项事务可能存在密集间隔的总计七个(或者更多个,取决于装置和驱动器规范)中断。按照SDIO标准,这些中断是连续的,也就是,仅仅在先前的一次中断已经被主机处理并且该装置接收到应答之后,该装置才发出下次中断。在任何给定时间,仅可以存在一次未完成的中断。结果,在一组中断中,不能将中断束在一起并提供给主机。
当OS内核与Linux OS兼容时,OS根据历史信息以及使用某一平均机制和下一定时器信息来估计下一空闲持续时间。当定时器中断是主要的中断源时,这种机制执行得相当好。在IEEE802.11兼容网络接口的情况下,该网络接口利用SDIO接口与主机耦合并生成密集间隔的中断,需要用于该平均机制的多次迭代,以对短暂的空闲持续时间作出反应。这可以促使CPU在CPU校正其进程并且进入更浅功率状态以前多次进入低功率状态(例如C6),并且可以更加迅速地对频繁的中断作出反应。
图1描述了在中断之间CPU进入深层睡眠C6状态的示例。状态C6恢复时延Rx比在更浅状态下要长得多(例如,用于C6的140微秒对比用于C1的1微秒)。因为中断是连续的,所以用于每个中断的延迟增加,这会引起对于整个事务的更久的延迟。这种延迟限制了总的处理能力比可利用的物理带宽低得多。例如,在一个具体设置中,所达到的处理能力低于10Mbps,而可用带宽大于20Mbps。如果CPU不进入低功率状态,则可以达到可用带宽。有时,对于例如基于TCP的通信的事务来说,对所接收的通信的响应可能是更慢的,并且因此往返时间(RTT)可能是不能接受的。除性能降低之外,进入中断之间的更深的节能状态可能消耗更多功率,这是因为能量被用来对CPU断电和加电。测量显示在平台和本地访问点之间的基于TCP的通信的处理能力降低了,并且当CPU接收多次连续的密集间隔的中断并且CPU调度策略是Linux默认的空闲调节器时,CPU功率使用实质上增加了。有时,在接收多次连续的密集间隔的中断时,期望减少CPU的功率消耗并且改善平台和访问点之间的处理能力。
附图说明
通过附图中的示例,而不是作为限制来说明本发明的实施例,并且在附图中,同样的参考数字涉及类似的元件。
图1描述了在中断之间CPU进入深层睡眠状态的示例。
图2描述了根据实施例的示例系统。
图3描述了根据实施例的过程。
图4描述了可以使用本发明实施例的示例系统。
具体实施方式
贯穿本说明书的对于“一个实施例”或“实施例”的参考意味着所描述的与实施例有关的特定特征、结构或特性被归入到本发明的至少一个实施例中。因此在遍及本说明书的不同位置中的短语“在一个实施例中”或者“实施例”的出现不必要完全指的是同一实施例。此外,可以在一个或多个实施例中组合这些特定特征、结构或特性。
图2描述了根据实施例的示例系统。这个系统可以包括操作系统(OS)内核102,其与装置150和中央处理单元(CPU)152通信。OS内核102可以是Linux或Microsoft Windows兼容的。装置150可以是任何类型的装置,例如无线的或有线的网络接口、存储装置、显示装置、或诸如触摸屏的用户界面装置。可以由一个或多个处理核心和/或每个核心的线程来替代CPU152。
OS102可以使得CPU152进入更深的节能状态Cx。例如,空闲状态可以是C1、C2、C4或C6中的任何一个。空闲状态C1、C2、C4或C6与Intel公司的处理器相关联,然而也可以使用用于其他处理器的空闲状态。多个空闲状态在连续的空闲状态中可以是有效的,CPU展现降低的功率消耗。对于这些空闲状态,可以停止CPU152的时钟信号,并且可以减少内在的CPU电压。通常,用于空闲状态的数目越高,所消耗的功率就越低。低功率状态消耗较少功率,但是存在更长的进入和退出低功率状态的时间。另外,低功率状态要求更长的能量平衡时间,即,保持在低功率状态中以调整进入和退出那个状态的时间。
高级配置和电源接口(ACPI)104可以提供处理器相关的信息给内核空间,以便在该核心空间运行的其他例程可以访问所述信息。处理器相关的信息可以包括对于不同的Cx功率状态的能量平衡时间(Ex)和恢复时延(Rx)。能量平衡时间是装置为了补偿进入和退出较低功率状态Cx所消耗的功率而花费的时间。每个Cx状态都具有相关联的恢复时延Rx以返回到C0状态。代替于使用ACPI,可以使用统一可扩展固件接口(UEFI)、简单固件接口(SFI)、或在内核中的与硬编码处理器相关的信息。
调度程序106为CPU152调度定时器。当CPU152从状态C0进入睡眠状态时,定时器确定什么时候CPU152将恢复到C0状态。
由装置150的设计者提供装置驱动器108。在不同的实施例中,装置驱动器108将为装置150确定临时容许时延报告(tLTR)值。CPU152必须在由tLTR指定的持续时间内响应中断,以确保没有输入数据由于装置缓冲器溢出而丢失。当装置驱动器108期望用于事务的多次连续的中断时,tLTR值可用于防止CPU进入太深的C状态。通常,当CPU进入更深的睡眠状态时,由于更长的恢复时延,CPU响应将变得更慢。因此,如果装置迅速地生成中断,则可以将tLTR设置为小的值,以潜在地防止CPU进入太深的睡眠状态,并且因此花费太长时间来退出睡眠状态和恢复正常操作(例如,C0)且对中断响应过慢。另一方面,有时,如果在处理中断中的延迟是可接受的,并且期望来自CPU进入更深的睡眠状态的额外的节能,则可以将tLTR设置为更大的值。
有时,将tLTR值选取为与从装置150到其主机的两个中断之间的间隔时间大致相同的值,以允许该主机在充足的时间内进行响应。在中断之间的间隔时间可以在作为装置属性的设计时间获得,或者可以通过在运行时间期间观察中断之间的间隔时间的装置驱动器108获得。装置属性可以包括装置多快可以发出中断。
不同的技术可用于在运行时间期间观察中断之间的间隔时间。例如,驱动器108可以发布一相对大的tLTR值并且观察来自装置150的中断间隔时间。驱动器108可以逐渐地减少该tLTR值,直到中断之间的间隔时间集中于一相对规律的间隔时间为止。在另一个示例中,驱动器108可以发出为0的tLTR,以尝试在短期内将CPU保持在C0状态。驱动器108可以观察多个装置中断之间的间隔时间,并且可以将所观察到的间隔时间值用作tLTR。在另一个示例中,驱动器108可以在一段时间内观察中断间隔时间并且确定平均的中断间隔时间。可以将tLTR设置为平均中断值。
可以根据IO计数器值确定tLTR值。可以使用查找表将IO计数器值转换为tLTR值。转换公式可用于将IO计数器转换为tLTR值。IO计数器可以是指示IO装置的多个正在进行的输入/输出(IO)活动的计数器。例如,IO计数器可以指示对存储器信道的输入与输出请求的总数。
如果中断间隔时间比最大值Ex更长,该最大值Ex相应于最深Cx状态的能量平衡时间,那么默认的装置LTR值不被修改作为tLTR,因为CPU即使在其最深睡眠状态下也不需要更快地响应。如果中断间隔时间短于最大值Ex,那么装置驱动器108发布tLTR。装置驱动器108可以例如从ACPI表104或另一个源获得Ex值。驱动器获得Ex以决定它是否需要发布代替LTR的tLTR。空闲的调节器随后比较tLTR和Rx,以确定进入哪个状态。另外,装置驱动器108比较tLTR和装置150的默认装置LTR。如果tLTR比装置默认LTR大,那么装置驱动器108提供装置默认LTR来代替确定的tLTR,这是因为装置默认LTR设置了CPU152对中断的响应时间的上限。
有时,取决于是期望对中断的响应性还是节能,装置驱动器108可以按比例缩小或按比例放大tLTR值。如果期望的是对中断的响应性,其增加了处理能力,那么装置驱动器108可以减少tLTR值。如果期望的是CPU节能,那么装置驱动器108可以增加tLTR值。
在测量中断以确定tLTR值的事务之后,响应于在事务中来自装置150的第一中断,驱动器108可以提供确定出的tLTR值给空闲的调节器110。有时,响应于在测量中断以确定tLTR值的相同事务中的中断,但不是第一中断,驱动器108能够提供tLTR。在从装置150接收到事务中的最后中断之后,装置驱动器108将默认装置LTR值发布到空闲的调节器110,因此空闲的调节器110将会恢复其正常操作。
当在正在进行的事务期间发生装置故障时,驱动器108负责将tLTR重设为默认LTR,以便CPU不会无限地陷入在更浅的C状态。
有时,装置驱动器108可以将tLTR值写入到CPU152的寄存器中。可以经由硬件LTR信道,从驱动器108到CPU的策略控制器进行tLTR通信。有时,空闲的调节器110不控制CPU152的准确的C状态。例如,当空闲的调节器110请求C3状态时,CPU可以反而进入C4、C5或C6。CPU152可以使用tLTR值来确定是否进入C4、C5或C6。
空闲的调节器110可根据具体情况,通过考虑至少两个因素:(1)启发式预测和(2)装置LTR或tLTR,来决定CPU152将进入哪个较低功率状态(如果有的话)。启发式预测包括预测CPU将有多忙。当是Linux兼容时,OS102通过考虑过去的空闲持续时间和来自调度程序106的定时器信息来计算所希望的空闲持续时间。当是Windows兼容时,OS102计算CPU利用率。CPU的利用率越高,C状态就越浅。
当装置150发出中断时,CPU152在LTR(或tLTR,可视情况而定)所指定的持续期间内潜在地响应该中断,以确保没有输入数据由于装置缓冲器溢出而丢失。每个Cx状态都具有相关联的恢复时延Rx,以从Cx状态返回到C0状态。因此,CPU可以进入的最深的Cx状态具有小于LTR(或tLTR)的关联Rx。
对于每个Cx状态,空闲的调节器110检查与其Rx相对的LTR,以确定是否(a)LTR<Rx,(b)IO计数器<=阈值,以及(c)预测出的空闲持续时间>Ex。如果不满足这些情况中的任意一个,那么空闲的调节器110将不会进入那个具体的Cx状态。
在一些实施例中,代替于发布tLTR值,装置驱动器108发布大于该阈值的IO计数器,以便空闲的调节器110不会允许CPU进入某些更深的Cx状态。驱动器将计数器重设为0,以指示事务完成。OS检查IO计数器并且确定事务是否是活动的。可以调整OS操作以读取IO计数器并且决定进入哪个Cx状态。
当装置150是使用SDIO耦合到平台的网络接口时,LTR值通常是足够大的(约为毫秒),免得阻止CPU152在处理中断之后进入最深的C状态。因此,上述的启发式预测可以是在处理中断之后进入哪个Cx状态的决定性因素。例如,如果C6状态的能量平衡时间为500微秒左右,并且两次中断之间的时间差更加短暂,那么当CPU进入深的C状态时,多次中断致使CPU功率使用恶化。另外,一个事务的总处理时间由于CPU的慢响应而变得更长。这阻止了平台和装置很快进入低功率状态并且会增加总的平台和装置的功率消耗。
不同的实施例的好处包括,但不是必需的特征:中断处理速度的潜在改善,潜在的平台功率减小,以及没有OS内核或CPU策略的变化。
图3描述了根据实施例的过程。这个过程可以由装置驱动器执行来设置容许时延报告值。块202包括确定tLTR值。可以通过收集装置中断间隔时间信息或识别运行时间期间的装置中断间隔时间来确定tLTR值。可以通过对于图2的装置驱动器108进行描述的方式来确定tLTR值。
块204包括确定所确定出的tLTR值是否小于默认的装置LTR值。默认的装置LTR值可以是由空闲的调节器所允许的最高LTR值。如果确定出的tLTR值小于默认的装置LTR值,那么块206跟随块204。如果确定出的tLTR值不小于默认的装置LTR值,那么处理结束。
块206包括识别来自装置的中断。块208包括确定该中断是否是事务的第一中断。如果接收到的中断是事务的第一中断,那么块220跟随块208。如果接收到的中断不是事务的第一中断,那么块230跟随块208。
块220包括将容许时延报告(LTR)值设置为tLTR。块206跟随块220。
块230包括确定接收到的中断是否是事务的最后中断。对于事务的最后中断,块232包括将默认的装置LTR设置为默认的装置LTR值。对于除了事务的最后中断以外的中断,块206跟随块230。
图3的实施例仅仅是确定LTR值以提供给空闲的调节器或CPU寄存器的过程的一个示例。代替于块208和220中响应第一中断而提供tLTR值,可以为相同事务中的任何中断提供tLTR。可以周期性地或当用于装置的中断之间的间隔时间改变时重新评估tLTR,并且可以响应于任何事务中的第一或随后的(而不是最后的)中断来提供新的tLTR。
图4描述了可以使用本发明实施例的示例系统。计算机系统400可以包括主机系统402和显示器422。可以将计算机系统400实现在手持式个人计算机、移动电话、机顶盒、或任何计算装置中。可以使用任何种类的用户接口,例如键盘、鼠标、触摸屏和/或姿势或运动识别。主机系统402可以包括芯片组405、处理器410、主机存储器412、存储装置414、图形子系统415和无线电设备420。芯片组405可以提供处理器410、主机存储器412、存储装置414、图形子系统415和无线电设备420间的相互通信。例如,芯片组405可以包括能提供与存储装置414相互通信的存储装置适配器(未示出)。
可以将处理器410实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核心、或任何其他的微处理器或中央处理单元。根据本文所述的实施例,可以将处理器410配置为执行本文所述的操作以生成容许时延报告(LTR)值或临时的LTR值。
可以将主机存储器412实现为易失性存储器装置,例如但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)。可以将存储装置414实现为非易失性存储装置,例如但不限于,磁盘驱动、光盘驱动、磁带驱动、内部存储装置、附装存储装置、闪速存储器、电池备份SDRAM(同步DRAM)、和/或网络可存取的存储装置。
图形子系统415可以执行对例如静止的或视频的图像的处理以用于显示。模拟或数字接口可以用来通信地耦合图形子系统415和显示器422。例如,接口可以是高清晰度多媒体接口、显示器端口、无线HDMI、和/或无线HD兼容技术的任意一个。可以将图形子系统415集成到处理器410或芯片组405中。图形子系统415可以是与芯片组405通信地耦合的独立卡。
无线电设备420可以包括能根据合适的无线标准(例如但不限于IEEE802.11、IEEE802.16、和3GPP LTE的任何版本)来发送和接收信号的一个或多个无线电设备。例如,无线电设备420可以至少包括物理层接口和媒体存取控制器。
可以将本发明的实施例实现为以下的任意一个或者它们的组合:利用主板互连的一个或多个微芯片或集成电路,硬连线逻辑,由存储器装置存储并由微处理器执行的软件,固件,专用集成电路(ASIC),和/或现场可编程门阵列(FPGA)。举例来说,术语“逻辑”可以包括软件或硬件和/或软件和硬件的组合。
例如,可以将本发明的实施例设置为计算机程序产品,其可以包括一个或多个机器可读介质,介质上存储有机器可执行指令,当被例如计算机、计算机网、或其他的电子装置的一个或多个机器执行时,这些机器可执行指令可以使得一个或多个机器执行根据本发明实施例的操作。机器可读介质可以包括但不限于:软盘、光盘、CD-ROM(光盘只读存储器)、和磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁的或光学卡、闪速存储器、或适合于存储机器可执行指令的其他种类的介质/机器可读介质。
附图和在前的描述给出了本发明的示例。尽管被描述为许多不同的功能项,但是本领域技术人员将意识到这些元件的一个或多个可能被组合为单个功能元件。可替换地,某些元件可以被拆分成多个功能元件。来自一个实施例的元件可以被加到另一个实施例。例如,本文描述的过程的顺序可以变化并且不被限制为本文描述的方式。此外,任何流程图的动作都不必以所示的顺序实现;也不是必须执行所有的动作。同时,可以并行地执行其他动作以及不依赖于其他动作的那些动作。然而,本发明的范围决不受限于这些具体的示例。许多的变化,不论是否在说明书中明确地给出,例如结构、尺寸、和材料使用上的差异都是可能的。本发明的范围至少与以下的权利要求所给出的范围一样宽。
Claims (19)
1.一种由计算机执行的方法,所述方法包括:
确定容许时延报告值;
识别用于事务的装置中断;
响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述第一容许时延报告值潜在地阻止处理器在装置中断之间进入睡眠状态的等级;以及
响应于所述装置中断是用于所述事务的最后中断而提供第二容许时延报告值。
2.如权利要求1所述的方法,进一步包括:确定在至少两个装置中断之间的间隔时间,并且其中,确定容许时延报告值是基于所述间隔时间的。
3.如权利要求2所述的方法,其中,确定在至少两个装置中断之间的间隔时间包括:
监控一段时间内对来自所述装置的中断的接收,以及
将所述间隔时间设置为用于所监控的接收到的中断的平均间隔时间。
4.如权利要求2所述的方法,其中,确定在至少两个装置中断之间的间隔时间包括:
取回指定所述中断间隔时间的装置属性。
5.如权利要求1所述的方法,其中,确定容许时延报告值是基于I/O计数器的,所述I/O计数器指示挂起的由装置进行的存取的总数。
6.如权利要求1所述的方法,其中,响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值包括:
确定是将所述第一容许时延报告值提供作为确定出的容许时延报告值还是默认的装置容许时延报告值。
7.如权利要求1所述的方法,其中,提供第一容许时延报告值包括:
如果确定出的容许时延报告值小于默认的装置容许时延报告值,则将所述确定出的容许时延报告值提供为所述第一容许时延报告值,以及
如果确定出的容许时延报告值大于默认的装置容许时延报告值,则将所述默认的装置容许时延报告值提供为所述第一容许时延报告值。
8.如权利要求1所述的方法,其中,响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值包括:响应于识别所述装置中断是用于所述事务的第一中断而提供第一容许时延报告值。
9.如权利要求1所述的方法,其中,提供第二容许时延报告值包括:提供默认的装置容许时延报告值。
10.一种存储有指令的计算机可读介质,当所述指令被计算机执行时,使得所述计算机:
确定容许时延报告值;
识别用于事务的装置中断;
响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述第一容许时延报告值潜在地阻止处理器在装置中断之间进入睡眠状态的等级;以及
响应于所述装置中断是用于所述事务的最后中断而提供第二容许时延报告值。
11.如权利要求10所述的计算机可读介质,其中,为了确定容许时延报告值,所述计算机将基于装置中断之间的间隔时间确定容许时延报告值,并且其中,为了确定装置中断之间的间隔时间,所述计算机将:
监控一段时间内对来自所述装置的中断的接收,并且将所述间隔时间设置为用于所监控的接收到的中断的平均间隔时间。
12.如权利要求10所述的计算机可读介质,其中,为了确定容许时延报告值,所述计算机将基于I/O计数器来确定容许时延报告值,所述I/O计数器指示挂起的装置存取的总数。
13.如权利要求10所述的计算机可读介质,其中,为了响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述计算机用于:
如果确定出的容许时延报告值小于默认的装置容许时延报告值,则将确定出的容许时延报告值提供为所述第一容许时延报告值,以及
如果确定出的容许时延报告值大于默认的装置容许时延报告值,则将所述默认的装置容许时延报告值提供为所述第一容许时延报告值。
14.如权利要求10所述的计算机可读介质,其中,
为了响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述计算机将响应于识别所述装置中断是用于所述事务的第一中断而提供第一容许时延报告值,以及
为了提供第二容许时延报告值,所述计算机将提供默认的装置容许时延报告值。
15.一种系统,包括:
显示装置;
天线;
通信地耦合到所述天线的无线电设备;以及
处理器,其被配置为:
确定容许时延报告值;
识别用于事务的装置中断;
响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述第一容许时延报告值潜在地阻止处理器在装置中断之间进入睡眠状态的等级;以及
响应于所述装置中断是用于所述事务的最后中断而提供第二容许时延报告值。
16.如权利要求15所述的系统,其中,为了确定容许时延报告值,所述处理器将基于至少两个装置中断之间的间隔时间确定容许时延报告值,并且其中,为了确定装置中断之间的间隔时间,所述处理器将:
监控一段时间内对来自所述装置的中断的接收,并且将所述间隔时间设置为用于所监控的接收到的中断的平均间隔时间。
17.如权利要求15所述的系统,其中,为了确定容许时延报告值,所述处理器将基于I/O计数器来确定容许时延报告值,所述I/O计数器指示挂起的由装置进行的存取的总数。
18.如权利要求15所述的系统,其中,为了响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述处理器用于:
如果确定出的容许时延报告值小于默认的装置容许时延报告值,则将所述确定出的容许时延报告值提供为所述第一容许时延报告值,以及
如果确定出的容许时延报告值大于默认的装置容许时延报告值,则将所述默认的装置容许时延报告值提供为所述第一容许时延报告值。
19.如权利要求15所述的系统,其中,
为了响应于所述装置中断不是用于所述事务的最后中断而提供第一容许时延报告值,所述处理器将响应于识别所述装置中断是用于所述事务的第一中断而提供第一容许时延报告值,以及
为了提供第二容许时延报告值,所述处理器将提供默认的装置容许时延报告值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/025,492 US8560749B2 (en) | 2011-02-11 | 2011-02-11 | Techniques for managing power consumption state of a processor involving use of latency tolerance report value |
US13/025,492 | 2011-02-11 | ||
PCT/US2012/024689 WO2012109564A2 (en) | 2011-02-11 | 2012-02-10 | Techniques for managing power consumption state of a processor |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103460189A true CN103460189A (zh) | 2013-12-18 |
CN103460189B CN103460189B (zh) | 2017-03-15 |
Family
ID=46637781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280008516.XA Active CN103460189B (zh) | 2011-02-11 | 2012-02-10 | 用于管理处理器的功率消耗状态的技术 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8560749B2 (zh) |
CN (1) | CN103460189B (zh) |
DE (1) | DE112012000749B4 (zh) |
WO (1) | WO2012109564A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104186013A (zh) * | 2014-03-14 | 2014-12-03 | 华为技术有限公司 | 一种数据处理装置及方法 |
CN104915286A (zh) * | 2014-03-12 | 2015-09-16 | 英特尔公司 | 识别功率状态改变 |
CN107209544A (zh) * | 2015-01-26 | 2017-09-26 | 苹果公司 | 基于I/O操作特征的SoC空闲功率状态控制的系统和方法 |
CN107436849A (zh) * | 2016-05-25 | 2017-12-05 | 佳能株式会社 | 信息处理装置和处理器的省电方法及存储介质 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8560749B2 (en) | 2011-02-11 | 2013-10-15 | Intel Corporation | Techniques for managing power consumption state of a processor involving use of latency tolerance report value |
US8504753B2 (en) * | 2011-02-14 | 2013-08-06 | Qnx Software Systems Limited | Suspendable interrupts for processor idle management |
US8694994B1 (en) | 2011-09-07 | 2014-04-08 | Amazon Technologies, Inc. | Optimization of packet processing by delaying a processor from entering an idle state |
US20130275791A1 (en) * | 2012-04-12 | 2013-10-17 | Qualcomm Incorporated | Method and System for Tracking and Selecting Optimal Power Conserving Modes of a PCD |
KR101324604B1 (ko) * | 2012-05-25 | 2013-11-01 | 전자부품연구원 | 다중 대기 상태 운용 방법 및 이를 적용한 방송수신장치 |
US9015396B2 (en) * | 2012-09-18 | 2015-04-21 | Apple Inc. | Reducing latency in a peripheral component interconnect express link |
CN102929381B (zh) * | 2012-10-22 | 2015-08-05 | 威盛电子股份有限公司 | 电子系统及其电源管理方法 |
US9043457B2 (en) * | 2012-10-25 | 2015-05-26 | Qualcomm Incorporated | Dynamic adjustment of an interrupt latency threshold and a resource supporting a processor in a portable computing device |
US9183144B2 (en) | 2012-12-14 | 2015-11-10 | Intel Corporation | Power gating a portion of a cache memory |
US9535483B2 (en) * | 2012-12-19 | 2017-01-03 | Intel Corporation | Adaptively disabling and enabling sleep states for power and performance |
US20140181563A1 (en) * | 2012-12-24 | 2014-06-26 | Neil Songer | System and method for determination of latency tolerance |
US9223379B2 (en) * | 2012-12-27 | 2015-12-29 | Intel Corporation | Intelligent receive buffer management to optimize idle state residency |
TWI507881B (zh) * | 2013-04-10 | 2015-11-11 | Realtek Semiconductor Corp | 通訊裝置與設置資料傳輸的方法 |
US10025370B2 (en) * | 2013-08-13 | 2018-07-17 | Apple Inc. | Overriding latency tolerance reporting values in components of computer systems |
US9189151B2 (en) | 2013-09-06 | 2015-11-17 | Sony Corporation | Pre-emptive CPU activation from touch input |
US10055369B1 (en) * | 2017-03-27 | 2018-08-21 | Apple Inc. | Systems and methods for coalescing interrupts |
US11552892B2 (en) * | 2019-08-30 | 2023-01-10 | Ati Technologies Ulc | Dynamic control of latency tolerance reporting values |
US11086384B2 (en) * | 2019-11-19 | 2021-08-10 | Intel Corporation | System, apparatus and method for latency monitoring and response |
US11734055B2 (en) * | 2021-09-28 | 2023-08-22 | Dell Products L.P. | Minimizing C-state transitions due to software timer interrupts |
US11803459B2 (en) | 2021-10-19 | 2023-10-31 | Hewlett-Packard Development Company, L.P. | Latency tolerance reporting value determinations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1650669A2 (en) * | 2004-10-22 | 2006-04-26 | Broadcom Corporation | Method and system for reducing power consumption of handsets through uart auto flow control |
CN101002159A (zh) * | 2004-08-31 | 2007-07-18 | 英特尔公司 | 用于控制功率管理状态转换的方法和装置 |
CN101598969A (zh) * | 2008-03-31 | 2009-12-09 | 英特尔公司 | 基于等待时间准则的平台功率管理 |
US7716506B1 (en) * | 2006-12-14 | 2010-05-11 | Nvidia Corporation | Apparatus, method, and system for dynamically selecting power down level |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185639B1 (en) * | 1998-06-05 | 2001-02-06 | International Business Machines Corporation | System and method to reduce a computer system's interrupt processing overhead |
US6467008B1 (en) * | 1999-03-01 | 2002-10-15 | Sun Microsystems, Inc. | Method and apparatus for indicating an interrupt in a network interface |
US8180585B2 (en) * | 1999-08-26 | 2012-05-15 | Tk Holdings, Inc. | Magnetic crash sensor |
US20060064529A1 (en) * | 2004-09-23 | 2006-03-23 | International Business Machines Corporation | Method and system for controlling peripheral adapter interrupt frequency by transferring processor load information to the peripheral adapter |
US7627705B2 (en) * | 2005-12-30 | 2009-12-01 | Stmicroelectronics Pvt. Ltd. | Method and apparatus for handling interrupts in embedded systems |
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 |
KR100961706B1 (ko) | 2006-02-28 | 2010-06-10 | 삼성전자주식회사 | 무선 통신 시스템의 슬립 모드 동작 제어 시스템 및 방법 |
US20080126618A1 (en) * | 2006-06-28 | 2008-05-29 | Ilan Pardo | System, method and device of a scheduling interrupt controller |
US7587544B2 (en) * | 2006-09-26 | 2009-09-08 | Intel Corporation | Extending secure digital input output capability on a controller bus |
US7788434B2 (en) * | 2006-12-15 | 2010-08-31 | Microchip Technology Incorporated | Interrupt controller handling interrupts with and without coalescing |
US7752353B2 (en) * | 2007-10-22 | 2010-07-06 | Sandisk Il Ltd. | Signaling an interrupt request through daisy chained devices |
US20090172434A1 (en) | 2007-12-31 | 2009-07-02 | Kwa Seh W | Latency based platform coordination |
US8051222B2 (en) * | 2008-06-25 | 2011-11-01 | Redpine Signals, Inc. | Concatenating secure digital input output (SDIO) interface |
WO2010022376A2 (en) | 2008-08-22 | 2010-02-25 | Zte (Usa) Inc. | Flexible sleep modes for wireless systems |
US8015337B2 (en) * | 2009-03-23 | 2011-09-06 | Arm Limited | Power efficient interrupt detection |
US8135884B1 (en) * | 2009-05-04 | 2012-03-13 | Cypress Semiconductor Corporation | Programmable interrupt routing system |
US20110314198A1 (en) * | 2010-06-17 | 2011-12-22 | Mediatek Inc. | Wireless Peripheral Chips, Host Devices and Multi-Interface Communication Apparatuses |
US8560749B2 (en) | 2011-02-11 | 2013-10-15 | Intel Corporation | Techniques for managing power consumption state of a processor involving use of latency tolerance report value |
-
2011
- 2011-02-11 US US13/025,492 patent/US8560749B2/en not_active Expired - Fee Related
-
2012
- 2012-02-10 CN CN201280008516.XA patent/CN103460189B/zh active Active
- 2012-02-10 DE DE112012000749.2T patent/DE112012000749B4/de active Active
- 2012-02-10 WO PCT/US2012/024689 patent/WO2012109564A2/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101002159A (zh) * | 2004-08-31 | 2007-07-18 | 英特尔公司 | 用于控制功率管理状态转换的方法和装置 |
EP1650669A2 (en) * | 2004-10-22 | 2006-04-26 | Broadcom Corporation | Method and system for reducing power consumption of handsets through uart auto flow control |
US7716506B1 (en) * | 2006-12-14 | 2010-05-11 | Nvidia Corporation | Apparatus, method, and system for dynamically selecting power down level |
CN101598969A (zh) * | 2008-03-31 | 2009-12-09 | 英特尔公司 | 基于等待时间准则的平台功率管理 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104915286A (zh) * | 2014-03-12 | 2015-09-16 | 英特尔公司 | 识别功率状态改变 |
US9684355B2 (en) | 2014-03-12 | 2017-06-20 | Intel Corporation | Identifying power state changes |
CN104915286B (zh) * | 2014-03-12 | 2019-07-16 | 英特尔公司 | 用于识别功率状态改变的方法、系统和装置 |
CN104186013A (zh) * | 2014-03-14 | 2014-12-03 | 华为技术有限公司 | 一种数据处理装置及方法 |
WO2015135219A1 (zh) * | 2014-03-14 | 2015-09-17 | 华为技术有限公司 | 一种数据处理装置及方法 |
CN104186013B (zh) * | 2014-03-14 | 2019-01-11 | 华为技术有限公司 | 一种数据处理装置及方法 |
US10237825B2 (en) | 2014-03-14 | 2019-03-19 | Huawei Technologies Co., Ltd. | Data processing apparatus and method |
US10687283B2 (en) | 2014-03-14 | 2020-06-16 | Huawei Technologies Co., Ltd. | Status changing apparatus and method |
CN107209544A (zh) * | 2015-01-26 | 2017-09-26 | 苹果公司 | 基于I/O操作特征的SoC空闲功率状态控制的系统和方法 |
CN107436849A (zh) * | 2016-05-25 | 2017-12-05 | 佳能株式会社 | 信息处理装置和处理器的省电方法及存储介质 |
US10606334B2 (en) | 2016-05-25 | 2020-03-31 | Canon Kabushiki Kaisha | Information processing apparatus for determining level of power saving of processor according to return time notified by device connected to processor, and power saving method for processor |
CN107436849B (zh) * | 2016-05-25 | 2020-04-28 | 佳能株式会社 | 信息处理装置和处理器的省电方法及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US8560749B2 (en) | 2013-10-15 |
CN103460189B (zh) | 2017-03-15 |
WO2012109564A3 (en) | 2012-12-27 |
DE112012000749B4 (de) | 2024-01-11 |
DE112012000749T5 (de) | 2014-01-09 |
WO2012109564A2 (en) | 2012-08-16 |
US20120210032A1 (en) | 2012-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103460189A (zh) | 用于管理处理器的功率消耗状态的技术 | |
US10345889B2 (en) | Forcing a processor into a low power state | |
US9618997B2 (en) | Controlling a turbo mode frequency of a processor | |
US9092218B2 (en) | Methods and apparatus to improve turbo performance for events handling | |
US7610497B2 (en) | Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory | |
KR101471303B1 (ko) | 그래픽 처리 장치를 위한 전력 관리 장치 및 방법 | |
US8996895B2 (en) | Method, apparatus, and system for energy efficiency and energy conservation including optimizing C-state selection under variable wakeup rates | |
US20190155370A1 (en) | Selecting A Low Power State Based On Cache Flush Latency Determination | |
US7966506B2 (en) | Saving power in a computer system | |
CN101495958B (zh) | 用于控制处理器低功率状态的系统和方法 | |
US8484495B2 (en) | Power management in a multi-processor computer system | |
KR101506857B1 (ko) | 플랫폼 전력 절감을 위한 조정 장치 및 브레이크 이벤트 애플리케이션 | |
EP2887182A1 (en) | Rescheduling workloads to enforce and maintain a duty cycle | |
KR20140040933A (ko) | 데이터 트랜잭션에 따라 전력공급을 제어하는 시스템-온-칩 및 그 동작방법 | |
US20090319712A1 (en) | Reducing core wake-up latency in a computer system | |
US9753531B2 (en) | 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 | |
WO2014042749A1 (en) | Distributing power to heterogenous compute elements of a processor | |
US20140282587A1 (en) | Multi-core binary translation task processing | |
US9274827B2 (en) | Data processing apparatus, transmitting apparatus, transmission control method, scheduling method, and computer product | |
EP2804075B1 (en) | Controlling power consumption of a processor using interrupt-mediated on-off keying | |
CN118051113A (zh) | 一种线程的省电方法、装置及存储介质 |
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 |