System and method for energy usage accounting in software applications

US11922100B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11922100-B2
Application numberUS-202217899595-A
CountryUS
Kind codeB2
Filing dateAug 30, 2022
Priority dateApr 9, 2012
Publication dateMar 5, 2024
Grant dateMar 5, 2024

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.

A method for generating an energy usage profile for a software program executed in a computing device includes generating a call trace of an executed system call, identifying a first power consumption and duration of a first power state due to the first system call using a model, identifying a second power consumption and duration of a second power state based on the model, and generating an energy usage profile for the software program. The energy usage profile includes energy consumption of the computing device for the system call based on the first power consumption level multiplied by the first duration and the second power consumption level multiplied by the second duration associated an identifier for the call trace.

First claim

Opening claim text (preview).

What is claimed: 1. A computer-implemented method for identifying excessive power usage (power bugs) in a computer code (App), in a mobile device, comprising: estimating energy usage by an invocation of a call to a power-control Application Programming Interface (API) in a computer code (App) to activate power of a device component in a mobile device; comparing the estimated energy usage of the call to the power-control API with a predetermined threshold energy value (E 1 ) or a predetermined percentage of a total energy drain of the App execution (E 2 ); generating an error message if the estimated energy usage of the call to the power-control API is larger than E 1 or E 2 . 2. The method of claim 1 , wherein the APP is configured to run on a power constrained device, wherein the call to the power-control API to activate power of the device component comprises a function call to prevent the device component from going to sleep, and wherein a call to the power-control API to deactivate power of the device component comprises a function call to reallow the device component to go to sleep. 3. The method of claim 1 , wherein estimating energy usage by the invocation of the call to the API to activate power of the device component in the mobile device further comprises: during execution of the computer code, logging a first call to the power-control API to activate power of the device component; logging a second call to the power-control API to deactivate power of the device component after the first call; identifying a power consumption level of the device component during a predetermined time interval L between the first call and the second call; during post-processing: generating an energy usage profile for the first call to the power-control API to activate power of the device component, based at least in part on a duration of time between the first call and the second call to the power-control API and power consumption level of the device component during the time duration L; and storing the energy usage profile in a first memory. 4. The method of claim 3 , wherein identifying power consumption level during the time interval L comprises: during execution of the computer code, logging feature inputs to a pre-determined power model stored in a second memory for the device component; during post-processing, feeding the logged feature inputs to the pre-determined power model for the device component to generate a modeled power consumption level during the time interval L. 5. The method of claim 1 , wherein the power-control API is for activating power consumption of a CPU of the mobile device. 6. The method of claim 1 , wherein the power-control API is for activating power consumption of a Screen of the mobile device. 7. The method of claim 1 , wherein the power-control API is for activating power consumption of a keyboard backlight of the mobile device.

Assignees

Inventors

Classifications

  • G06F30/20Primary

    Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30) · CPC title

  • Performance evaluation by tracing or monitoring · CPC title

  • where the monitored property is the power consumption (power management in a computing system G06F1/3203) · CPC title

  • for performance assessment · CPC title

  • Monitoring of software · 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 US11922100B2 cover?
A method for generating an energy usage profile for a software program executed in a computing device includes generating a call trace of an executed system call, identifying a first power consumption and duration of a first power state due to the first system call using a model, identifying a second power consumption and duration of a second power state based on the model, and generating an en…
Who is the assignee on this patent?
Purdue Research Foundation
What technology area does this patent fall under?
Primary CPC classification G06F30/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 05 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).