Systems and methods for dynamic temporal power steering

US2016179117A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016179117-A1
Application numberUS-201414581911-A
CountryUS
Kind codeA1
Filing dateDec 23, 2014
Priority dateDec 23, 2014
Publication dateJun 23, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Apparatus, systems, and methods provide dynamic power steering that includes determining a sequence of phases of an application in a node. The sequence corresponds to a time interval associated with an energy budget. For each phase, the dynamic power steering includes determining a power scaling comprising a measured response to an increase or decrease in power distributed to a plurality of power domains in the node, and based on the power scaling for each phase, determining a temporal power distribution between the phases in the sequence to satisfy the energy budget.

First claim

Opening claim text (preview).

1 . A method comprising: determining, using a power manager, a sequence of phases corresponding to an application comprising tasks for execution on a node, the sequence corresponding to a time interval associated with an energy budget; for each phase, determining a power scaling comprising a measured response in runtime to an increase or decrease in power distributed to a plurality of power domains in the node; based on the power scaling for each phase, determining a temporal power distribution between the phases in the sequence to satisfy the energy budget and improve or optimize runtime performance of the application by the node. 2 . The method of claim 1 , further comprising selecting a performance metric, an objective function, and at least one of a measurement interval and a measurement even for evaluating the performance metric, the performance metric selected to improve or optimize the runtime performance of the application by the node, wherein the objective function is selected from a group comprising maximizing performance within a power cap, maximizing performance, maximizing energy efficiency within a power cap, and maximizing efficiency. 3 . The method of claim 2 , further comprising: monitoring the application to detect a current phase; determining that, in the current phase, the temporal power allocation does not satisfy the objective function; and in response to the determination, temporally reallocating the power between the sequence of phases. 4 . The method of claim 3 , wherein temporally reallocating the power between the sequence of phases comprises: selecting a new temporal power allocation between the sequence of phases; determining whether the current phase, based on the temporal power distribution, is designated for power saving or acceleration; if the current phase is designated for power saving, decreasing an overall power limit for the plurality of power domains in the node according to the new temporal power allocation; and if the current phase is designated for acceleration, increasing the overall power limit for the plurality of power domains in the node according to the new temporal power distribution. 5 . The method of claim 4 , further comprising detecting annotations in computer-executable code of the application indicating whether the current phase is designated for power saving or acceleration. 6 . The method of claim 4 , further comprising: determining that a spatial power distribution among the plurality of power domains in the node does not satisfy the objective function; and in response to the determination, based on the new temporal power allocation, spatially redistributing the power between the plurality of power domains in the current phase. 7 . The method of claim 1 , further comprising: detecting change in at least one of the application, the node, a power cap, and a system comprising the node; and in response to the detected change, reconfiguring the temporal power distribution between the phases in the sequence. 8 . The method of claim 1 , wherein determining the sequence of phases comprises detecting at least two of a compute bound phase, a memory bound phase, a communication bound phase, an idle phase, an active phase, and a combination of any of the foregoing phases. 9 . The method of claim 1 , further comprising: for each of the phases in the sequence, determining the temporal power distribution based on a first iteration of the sequence; and for each of the phases in the sequence, applying the temporal power allocation in a second iteration of the sequence. 10 . An apparatus comprising: a power manager comprising logic, at least a portion of which includes hardware, the power manager comprising: a phase module to determine a sequence of phases of an application, the sequence corresponding to a time interval associated with an energy budget, wherein each of the plurality of phases comprises a segment of the application that exhibits operational behavior different than that of the other phases; and a dynamic temporal power scheduler module to determine a temporal power distribution between the phases in the sequence to satisfy the energy budget and improve or optimize runtime performance of the application. 11 . The apparatus of claim 10 , wherein the power manager is configured to select a performance metric, an objective function, and at least one of a measurement interval and a measurement event for evaluating the performance metric, the objective function selected to improve or optimize the runtime performance of the application. 12 . The apparatus of claim 11 , wherein the phase module is further configured to monitor the application to detect a current phase, and wherein the dynamic temporal power scheduler module is further configured to: determine that, in the current phase, the temporal power allocation does not satisfy the objective function; and in response to the determination, temporally reallocate the power between the sequence of phases. 13 . The apparatus of claim 12 , wherein to temporally reallocate the power, the dynamic temporal power scheduler module is further configured to: select a new temporal power allocation between the sequence of phases; determine whether the current phase, based on the temporal power distribution, is designated for power saving or acceleration; if the current phase is designated for power saving, decrease an overall power limit for the plurality of power domains in the node according to the new temporal power allocation; and if the current phase is designated for acceleration, increase the overall power limit for the plurality of power domains in the node according to the new temporal power distribution. 14 . The apparatus of claim 13 , wherein the dynamic temporal power scheduler module is further configured to detect annotations in computer-executable code of the application indicating whether the current phase is designated for power saving or acceleration. 15 . The apparatus of claim 13 , wherein the power manager is further configured to: determine that a spatial power distribution among the plurality of power domains in the node does not satisfy the objective function; and in response to the determination, based on the new temporal power allocation, spatially redistribute the power between the plurality of power domains in the current phase. 16 . The apparatus of claim 10 , wherein the power manager is further configured to: detect a change in at least one of the application, the node, a power cap, and a system comprising the apparatus; and in response to the detected change, reconfigure the temporal power distribution between the phases in the sequence. 17 . A system comprising: a plurality of power domains comprising at least one core domain and at least one uncore domain; and at least one computer-readable storage medium having stored thereon instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising: determining a sequence of phases of an application executed by the system, the sequence corresponding to a time interval associated with an energy budget; for each phase, determining a power scaling comprising a measured response in runtime to an increase or decrease in power distributed to the plurality of power domains in the system; based on the power scaling for each phase, determining a temporal power distribution between the phases in the sequence to satisfy the energy budget and improve or optimize runtime performance of the application b

Assignees

Inventors

Classifications

  • G05F1/66Primary

    Regulating electric power · CPC title

  • electric · CPC title

  • by switching off individual functional units in the computer system · CPC title

  • by lowering clock frequency · CPC title

  • by lowering the supply or operating voltage · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016179117A1 cover?
Apparatus, systems, and methods provide dynamic power steering that includes determining a sequence of phases of an application in a node. The sequence corresponds to a time interval associated with an energy budget. For each phase, the dynamic power steering includes determining a power scaling comprising a measured response to an increase or decrease in power distributed to a plurality of pow…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G05F1/66. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 23 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).