Achieving a consistent computing device battery drain rate
Abstract
Achieving a consistent battery drain rate at a computing device includes identifying an amount of available battery energy, and identifying a target device runtime using the available energy. A plurality of time periods over which to budget energy use to achieve the target device runtime are identified, and an allotment of the available energy for each of the plurality of time periods is determined. A determination of how to allocate the allotted energy for a current time period is made. The determination includes identifying a priority of each application based user-facing attributes of each application, identifying an energy budget for each application, and allocating a portion of the allotted energy for the current time period to each application based on their identified priority and their energy budget. The energy budget for at least one application is adjusted based on that applications' energy usage during the current time period.
Claims
exact text as granted — not AI-modifiedWhat is claimed:
1 . A method, implemented at a mobile computing device comprising one or more processors, of achieving a consistent battery drain rate at the mobile computing device, the method comprising:
identifying an amount of available energy for the mobile computing device based on a battery capacity of the mobile computing device; identifying a plurality of applications over which to budget energy use for the mobile computing device while using the amount of available energy; based on the amount of available energy, determining an allotment of the amount of available energy for each application included among the plurality of applications; determining how to allocate the allotted energy among the plurality of applications executing on the mobile computing device, including:
identifying a priority of each application in the plurality of applications, each application priority based at least on one or more user-facing attributes of the application;
identifying an energy budget for each application in the plurality of applications; and
based at least on the identified priority of each application and based at least on a corresponding energy budget of each application in the plurality of applications, allocating a portion of the allotted energy for each application in the plurality of applications; and
adjusting a particular energy budget for at least one application included in the plurality of applications based on a determined energy usage of the at least one application during a current time period in which the at least one application is executing on the mobile computing device.
2 . The method of claim 1 , wherein the user-facing attributes includes a determined amount of time that a user of the mobile computing device uses each one of the plurality of applications.
3 . The method of claim 1 , wherein each of at least some of the plurality of applications is assigned an energy budget, each energy budget being associated with an allowed allotment of energy that may be used.
4 . The method of claim 1 , wherein the method further includes monitoring an amount of energy consumed by a particular application included within the plurality of applications, and wherein the monitoring includes monitoring any one or combination of: an amount of processor cycles, disk usage, network traffic, or graphics usage used by the particular application.
5 . The method of claim 1 , wherein determining the allotment of the amount of available energy for each application included among the plurality of applications is based, at least in part, on how often each application raises user-visible notifications.
6 . The method of claim 1 , wherein the method further includes ranking each of the plurality of applications into different categories, and wherein, for specific applications ranked in a particular one of the different categories, the mobile computing device restricts operations of those specific applications from running.
7 . The method of claim 1 , wherein different applications are associated with different energy budgets such that some applications are allotted a relatively larger energy budget and some applications are allotted a relatively smaller energy budget.
8 . A mobile computing device comprising:
one or more processors; and one or more computer-readable hardware storage devices having stored thereon computer-executable instructions that are executable by the one or more processors to cause the mobile computing device to:
identify an amount of available energy for the mobile computing device based on a battery capacity of the mobile computing device;
identify a plurality of applications over which to budget energy use for the mobile computing device while using the amount of available energy;
based on the amount of available energy, determine an allotment of the amount of available energy for each application included among the plurality of applications;
determine how to allocate the allotted energy among the plurality of applications executing on the mobile computing device, including:
identifying a priority of each application in the plurality of applications, each application priority based at least on one or more user-facing attributes of the application;
identifying an energy budget for each application in the plurality of applications; and
based at least on the identified priority of each application and based at least on a corresponding energy budget of each application in the plurality of applications, allocating a portion of the allotted energy for each application in the plurality of applications; and
adjust a particular energy budget for at least one application included in the plurality of applications based on a determined energy usage of the at least one application during a current time period in which the at least one application is executing on the mobile computing device.
9 . The mobile computing device of claim 8 , wherein the user-facing attributes includes a determined amount of time that a user of the mobile computing device uses each one of the plurality of applications.
10 . The mobile computing device of claim 8 , wherein each of at least some of the plurality of applications is assigned an energy budget, each energy budget being associated with an allowed allotment of energy that may be used.
11 . The mobile computing device of claim 8 , wherein the method further includes monitoring an amount of energy consumed by a particular application included within the plurality of applications, and wherein the monitoring includes monitoring any one or combination of: an amount of processor cycles, disk usage, network traffic, or graphics usage used by the particular application.
12 . The mobile computing device of claim 8 , wherein determining the allotment of the amount of available energy for each application included among the plurality of applications is based, at least in part, on how often each application raises user-visible notifications.
13 . The mobile computing device of claim 8 , wherein the method further includes ranking each of the plurality of applications into different categories, and wherein, for specific applications ranked in a particular one of the different categories, the mobile computing device restricts operations of those specific applications from running.
14 . The mobile computing device of claim 8 , wherein different applications are associated with different energy budgets such that some applications are allotted a relatively larger energy budget and some applications are allotted a relatively smaller energy budget.
15 . One or more hardware storage devices having stored thereon computer-executable instructions that are executable by one or more processors of a mobile computing device to cause the mobile computing device to:
identify an amount of available energy for the mobile computing device based on a battery capacity of the mobile computing device; identify a plurality of applications over which to budget energy use for the mobile computing device while using the amount of available energy; based on the amount of available energy, determine an allotment of the amount of available energy for each application included among the plurality of applications; determine how to allocate the allotted energy among the plurality of applications executing on the mobile computing device, including:
identifying a priority of each application in the plurality of applications, each application priority based at least on one or more user-facing attributes of the application;
identifying an energy budget for each application in the plurality of applications; and
based at least on the identified priority of each application and based at least on a corresponding energy budget of each application in the plurality of applications, allocating a portion of the allotted energy for each application in the plurality of applications; and
adjust a particular energy budget for at least one application included in the plurality of applications based on a determined energy usage of the at least one application during a current time period in which the at least one application is executing on the mobile computing device.
16 . The one or more hardware storage devices of claim 15 , wherein the energy budgets are dynamically adjustable as the battery capacity degrades over time.
17 . The one or more hardware storage devices of claim 15 , wherein the user-facing attributes include how recently any one or more of the plurality of applications was launched.
18 . The one or more hardware storage devices of claim 15 , wherein execution of the computer-executable instructions further causes the mobile computing device to restrict executions of one or more applications included within the plurality of applications based on those one or more applications' corresponding energy budgets.
19 . The one or more hardware storage devices of claim 15 , wherein execution of the computer-executable instructions further causes the mobile computing device to reallocate budget surpluses or debts among applications.
20 . The one or more hardware storage devices of claim 15 , wherein adjusting the particular energy budget for the at least one application is based, at least in part, on an updated signal associated with the at least one application.Join the waitlist — get patent alerts
Track US2019086986A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.