US20090287948A1 - Context based power management - Google Patents
Context based power management Download PDFInfo
- Publication number
- US20090287948A1 US20090287948A1 US12/505,813 US50581309A US2009287948A1 US 20090287948 A1 US20090287948 A1 US 20090287948A1 US 50581309 A US50581309 A US 50581309A US 2009287948 A1 US2009287948 A1 US 2009287948A1
- Authority
- US
- United States
- Prior art keywords
- power
- power state
- state
- processing system
- processor
- 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.)
- Abandoned
Links
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
- 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
- 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/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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
-
- 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
Definitions
- a processing system consumes power as it operates.
- a processing system associated with a mobile computer might consume power from a battery.
- the performance of a processing system is improved (e.g., by increasing the speed of the processor, allowing wireless communication, providing a larger display, and/or executing more complex applications), the amount of power consumed by the processing system may increase.
- a battery may need to be re-charged more frequently, which might be annoying for a user. Note that increasing the size of the battery might be impractical (e.g., because it would make a mobile computer too large).
- a processing system and/or a subsystem within the processing system may have a number of different power states.
- the processing system or subsystem might operate in a higher-power state when it is actively being used and in a lower-power state during periods of relative inactivity (e.g., a hard disk drive might be transitioned to a lower-power state when it has not been accessed for five minutes).
- a processing system or subsystem may not be transitioned to a lower-power state.
- a subsystem might not be placed in a placed in a lower-power state even when a user is not executing any applications that require that subsystem.
- FIG. 1 is a block diagram of a processing system according to some embodiments.
- FIG. 2 is a flow chart of a method according to some embodiments.
- FIG. 3 is a block diagram of a processing system according to some embodiments.
- FIG. 4 is a flow chart of a method of evaluating applications that are currently being executed according to some embodiments.
- FIG. 5 is a block diagram of a processing system according to some embodiments.
- FIG. 6 is a flow chart of a method of sensing an external condition according to some embodiments.
- FIG. 7 is a block diagram of hardware and software power management components according to some embodiments.
- FIG. 8 illustrates a computer system according to some embodiments.
- processing system may refer to any apparatus that includes one or more processors.
- processing systems include a desktop Personal Computer (PC), a mobile computer, a workstation, a server, a set top box (e.g., associated with a digital television receiver), a wireless telephone, and a game system.
- FIG. 1 is a block diagram of a processing system 100 .
- the processing system 100 includes a number of subsystems 102 .
- the subsystems 102 might include, for example, one or more processors, such as an INTEL® PENTIUM® IV processor.
- the processor may execute, for example, an operating system and/or a number of applications (e.g., a word processing application).
- Other examples of a subsystem include a hard disk drive, an audio subsystem, a display device, a communication device, and a printer.
- the processing system 100 includes a power policy manager 150 .
- the power policy manager 150 might, for example, be associated with an operating system that is being executed by a processor (e.g., one of the subsystems 102 ).
- the power policy manager 150 may place the processing system 100 (including any of the subsystems 102 ) in a number of different power states. For example, the power policy manager 150 might place a hard disk drive in a lower-power state when it has not been accessed for ten minutes.
- the power policy manager 150 evaluates context information associated with the processing system 100 , and arranges for a power state associated with the processing system 100 (e.g., including any of the subsystems 102 ) to transition from a first power state to a second power state based on the evaluation. According to some embodiments, the power policy manager 150 operates in accordance with one or more context aware power manager extensions.
- FIG. 2 is a flow chart of a method according to some embodiments.
- the method of FIG. 2 may be associated with, for example, a processing system such as the one described with respect to FIG. 1 .
- the flow charts described herein do not necessarily imply a fixed order to the actions, and embodiments may be performed in any order that is practicable.
- any of the .methods described herein may be performed by hardware, software (including microcode), or a combination of hardware and software.
- a storage medium may store thereon instructions that when executed by a machine results in performance according to any of the embodiments described herein.
- context information associated with a processing system is determined.
- the context information might comprise an evaluation of applications that are currently being executed or a sensed condition.
- Other examples of context information include a time of day, a day of week, and a date.
- the context information might indicate whether or not it is currently between 9:00 AM and 5:00 PM on a work day.
- the context information may also be based on a user usage pattern. For example, the context information might indicate that a first user of a hand-held device typically listens to a single song while a second user typically listens to many songs (and often takes thirty seconds to select his or her next song).
- a power state associated with the processing system it is “automatically” arranged for a power state associated with the processing system to transition from a first power state to a second power state based on the context information.
- the term “automatically” refers to an action that is performed without requiring an input from a user. Note that the power state might be adjusted directly by a power manager or by adjusting an existing power policy (e.g., reducing a time-out period).
- a laptop computer might automatically implement a first set of power management policies if it is currently between 9:00 AM and 5:00 PM on a work day and a second set of policies if it is not.
- a hand-held device might automatically turn off an audio subsystem after a first user finishes listening to a song but not turn off the audio subsystem after a second user finishes listening to a song (e.g., because he or she is likely to select another song).
- FIG. 3 is a block diagram of a processing system 300 that includes a number of subsystems.
- the processing system 300 may include a hard disk drive 302 that might store applications and information files (e.g., songs and pictures).
- the processing system 300 may also include an audio subsystem 304 .
- the audio subsystem 304 and hard disk drive 302 may be used, for example, to provide audio output in accordance with audio layer 3 of the Motion Picture Experts Group (MPEG) 1 protocol as defined by International Organization for Standardization (ISO)/International Engineering Consortium (IEC) document number 11172-1 entitled “Information Technology—Coding of Moving Pictures and Associated Audio for Digital Storage Media” (1993) (MP3).
- MPEG Motion Picture Experts Group
- ISO International Organization for Standardization
- IEC International Engineering Consortium
- the processing system 300 may include a display 306 (e.g., the screen of a hand-held device), a communication subsystem 308 , and a printer 310 .
- the communication subsystem 308 might, for example, exchange information via a communication network in accordance with third generation (3G) wireless, Global System for Mobile (GSM), and/or Bluetooth communications.
- 3G third generation
- GSM Global System for Mobile
- Bluetooth Bluetooth communications
- the communication subsystem 308 may transmit and/or receive information via a Wireless Local Area Network (WLAN) that operates in accordance with an Ethernet protocol and/or a Code-Division Multiple Access with Collision Avoidance (CDMA/CA) protocol, such as the one defined by Institute of Electrical and Electronics Engineering (IEEE) specification number 802.11g (2003).
- WLAN Wireless Local Area Network
- CDMA/CA Code-Division Multiple Access with Collision Avoidance
- the processing system 300 also includes a processor 350 that may execute an operating system and one or more applications.
- the processor 350 might execute the MICROSOFT® WINDOWS® XP operating system, the MICROSOFT® INTERNET EXPLORER 5.0® web browser, and a media player adapted to play MP3 songs.
- the processor 350 or some other component may also include a power manager that operates in accordance with the Advanced Configuration and Power Interface (ACPI) Specification Revision 2.0b (October, 2002).
- ACPI Advanced Configuration and Power Interface
- the processor 350 might be able to operate in a number of different “sleep” states, such as S 0 (fully operational and consuming the most power); S 1 (a low wake latency sleep state after which no system context is lost); and S 2 (a low wake latency sleep state after which processor and system cache context needs to be restored).
- frequency and voltage scaling may be used to reduce the amount of power consumed by the processor 350 .
- the processing system 300 may be able to operate in various global states, device power states, processor power states, and/or performance states.
- the ACPI specification defines global states G 0 through G 3 , device power states D 0 through D 3 (and device performance states P 0 through Pn within D 0 ), and processor power states C 0 through C 3 . That is, the performance and power requirements of various subsystems 302 , 304 , 306 , 308 , 310 may be individually controlled.
- FIG. 4 is a flow chart of a method of evaluating applications being executed according to some embodiments.
- subsystem usage associated with a plurality of applications being executed by a processing system is evaluated. Note that this evaluation might be performed, for example, periodically or when there is a change in the set of applications that are currently being executed (e.g., when a user launches a new program).
- the processor 350 is currently executing both a web browser and an MP3 player, the processor is currently in a higher-power state (e.g., no voltage or frequency scaling is being used). That is, a significant amount of processing may be required to support both applications and therefore the higher level of power consumption is justified.
- a higher-power state e.g., no voltage or frequency scaling is being used.
- the hard disk drive 302 is in a normal state, the audio subsystem 304 is on (e.g., to play the MP3 files), the display 306 is bright (e.g., so the user can view web pages), and the communication subsystem 308 is on (e.g., to let the user access the Internet).
- the printer subsystem 310 is off (e.g., because neither application is likely to use the printer 310 ), which may reduce the amount of power being used by the processing system 300 .
- a power state associated with a subsystem it is arranged for a power state associated with a subsystem to transition from the first power state to the second power state based on said evaluation.
- one or more subsystems may be transitioned to a lower-power state (e.g., to a lower-power ACPI device or performance state) when they are not likely to be used any application currently being executed.
- FIG. 5 is a block diagram of the processing system 300 after the user has closed the web browser (e.g., he or she is no longer accessing web pages).
- frequency and voltage scaling may be used to reduce the amount of power being consumed by the processor 350 (since the MP3 player alone requires less processing power).
- the performance of the hard disk drive 302 may be optimized to support the MP3 player.
- the power state of the audio subsystem 304 has not been changed (since the audio subsystem 304 is required by the MP3 player).
- the display 306 has been placed in a “dim” power mode (e.g., because the user is not likely to be looking at the display) and the communication subsystem 308 has been turned off completely in order to reduce the amount of power being used by the processing system 300 .
- the life of a battery used to power the processing system 300 may be extended.
- FIG. 6 is a flow chart of a method of sensing an external condition according to some embodiments.
- an external condition is sensed at 602 , and it is arranged for a processing system to transition a power state at 604 based on the sensed condition.
- the external condition might be, for example, an amount of ambient light.
- a processing system might use a light sensor to place a subsystem in a higher-power state when a user enters a dark room and turns on the light (e.g., because he or she is more likely to use the subsystem).
- a motion associated with a processing system may be detected and used to adjust a power state.
- a hand-held computer might transition to a higher-power state when it is picked up by a user.
- a location associated with the processing system may be detected.
- a wireless telephone subsystem might automatically transition to a lower-power state when the processing system detects that it is in the user's home or not within range of wireless service.
- a location associated with a remote device might be detected.
- a display subsystem on a laptop computer might be transitioned to a “bright” state when the laptop computer detects that a digital camera has been moved nearby (e.g., to let a user view pictures from the camera via a Bluetooth interface).
- FIG. 7 is a block diagram of hardware and software power management components that may be associated with an ACPI system 700 according to some embodiments.
- the system 700 includes platform hardware 710 , such as a processor, a motherboard, and subsystems associated with the system 700 .
- the system 700 also includes a Basic Input/Output System (BIOS) 720 that facilitates start-up operations.
- BIOS Basic Input/Output System
- the platform hardware 710 may exchange information with an ACPI driver 740 via an ACPI BIOS 730 , ACPI registers 732 , and/or ACPI tables 734 (and these may be part of the BIOS data and contained with the BIOS in a persistent memory element, such as flash memory).
- BIOS Basic Input/Output System
- the ACPI driver 740 may in turn communicate with an Operating System (OS) kernel 750 and one or more device drivers 742 .
- OS Operating System
- the kernel 750 may exchange information with OS Power Management (OSPM) code 760 and one or more applications 770 that are executing in the system 700 .
- OSPM OS Power Management
- the ACPI system 700 may enter a number of different power states.
- the various power states may represent, for example, states in which the system 700 consumes an increasingly lower amount of power and application 770 instructions are not being executed by a processor in the platform hardware 710 (e.g., ACPI sleep states S 1 or S 2 ).
- the system 700 may appear to be “turned off” to a user, such as when in ACPI sleep state S 3 , also referred to as “suspend to RAM” and ACPI sleep state S 4 , also referred to as “hibernate.”
- One or more of the elements in the system 700 may act as a power manager.
- the power manager is associated with an Extensible Firmware Interface (EFI), such as an interface between the operating system and platform firmware.
- EFI Extensible Firmware Interface
- BIOS and/or EFI might allow for improved power management without significant changes to an existing operating system.
- the power manager simply decides whether or not a particular subsystem can be turned “off” based on the applications that are currently being executed.
- the power manager may perform a Boolean OR operation on subsystem requirements associated with a plurality of applications 770 that are currently being executed.
- the power manager may then arrange for a power state associated with system 700 (e.g., including any subsystem) to transition either “on” or “off” based on the result of the Boolean OR operation (e.g., the subsystem will be turned on when at least one application requires it).
- the power manager may adjust a power state to any number of other levels (e.g., a display might be set to 20% brightness).
- a display might be set to 20% brightness.
- the following software algorithm might be used to provide power state transitions for a processing system that has n subsystems (e.g., devices) and that is able to execute j different applications:
- the power manager may set the brightness level of a display subsystem to 90%.
- the power manager may adjust the brightness level of the display subsystem to 50% (and thereby save power and increase the amount of time a battery will be able to power the system).
- FIG. 8 illustrates a computer system 800 according to some embodiments.
- the computing system 800 may consume power from a battery 820 and operate in accordance with any of the embodiments described herein.
- the computing system might include a processor 810 that adjusts a powers state associated with a subsystem based on context information (e.g., applications that are running and/or an external condition). Note that the subsystem being adjusted could, according to some embodiments, be the processor 810 itself.
- ACPI power states have been used herein as an example, embodiments of the present invention may be associated with any type of lower-power state.
- specific components have been described as performing specific functions, any of the functions described herein might be performed by a software application, a hardware device, an operating system, a driver, and/or a BIOS.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Supply And Distribution Of Alternating Current (AREA)
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
- Secondary Cells (AREA)
Abstract
According to some embodiments, context information associated with a processing system may be determined. It may then be automatically arranged for a power state associated with the processing system to transition from a first power state to a second power state based on the context information.
Description
- The present application is a continuation of U.S. patent application Ser. No. 10/933,886 entitled “Context Based Power Management” and issued as U.S. Pat. No. 7,565,562 on Jul. 21, 2009. The entire content of that application is incorporated herein by reference.
- A processing system consumes power as it operates. For example, a processing system associated with a mobile computer might consume power from a battery. As the performance of a processing system is improved (e.g., by increasing the speed of the processor, allowing wireless communication, providing a larger display, and/or executing more complex applications), the amount of power consumed by the processing system may increase. As a result, a battery may need to be re-charged more frequently, which might be annoying for a user. Note that increasing the size of the battery might be impractical (e.g., because it would make a mobile computer too large).
- To conserve power, a processing system and/or a subsystem within the processing system may have a number of different power states. For example, the processing system or subsystem might operate in a higher-power state when it is actively being used and in a lower-power state during periods of relative inactivity (e.g., a hard disk drive might be transitioned to a lower-power state when it has not been accessed for five minutes). In some cases, however, a processing system or subsystem may not be transitioned to a lower-power state. For example, a subsystem might not be placed in a placed in a lower-power state even when a user is not executing any applications that require that subsystem.
-
FIG. 1 is a block diagram of a processing system according to some embodiments. -
FIG. 2 is a flow chart of a method according to some embodiments. -
FIG. 3 is a block diagram of a processing system according to some embodiments. -
FIG. 4 is a flow chart of a method of evaluating applications that are currently being executed according to some embodiments. -
FIG. 5 is a block diagram of a processing system according to some embodiments. -
FIG. 6 is a flow chart of a method of sensing an external condition according to some embodiments. -
FIG. 7 is a block diagram of hardware and software power management components according to some embodiments. -
FIG. 8 illustrates a computer system according to some embodiments. - Some embodiments described herein are directed to a “processing system.” As used herein, the phrase “processing system” may refer to any apparatus that includes one or more processors. Examples of processing systems include a desktop Personal Computer (PC), a mobile computer, a workstation, a server, a set top box (e.g., associated with a digital television receiver), a wireless telephone, and a game system.
- For example,
FIG. 1 is a block diagram of aprocessing system 100. In particular, theprocessing system 100 includes a number ofsubsystems 102. Thesubsystems 102 might include, for example, one or more processors, such as an INTEL® PENTIUM® IV processor. The processor may execute, for example, an operating system and/or a number of applications (e.g., a word processing application). Other examples of a subsystem include a hard disk drive, an audio subsystem, a display device, a communication device, and a printer. - The
processing system 100 includes apower policy manager 150. Thepower policy manager 150 might, for example, be associated with an operating system that is being executed by a processor (e.g., one of the subsystems 102). Thepower policy manager 150 may place the processing system 100 (including any of the subsystems 102) in a number of different power states. For example, thepower policy manager 150 might place a hard disk drive in a lower-power state when it has not been accessed for ten minutes. - According to some embodiments, the
power policy manager 150 evaluates context information associated with theprocessing system 100, and arranges for a power state associated with the processing system 100 (e.g., including any of the subsystems 102) to transition from a first power state to a second power state based on the evaluation. According to some embodiments, thepower policy manager 150 operates in accordance with one or more context aware power manager extensions. -
FIG. 2 is a flow chart of a method according to some embodiments. The method ofFIG. 2 may be associated with, for example, a processing system such as the one described with respect toFIG. 1 . The flow charts described herein do not necessarily imply a fixed order to the actions, and embodiments may be performed in any order that is practicable. Note that any of the .methods described herein may be performed by hardware, software (including microcode), or a combination of hardware and software. For example, a storage medium may store thereon instructions that when executed by a machine results in performance according to any of the embodiments described herein. - At 202, context information associated with a processing system is determined. As described with respect to
FIGS. 4 and 6 , the context information might comprise an evaluation of applications that are currently being executed or a sensed condition. Other examples of context information include a time of day, a day of week, and a date. For example, the context information might indicate whether or not it is currently between 9:00 AM and 5:00 PM on a work day. - The context information may also be based on a user usage pattern. For example, the context information might indicate that a first user of a hand-held device typically listens to a single song while a second user typically listens to many songs (and often takes thirty seconds to select his or her next song).
- At 204, it is “automatically” arranged for a power state associated with the processing system to transition from a first power state to a second power state based on the context information. As used herein, the term “automatically” refers to an action that is performed without requiring an input from a user. Note that the power state might be adjusted directly by a power manager or by adjusting an existing power policy (e.g., reducing a time-out period).
- For example, a laptop computer might automatically implement a first set of power management policies if it is currently between 9:00 AM and 5:00 PM on a work day and a second set of policies if it is not. In the case of a user usage pattern, for example, a hand-held device might automatically turn off an audio subsystem after a first user finishes listening to a song but not turn off the audio subsystem after a second user finishes listening to a song (e.g., because he or she is likely to select another song).
-
FIG. 3 is a block diagram of aprocessing system 300 that includes a number of subsystems. In particular, theprocessing system 300 may include ahard disk drive 302 that might store applications and information files (e.g., songs and pictures). Theprocessing system 300 may also include anaudio subsystem 304. Theaudio subsystem 304 andhard disk drive 302 may be used, for example, to provide audio output in accordance with audio layer 3 of the Motion Picture Experts Group (MPEG) 1 protocol as defined by International Organization for Standardization (ISO)/International Engineering Consortium (IEC) document number 11172-1 entitled “Information Technology—Coding of Moving Pictures and Associated Audio for Digital Storage Media” (1993) (MP3). - In addition, the
processing system 300 may include a display 306 (e.g., the screen of a hand-held device), acommunication subsystem 308, and aprinter 310. Thecommunication subsystem 308 might, for example, exchange information via a communication network in accordance with third generation (3G) wireless, Global System for Mobile (GSM), and/or Bluetooth communications. By way of example, thecommunication subsystem 308 may transmit and/or receive information via a Wireless Local Area Network (WLAN) that operates in accordance with an Ethernet protocol and/or a Code-Division Multiple Access with Collision Avoidance (CDMA/CA) protocol, such as the one defined by Institute of Electrical and Electronics Engineering (IEEE) specification number 802.11g (2003). - The
processing system 300 also includes aprocessor 350 that may execute an operating system and one or more applications. For example, theprocessor 350 might execute the MICROSOFT® WINDOWS® XP operating system, the MICROSOFT® INTERNET EXPLORER 5.0® web browser, and a media player adapted to play MP3 songs. - The
processor 350 or some other component may also include a power manager that operates in accordance with the Advanced Configuration and Power Interface (ACPI) Specification Revision 2.0b (October, 2002). For example, theprocessor 350 might be able to operate in a number of different “sleep” states, such as S0 (fully operational and consuming the most power); S1 (a low wake latency sleep state after which no system context is lost); and S2 (a low wake latency sleep state after which processor and system cache context needs to be restored). Moreover, frequency and voltage scaling may be used to reduce the amount of power consumed by theprocessor 350. - In addition to sleep states, the
processing system 300 may be able to operate in various global states, device power states, processor power states, and/or performance states. Note that the ACPI specification defines global states G0 through G3, device power states D0 through D3 (and device performance states P0 through Pn within D0), and processor power states C0 through C3. That is, the performance and power requirements ofvarious subsystems -
FIG. 4 is a flow chart of a method of evaluating applications being executed according to some embodiments. At 402, subsystem usage associated with a plurality of applications being executed by a processing system is evaluated. Note that this evaluation might be performed, for example, periodically or when there is a change in the set of applications that are currently being executed (e.g., when a user launches a new program). - For example, referring again to
FIG. 3 , because theprocessor 350 is currently executing both a web browser and an MP3 player, the processor is currently in a higher-power state (e.g., no voltage or frequency scaling is being used). That is, a significant amount of processing may be required to support both applications and therefore the higher level of power consumption is justified. - Moreover, the
hard disk drive 302 is in a normal state, theaudio subsystem 304 is on (e.g., to play the MP3 files), thedisplay 306 is bright (e.g., so the user can view web pages), and thecommunication subsystem 308 is on (e.g., to let the user access the Internet). Note that theprinter subsystem 310 is off (e.g., because neither application is likely to use the printer 310), which may reduce the amount of power being used by theprocessing system 300. - At 404, it is arranged for a power state associated with a subsystem to transition from the first power state to the second power state based on said evaluation. For example, one or more subsystems may be transitioned to a lower-power state (e.g., to a lower-power ACPI device or performance state) when they are not likely to be used any application currently being executed.
- For example,
FIG. 5 is a block diagram of theprocessing system 300 after the user has closed the web browser (e.g., he or she is no longer accessing web pages). In this case, frequency and voltage scaling may be used to reduce the amount of power being consumed by the processor 350 (since the MP3 player alone requires less processing power). - Moreover, the performance of the
hard disk drive 302 may be optimized to support the MP3 player. In this example, the power state of theaudio subsystem 304 has not been changed (since theaudio subsystem 304 is required by the MP3 player). Thedisplay 306 has been placed in a “dim” power mode (e.g., because the user is not likely to be looking at the display) and thecommunication subsystem 308 has been turned off completely in order to reduce the amount of power being used by theprocessing system 300. As a result, the life of a battery used to power theprocessing system 300 may be extended. - In addition to evaluating the applications that are being executed, other context information may be used to adjust power states. For example,
FIG. 6 is a flow chart of a method of sensing an external condition according to some embodiments. In particular, an external condition is sensed at 602, and it is arranged for a processing system to transition a power state at 604 based on the sensed condition. - The external condition might be, for example, an amount of ambient light. In this case, a processing system might use a light sensor to place a subsystem in a higher-power state when a user enters a dark room and turns on the light (e.g., because he or she is more likely to use the subsystem). As another example, a motion associated with a processing system may be detected and used to adjust a power state. For example, a hand-held computer might transition to a higher-power state when it is picked up by a user. As another example, a location associated with the processing system may be detected. For example, a wireless telephone subsystem might automatically transition to a lower-power state when the processing system detects that it is in the user's home or not within range of wireless service. As still another example, a location associated with a remote device might be detected. For example, a display subsystem on a laptop computer might be transitioned to a “bright” state when the laptop computer detects that a digital camera has been moved nearby (e.g., to let a user view pictures from the camera via a Bluetooth interface).
-
FIG. 7 is a block diagram of hardware and software power management components that may be associated with anACPI system 700 according to some embodiments. Thesystem 700 includesplatform hardware 710, such as a processor, a motherboard, and subsystems associated with thesystem 700. Thesystem 700 also includes a Basic Input/Output System (BIOS) 720 that facilitates start-up operations. Theplatform hardware 710 may exchange information with anACPI driver 740 via anACPI BIOS 730, ACPI registers 732, and/or ACPI tables 734 (and these may be part of the BIOS data and contained with the BIOS in a persistent memory element, such as flash memory). The ACPI driver 740 (e.g., an integral part of an operating system) may in turn communicate with an Operating System (OS)kernel 750 and one ormore device drivers 742. Thekernel 750 may exchange information with OS Power Management (OSPM)code 760 and one ormore applications 770 that are executing in thesystem 700. - To save power, the
ACPI system 700 may enter a number of different power states. The various power states may represent, for example, states in which thesystem 700 consumes an increasingly lower amount of power andapplication 770 instructions are not being executed by a processor in the platform hardware 710 (e.g., ACPI sleep states S1 or S2). In other power states, thesystem 700 may appear to be “turned off” to a user, such as when in ACPI sleep state S3, also referred to as “suspend to RAM” and ACPI sleep state S4, also referred to as “hibernate.” - One or more of the elements in the system 700 (or some other element not shown in
FIG. 7 ) may act as a power manager. According to some embodiments, the power manager is associated with an Extensible Firmware Interface (EFI), such as an interface between the operating system and platform firmware. Note that implementing such an approach in BIOS and/or EFI might allow for improved power management without significant changes to an existing operating system. - According to some embodiments, the power manager simply decides whether or not a particular subsystem can be turned “off” based on the applications that are currently being executed. In this case, the power manager may perform a Boolean OR operation on subsystem requirements associated with a plurality of
applications 770 that are currently being executed. The power manager may then arrange for a power state associated with system 700 (e.g., including any subsystem) to transition either “on” or “off” based on the result of the Boolean OR operation (e.g., the subsystem will be turned on when at least one application requires it). - In addition to simply turning a subsystem “on” or “off,” the power manager may adjust a power state to any number of other levels (e.g., a display might be set to 20% brightness). For example, the following software algorithm might be used to provide power state transitions for a processing system that has n subsystems (e.g., devices) and that is able to execute j different applications:
- While (forever)//in this example, the algorithm is being executed periodically
-
{ For Application 1 though j { If this application is new since last sampling { For Device 1 through n { Application[j].Device[i].Performance_State; } } Else { If application state has changed (e.g., to idle) { For Device 1 through n { Application[j].Device[i].Performance_State; } } } } For Device[1..n] in the system { Device [i].Performance_State = MAX(Application [1..M].Device[i].Performance_State); } }
That is, when a new application begins to execute, the algorithm will determine the minimum amount of resources that the application needs on a device-by-device basis (e.g., the new application requires at least 20% brightness for a display and a fully operational communication subsystem). Similarly, when an application stops executing the performance profile may be adjusted as appropriate (e.g., to 0% brightness and no need for a communication subsystem at all). The algorithm then selects the maximum value for each device and adjusts the power state of devices as appropriate. - Consider, for example, a processing system that is currently executing three applications. The first application requires a 40% brightness level, the second application requires a 90% brightness level, and the third application requires a 50% brightness level. In this case, the power manager may set the brightness level of a display subsystem to 90%. When the user closes the second application, the power manager may adjust the brightness level of the display subsystem to 50% (and thereby save power and increase the amount of time a battery will be able to power the system).
-
FIG. 8 illustrates acomputer system 800 according to some embodiments. Thecomputing system 800 may consume power from abattery 820 and operate in accordance with any of the embodiments described herein. For example, the computing system might include aprocessor 810 that adjusts a powers state associated with a subsystem based on context information (e.g., applications that are running and/or an external condition). Note that the subsystem being adjusted could, according to some embodiments, be theprocessor 810 itself. - The following illustrates various additional embodiments. These do not constitute a definition of all possible embodiments, and those skilled in the art will understand that many other embodiments are possible. Further, although the following embodiments are briefly described for clarity, those skilled in the art will understand how to make any changes, if necessary, to the above description to accommodate these and other embodiments and applications.
- Although ACPI power states have been used herein as an example, embodiments of the present invention may be associated with any type of lower-power state. Moreover, although specific components have been described as performing specific functions, any of the functions described herein might be performed by a software application, a hardware device, an operating system, a driver, and/or a BIOS.
- The several embodiments described herein are solely for the purpose of illustration. Persons skilled in the art will recognize from this description other embodiments may be practiced with modifications and alterations limited only by the claims.
Claims (20)
1. A method, comprising:
automatically evaluating subsystem usage associated with a plurality of applications being executed by a processing system;
sensing a user generated condition external to the processing system that represents a potential usage of the processing system by a user; and
automatically arranging for a power state associated with the processing system to transition from a first power state to a second power state based on said evaluation and external condition.
2. The method of claim 1 , wherein said arranging comprises:
arranging for a power state associated with a subsystem to transition from the first power state to the second power state based on said evaluation and external condition.
3. The method of claim 2 , wherein at least one of the subsystems comprises at least one of: (i) a processor, (ii) a hard disk drive, (iii) an audio subsystem, (iv) a display device, or (v) a communication device.
4. The method of claim 3 , wherein the power state is an advanced configuration and power interface specification power state.
5. The method of claim 4 , wherein the power state is associated with at least one of: (i) a global state, (ii) a device power state, (iii) a sleep state, (iv) a processor power state, or (v) a performance state.
6. A method, comprising:
automatically determining context information associated with a processing system that includes a number of subsystems, wherein said determining comprises sensing a user generated condition external to the processing system that represents a potential usage of the processing system by a user; and
automatically arranging for a power state associated with the processing system to transition from a first power state to a second power state based on the context information.
7. The method of claim 6 , wherein the external condition is associated with at least one of: (i) ambient light, (ii) a motion associated with the processing system, (iii) a location associated with the processing system, or (iv) a location associated with a remote device.
8. The method of claim 7 , wherein the power state is an advanced configuration and power interface specification power state.
9. The method of claim 8 , wherein the power state is associated with at least one of: (i) a global state, (ii) a device power state, (iii) a sleep state, (iv) a processor power state, or (v) a performance state.
10. The method of claim 6 , wherein said arranging is performed in accordance with a context-aware power management extension and an operating system power policy manager.
11. The method of claim 6 , wherein the processing system comprises at least one of: (i) a desktop personal computer; (ii) a mobile computer, (iii) a workstation, (iv) a server, (v) a set-top box, (vi) a wireless telephone, or (vii) a game system.
12. The method of claim 6 , wherein said determining is performed by at least one of: (i) a software application, (ii) a hardware device, (iii) an operating system, (iv) a driver, or (v) a basic input/output system.
13. An apparatus, comprising:
a plurality of subsystems;
a processor; and
a power manager to: (i) automatically evaluate context information associated with the apparatus, wherein the context information is based at least in part on an evaluation of subsystem requirements associated with a plurality of applications currently being executed by the processor, (ii) sensing a user generated condition external to the apparatus that represents a potential usage of the apparatus by a user, and (iii) automatically arrange for a power state associated with the apparatus to transition from a first power state to a second power state based on the evaluation and external condition.
14. The apparatus of claim 13 , wherein at least one of the subsystems comprises at least one of: (i) a processor, (ii) a hard disk drive, (iii) an audio subsystem, (iv) a display device, or (v) a communication device.
15. The apparatus of claim 13 , wherein the apparatus further includes a sensor to sense the external condition.
16. The apparatus of claim 15 , wherein the sensor comprises at least one of: (i) an ambient light sensor, (ii) a motion sensor, or (iii) a location sensor.
17. The apparatus of claim 13 , wherein the power state is an advanced configuration and power interface specification power state and is associated with at least one of: (i) a global state, (ii) a device power state, (iii) a sleep state, (iv) a processor power state, or (v) a performance state.
18. The apparatus of claim 13 , wherein the power manager is an operating system power policy manager adapted to use context-aware power manager extensions.
19. A computer system, comprising:
a plurality of subsystems;
a processor;
a battery to supply power to the processor; and
a power manager to: (i) automatically determine minimum subsystem requirements associated with a plurality of applications being executed by the processor, (ii) sense a user generated condition external to the computer system that represents a potential usage of the computer system by a user, and (iii) automatically arrange for a power state associated with a subsystem to transition from a first power state to a second power state based on a largest minimum subsystem requirement for that subsystem and the external condition.
20. The computer system of claim 19 , wherein the power state is an advanced configuration and power interface specification power state and is associated with at least one of: (i) a global state, (ii) a device power state, (iii) a sleep state, (iv) a processor power state, or (v) a performance state.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/505,813 US20090287948A1 (en) | 2004-09-03 | 2009-07-20 | Context based power management |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/933,886 US7565562B2 (en) | 2004-09-03 | 2004-09-03 | Context based power management |
US12/505,813 US20090287948A1 (en) | 2004-09-03 | 2009-07-20 | Context based power management |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/933,886 Continuation US7565562B2 (en) | 2004-09-03 | 2004-09-03 | Context based power management |
Publications (1)
Publication Number | Publication Date |
---|---|
US20090287948A1 true US20090287948A1 (en) | 2009-11-19 |
Family
ID=35453471
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/933,886 Expired - Fee Related US7565562B2 (en) | 2004-09-03 | 2004-09-03 | Context based power management |
US12/505,813 Abandoned US20090287948A1 (en) | 2004-09-03 | 2009-07-20 | Context based power management |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/933,886 Expired - Fee Related US7565562B2 (en) | 2004-09-03 | 2004-09-03 | Context based power management |
Country Status (5)
Country | Link |
---|---|
US (2) | US7565562B2 (en) |
JP (2) | JP4977026B2 (en) |
CN (1) | CN101040241A (en) |
TW (1) | TWI292865B (en) |
WO (1) | WO2006028660A2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110075889A1 (en) * | 2009-09-25 | 2011-03-31 | Ying-Jieh Huang | Image processing system with ambient sensing capability and image processing method thereof |
US20130046967A1 (en) * | 2011-08-17 | 2013-02-21 | Broadcom Corporation | Proactive Power Management Using a Power Management Unit |
US20130250825A1 (en) * | 2012-03-23 | 2013-09-26 | Qnx Software Systems Limited | Methods And Apparatus For Controlling Power Consumption In An Electronic Device With A Communication Subsystem |
WO2014120537A1 (en) * | 2013-01-31 | 2014-08-07 | Apple Inc. | Dynamic adaptation of a traffic inactivity timer |
US9072052B2 (en) | 2010-08-09 | 2015-06-30 | Blackberry Limited | Communication system providing context-based mobile wireless communications device power consumption management and related methods |
WO2015099700A1 (en) * | 2013-12-24 | 2015-07-02 | Intel Corporation | Context-based indoor power management |
WO2016153666A1 (en) * | 2015-03-26 | 2016-09-29 | Intel Corporation | System and method for adaptive thermal and performance management in electronic devices |
US10289189B2 (en) | 2016-10-31 | 2019-05-14 | Microsoft Technology Licensing, Llc | Usage pattern based supervisory control of power management |
US10613599B2 (en) | 2014-01-06 | 2020-04-07 | Intel Corporation | Contextual Platform Power Management |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9001801B2 (en) * | 2004-09-07 | 2015-04-07 | Broadcom Corporation | Method and system for low power mode management for complex Bluetooth devices |
JP2006236057A (en) * | 2005-02-25 | 2006-09-07 | Sony Corp | Apparatus and method for processing information, and program |
US7861099B2 (en) | 2006-06-30 | 2010-12-28 | Intel Corporation | Method and apparatus for user-activity-based dynamic power management and policy creation for mobile platforms |
US7861098B2 (en) * | 2006-06-30 | 2010-12-28 | Intel Corporation | Method and apparatus for user-activity-based dynamic power management and policy creation for mobile platforms |
US20070136615A1 (en) * | 2005-12-08 | 2007-06-14 | Electronics And Telecommunications Research Institute | System and method for reducing power used to execute application program |
US7484110B2 (en) * | 2006-03-16 | 2009-01-27 | Microsoft Corporation | Adaptive power management |
JP4960066B2 (en) * | 2006-11-15 | 2012-06-27 | 株式会社東芝 | Information processing apparatus and control method of information processing apparatus |
US8195340B1 (en) * | 2006-12-18 | 2012-06-05 | Sprint Communications Company L.P. | Data center emergency power management |
KR101370350B1 (en) * | 2007-02-07 | 2014-03-05 | 삼성전자 주식회사 | Computer system and control method thereof |
KR100861329B1 (en) | 2007-04-06 | 2008-10-01 | 한국과학기술원 | Context monitoring device supporting context monitoring and method of context monitoring |
US20080307240A1 (en) * | 2007-06-08 | 2008-12-11 | Texas Instruments Incorporated | Power management electronic circuits, systems, and methods and processes of manufacture |
US8156353B2 (en) * | 2007-09-17 | 2012-04-10 | Intel Corporation | Techniques for communications power management based on system states |
JP2009088701A (en) * | 2007-09-27 | 2009-04-23 | Fuji Xerox Co Ltd | Information processor, program, and security system |
US8059570B2 (en) | 2008-01-11 | 2011-11-15 | Apple Inc. | Mobile network device battery conservation system and methods |
EP2263136A4 (en) * | 2008-03-03 | 2015-10-07 | Hewlett Packard Development Co | Software-based power-capping |
US20090292934A1 (en) * | 2008-05-22 | 2009-11-26 | Ati Technologies Ulc | Integrated circuit with secondary-memory controller for providing a sleep state for reduced power consumption and method therefor |
US9130684B2 (en) | 2008-06-23 | 2015-09-08 | Echostar Technologies L.L.C. | Systems and methods for conserving energy in an entertainment system |
US8850355B2 (en) * | 2008-07-14 | 2014-09-30 | Hewlett-Packard Development Company, L.P. | Systems and methods for communicating with media modules |
US8352767B2 (en) * | 2008-11-26 | 2013-01-08 | Symbol Technologies, Inc. | Intelligent and adaptive method to manage mobile device power |
US20100148708A1 (en) * | 2008-12-11 | 2010-06-17 | Jorgenson Joel A | Voltage scaling of an electric motor load to reduce power consumption |
TWI386793B (en) * | 2008-12-15 | 2013-02-21 | Inventec Appliances Corp | Handheld device and an energy-saving method therefor |
US8276010B2 (en) * | 2009-02-12 | 2012-09-25 | Cisco Technology, Inc. | Network based system to control and monitor power consumption of networked elements |
US8832475B1 (en) * | 2009-05-10 | 2014-09-09 | Cypress Semiconductor Corporation | Programmable power mode sequencer |
US9086875B2 (en) * | 2009-06-05 | 2015-07-21 | Qualcomm Incorporated | Controlling power consumption of a mobile device based on gesture recognition |
JP5551388B2 (en) * | 2009-07-21 | 2014-07-16 | トヨタ自動車株式会社 | Power saving system |
TWI415000B (en) * | 2009-08-05 | 2013-11-11 | Dfi Inc | Motherboard for selecting one of sub-systems immediately |
US8352770B2 (en) * | 2009-09-25 | 2013-01-08 | Intel Corporation | Method, system and apparatus for low-power storage of processor context information |
KR20110041286A (en) * | 2009-10-15 | 2011-04-21 | 삼성전자주식회사 | Computer system and control method thereof |
US8990591B2 (en) * | 2009-12-31 | 2015-03-24 | Intel Corporation | Power management system for selectively changing the power state of devices using an OS power management framework and non-OS power management framework |
WO2012001462A1 (en) * | 2010-06-30 | 2012-01-05 | Nokia Corporation | Method and apparatus for providing context-based power consumption control |
US8510582B2 (en) * | 2010-07-21 | 2013-08-13 | Advanced Micro Devices, Inc. | Managing current and power in a computing system |
US8539271B2 (en) | 2010-11-15 | 2013-09-17 | International Business Machines Corporation | Determining a power saving mode based on a hardware resource utilization trend |
US8984305B2 (en) | 2010-12-21 | 2015-03-17 | Intel Corporation | Method and apparatus to configure thermal design power in a microprocessor |
US8775836B2 (en) * | 2010-12-23 | 2014-07-08 | Intel Corporation | Method, apparatus and system to save processor state for efficient transition between processor power states |
US8904197B2 (en) * | 2011-03-07 | 2014-12-02 | Ricoh Co., Ltd. | Power management based on combined user interface and sensor inputs |
US9026814B2 (en) * | 2011-06-17 | 2015-05-05 | Microsoft Technology Licensing, Llc | Power and load management based on contextual information |
CN102915106A (en) * | 2011-08-02 | 2013-02-06 | 宏碁股份有限公司 | Power supply management method of portable device |
US8719599B2 (en) | 2011-08-15 | 2014-05-06 | Hewlett-Packard Development Company, L.P. | Monitoring subsystem power |
EP2766789A4 (en) * | 2011-10-14 | 2015-06-03 | Intel Corp | Speculative system start-up to improve initial end-user interaction responsiveness |
WO2013077891A1 (en) | 2011-11-22 | 2013-05-30 | Intel Corporation | Collaborative processor and system performance and power management |
WO2013081598A1 (en) | 2011-11-30 | 2013-06-06 | Intel Corporation | Motion detection enabled power optimized display |
US8862909B2 (en) | 2011-12-02 | 2014-10-14 | Advanced Micro Devices, Inc. | System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller |
US8924758B2 (en) | 2011-12-13 | 2014-12-30 | Advanced Micro Devices, Inc. | Method for SOC performance and power optimization |
US9143178B1 (en) | 2012-03-20 | 2015-09-22 | Google Inc. | Activity-based remaining battery life |
CN103324263B (en) * | 2012-03-21 | 2016-06-15 | 神讯电脑(昆山)有限公司 | Method for managing power supply and device thereof |
US10554476B2 (en) | 2012-07-18 | 2020-02-04 | Avagao Technologies International Sales Pte. Limited | System and method for managing roles in a peer-to-peer connection |
CN103593038B (en) * | 2012-08-14 | 2016-01-20 | 腾讯科技(深圳)有限公司 | A kind of method and apparatus controlling to apply |
US8943252B2 (en) | 2012-08-16 | 2015-01-27 | Microsoft Corporation | Latency sensitive software interrupt and thread scheduling |
US9720701B2 (en) * | 2012-09-10 | 2017-08-01 | Intel Corporation | Providing support for device states |
US9436268B2 (en) * | 2012-09-27 | 2016-09-06 | Hewlett-Packard Development Company, L.P. | System power control using a power supply to provide voltage to subsystems in which a subsystem determines its operating state based on the voltage received by the subsystem |
US9851787B2 (en) | 2012-11-29 | 2017-12-26 | Microsoft Technology Licensing, Llc | Display resource management |
US9594411B2 (en) * | 2013-02-28 | 2017-03-14 | Qualcomm Incorporated | Dynamic power management of context aware services |
CN105683860B (en) * | 2013-06-20 | 2019-02-15 | 惠普发展公司,有限责任合伙企业 | Calculate plant capacity state |
JP2015011471A (en) * | 2013-06-27 | 2015-01-19 | 株式会社横須賀テレコムリサーチパーク | Electronic equipment, power supply control method and program |
US9891696B2 (en) * | 2014-10-03 | 2018-02-13 | Google Llc | Intelligent device wakeup |
WO2016090642A1 (en) | 2014-12-12 | 2016-06-16 | 上海兆芯集成电路有限公司 | System and method for dynamically adjusting voltage frequency |
CN106033242B (en) | 2015-03-09 | 2019-08-16 | 光宝电子(广州)有限公司 | External power supply power supply unit and applied to its system connect detecting unit |
IN2015CH01313A (en) | 2015-03-17 | 2015-04-10 | Wipro Ltd | |
US10365700B2 (en) | 2015-11-27 | 2019-07-30 | Samsung Electronics Co., Ltd. | System and method of managing context-aware resource hotplug |
US9852060B2 (en) | 2016-03-31 | 2017-12-26 | Dell Products L.P. | Storage class memory (SCM) memory mode cache system |
CN106060651B (en) * | 2016-06-06 | 2019-08-16 | 深圳Tcl数字技术有限公司 | The starting method and system of smart television |
WO2018112738A1 (en) * | 2016-12-20 | 2018-06-28 | Intel Corporation | Power state management |
TWI619011B (en) * | 2017-04-26 | 2018-03-21 | 全漢企業股份有限公司 | Power supply apparatus and power supply method |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5542035A (en) * | 1993-10-27 | 1996-07-30 | Elonex Technologies | Timer-controlled computer system shutdown and startup |
US5652927A (en) * | 1996-10-11 | 1997-07-29 | Eastman Kodak Company | Transmitting information between a computer and an auto focus camera |
US5675810A (en) * | 1994-09-07 | 1997-10-07 | Compaq Computer Corporation | Reducing power usage in a personal computer |
US20010020940A1 (en) * | 2000-03-13 | 2001-09-13 | Kabushiki Kaisha Toshiba | Information processor and power control method therefor |
US20030158763A1 (en) * | 2000-12-13 | 2003-08-21 | Digibot, Inc. | Method and system for monitoring service quality in a restaurant |
US20040003300A1 (en) * | 2002-06-28 | 2004-01-01 | Microsoft Corporation | Power management architecture for computing devices |
US6718474B1 (en) * | 2000-09-21 | 2004-04-06 | Stratus Technologies Bermuda Ltd. | Methods and apparatus for clock management based on environmental conditions |
US20040153867A1 (en) * | 2003-01-03 | 2004-08-05 | Mcalinden Paul | Dynamic performance and resource management in a processing system |
US6802016B2 (en) * | 2001-02-08 | 2004-10-05 | Twinhead International Corp. | User proximity sensor and signal processing circuitry for determining whether to power a computer on or off |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US6845457B1 (en) * | 2000-09-26 | 2005-01-18 | Sun Microsystems, Inc. | Method and apparatus for controlling transitions between a first and a second clock frequency |
US6865683B2 (en) * | 2001-05-21 | 2005-03-08 | Microsoft Corporation | System and method for powering down a mobile device |
US6968468B2 (en) * | 2002-02-25 | 2005-11-22 | O2 Micro, Inc. | Digital computer utilizing buffer to store and output data to play real time applications enabling processor to enter deep sleep state while buffer outputs data |
US6986064B2 (en) * | 2000-05-19 | 2006-01-10 | Fujitsu Limited | Method, recording medium and apparatus for power saving control via detection of usage pattern based on stored history and accounting of a spin down cost |
US7003654B2 (en) * | 2001-08-16 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | Time-based initialization defaults for an electronic information retrieval device |
US7010705B2 (en) * | 2003-05-01 | 2006-03-07 | Microlink Communications Inc. | Method and device for triggering power supply switch of a cordless electric-apparatus |
US7120911B1 (en) * | 2000-03-08 | 2006-10-10 | Mitsubishi Denki Kabushiki Kaisha | Processor power-saving control method, storage medium, and processor power-saving control device |
US7146513B2 (en) * | 2003-12-17 | 2006-12-05 | Hitachi, Ltd. | System for adjusting a clock frequency based on comparing a required process times and a worst case execution times and adjusting a voltage and clock frequency based on a number of ready state application tasks |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04203835A (en) * | 1990-11-30 | 1992-07-24 | Matsushita Electric Ind Co Ltd | Controlling device for operation of electric appliance |
JPH0573181A (en) * | 1991-09-11 | 1993-03-26 | Casio Comput Co Ltd | Data transmission system |
JPH07295671A (en) * | 1994-04-22 | 1995-11-10 | Hitachi Ltd | Computer with suspending function |
JPH10207584A (en) * | 1997-01-28 | 1998-08-07 | Canon Inc | Electronic equipment |
JP4550175B2 (en) * | 1997-10-23 | 2010-09-22 | 株式会社東芝 | Electronic device, backlight control method, and recording medium |
JPH11313024A (en) * | 1998-04-24 | 1999-11-09 | Tdk Corp | Radio card for personal computer |
JP2000032320A (en) * | 1998-07-14 | 2000-01-28 | Ricoh Co Ltd | Digital camera and digital camera system |
JP2001100870A (en) * | 1999-09-28 | 2001-04-13 | Toshiba Corp | Information processor |
JP2001184149A (en) * | 1999-12-27 | 2001-07-06 | Toshiba Corp | Information processor and method for controlling operation state |
US6684341B1 (en) * | 2000-03-09 | 2004-01-27 | International Business Machines Corporation | Method of altering the appearance of an icon of a program to provide an indication to a user that a power management is associated with the particular program |
JP4081541B2 (en) * | 2002-03-11 | 2008-04-30 | 富士フイルム株式会社 | Imaging communication system |
JP2003295987A (en) * | 2002-04-03 | 2003-10-17 | Canon Electronics Inc | Electronic equipment, operation mode control method, program and storage medium |
US7016705B2 (en) | 2002-04-17 | 2006-03-21 | Microsoft Corporation | Reducing power consumption in a networked battery-operated device using sensors |
JP2004094732A (en) * | 2002-09-02 | 2004-03-25 | Matsushita Electric Ind Co Ltd | Power supply control apparatus |
JP2004175099A (en) * | 2002-09-05 | 2004-06-24 | Ricoh Co Ltd | Image formation apparatus |
JP2004140472A (en) * | 2002-10-15 | 2004-05-13 | Nec Access Technica Ltd | Portable terminal unit |
JP3851866B2 (en) * | 2002-11-29 | 2006-11-29 | 株式会社東芝 | Electronic device and system environment setting method for the same |
-
2004
- 2004-09-03 US US10/933,886 patent/US7565562B2/en not_active Expired - Fee Related
-
2005
- 2005-08-12 CN CNA2005800294822A patent/CN101040241A/en active Pending
- 2005-08-12 WO PCT/US2005/028958 patent/WO2006028660A2/en active Application Filing
- 2005-08-12 TW TW094127558A patent/TWI292865B/en not_active IP Right Cessation
- 2005-08-12 JP JP2007529935A patent/JP4977026B2/en active Active
-
2009
- 2009-07-20 US US12/505,813 patent/US20090287948A1/en not_active Abandoned
-
2012
- 2012-02-02 JP JP2012021253A patent/JP2012123824A/en active Pending
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5542035A (en) * | 1993-10-27 | 1996-07-30 | Elonex Technologies | Timer-controlled computer system shutdown and startup |
US5675810A (en) * | 1994-09-07 | 1997-10-07 | Compaq Computer Corporation | Reducing power usage in a personal computer |
US5652927A (en) * | 1996-10-11 | 1997-07-29 | Eastman Kodak Company | Transmitting information between a computer and an auto focus camera |
US7120911B1 (en) * | 2000-03-08 | 2006-10-10 | Mitsubishi Denki Kabushiki Kaisha | Processor power-saving control method, storage medium, and processor power-saving control device |
US20010020940A1 (en) * | 2000-03-13 | 2001-09-13 | Kabushiki Kaisha Toshiba | Information processor and power control method therefor |
US6986064B2 (en) * | 2000-05-19 | 2006-01-10 | Fujitsu Limited | Method, recording medium and apparatus for power saving control via detection of usage pattern based on stored history and accounting of a spin down cost |
US6718474B1 (en) * | 2000-09-21 | 2004-04-06 | Stratus Technologies Bermuda Ltd. | Methods and apparatus for clock management based on environmental conditions |
US6845457B1 (en) * | 2000-09-26 | 2005-01-18 | Sun Microsystems, Inc. | Method and apparatus for controlling transitions between a first and a second clock frequency |
US20030158763A1 (en) * | 2000-12-13 | 2003-08-21 | Digibot, Inc. | Method and system for monitoring service quality in a restaurant |
US6802016B2 (en) * | 2001-02-08 | 2004-10-05 | Twinhead International Corp. | User proximity sensor and signal processing circuitry for determining whether to power a computer on or off |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US6865683B2 (en) * | 2001-05-21 | 2005-03-08 | Microsoft Corporation | System and method for powering down a mobile device |
US7003654B2 (en) * | 2001-08-16 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | Time-based initialization defaults for an electronic information retrieval device |
US6968468B2 (en) * | 2002-02-25 | 2005-11-22 | O2 Micro, Inc. | Digital computer utilizing buffer to store and output data to play real time applications enabling processor to enter deep sleep state while buffer outputs data |
US20040003300A1 (en) * | 2002-06-28 | 2004-01-01 | Microsoft Corporation | Power management architecture for computing devices |
US20040153867A1 (en) * | 2003-01-03 | 2004-08-05 | Mcalinden Paul | Dynamic performance and resource management in a processing system |
US7010705B2 (en) * | 2003-05-01 | 2006-03-07 | Microlink Communications Inc. | Method and device for triggering power supply switch of a cordless electric-apparatus |
US7146513B2 (en) * | 2003-12-17 | 2006-12-05 | Hitachi, Ltd. | System for adjusting a clock frequency based on comparing a required process times and a worst case execution times and adjusting a voltage and clock frequency based on a number of ready state application tasks |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110075889A1 (en) * | 2009-09-25 | 2011-03-31 | Ying-Jieh Huang | Image processing system with ambient sensing capability and image processing method thereof |
US9072052B2 (en) | 2010-08-09 | 2015-06-30 | Blackberry Limited | Communication system providing context-based mobile wireless communications device power consumption management and related methods |
US20130046967A1 (en) * | 2011-08-17 | 2013-02-21 | Broadcom Corporation | Proactive Power Management Using a Power Management Unit |
WO2013026039A2 (en) * | 2011-08-17 | 2013-02-21 | Broadcom Corporation | Proactive power management using a power management unit |
WO2013026039A3 (en) * | 2011-08-17 | 2014-05-08 | Broadcom Corporation | Proactive power management using a power management unit |
US9491704B2 (en) * | 2012-03-23 | 2016-11-08 | Blackberry Limited | Methods and apparatus for controlling power consumption in an electronic device with a communication subsystem |
US20130250825A1 (en) * | 2012-03-23 | 2013-09-26 | Qnx Software Systems Limited | Methods And Apparatus For Controlling Power Consumption In An Electronic Device With A Communication Subsystem |
US10225801B2 (en) | 2012-03-23 | 2019-03-05 | 2236008 Ontario Inc. | Methods and apparatus for controlling power consumption in an electronic device with a communication subsystem |
WO2014120537A1 (en) * | 2013-01-31 | 2014-08-07 | Apple Inc. | Dynamic adaptation of a traffic inactivity timer |
CN104982061A (en) * | 2013-01-31 | 2015-10-14 | 苹果公司 | Dynamic adaptation of a traffic inactivity timer |
WO2015099700A1 (en) * | 2013-12-24 | 2015-07-02 | Intel Corporation | Context-based indoor power management |
US20160291671A1 (en) * | 2013-12-24 | 2016-10-06 | Intel Corporation | Context-based indoor power management |
US10496148B2 (en) * | 2013-12-24 | 2019-12-03 | Intel Corporation | Context-based indoor power management |
US10613599B2 (en) | 2014-01-06 | 2020-04-07 | Intel Corporation | Contextual Platform Power Management |
US9690340B2 (en) | 2014-09-25 | 2017-06-27 | Intel Corporation | System and method for adaptive thermal and performance management in electronic devices |
CN107430419A (en) * | 2015-03-26 | 2017-12-01 | 英特尔公司 | System and method for carrying out adaptive heat and performance management in the electronic device |
KR20170130385A (en) * | 2015-03-26 | 2017-11-28 | 인텔 코포레이션 | System and method for adaptive thermal and performance management in electronic devices |
WO2016153666A1 (en) * | 2015-03-26 | 2016-09-29 | Intel Corporation | System and method for adaptive thermal and performance management in electronic devices |
KR102631168B1 (en) * | 2015-03-26 | 2024-01-31 | 인텔 코포레이션 | Systems and methods for adaptive thermal and performance management in electronic devices |
US10289189B2 (en) | 2016-10-31 | 2019-05-14 | Microsoft Technology Licensing, Llc | Usage pattern based supervisory control of power management |
US10705591B2 (en) | 2016-10-31 | 2020-07-07 | Microsoft Technology Licensing, Llc | Aggregated electronic device power management |
US11314317B2 (en) | 2016-10-31 | 2022-04-26 | Microsoft Technology Licensing, Llc | Supervisory control of power management |
Also Published As
Publication number | Publication date |
---|---|
JP4977026B2 (en) | 2012-07-18 |
US20060053311A1 (en) | 2006-03-09 |
WO2006028660A2 (en) | 2006-03-16 |
TWI292865B (en) | 2008-01-21 |
CN101040241A (en) | 2007-09-19 |
JP2008511915A (en) | 2008-04-17 |
JP2012123824A (en) | 2012-06-28 |
TW200627137A (en) | 2006-08-01 |
WO2006028660A3 (en) | 2006-06-01 |
US7565562B2 (en) | 2009-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7565562B2 (en) | Context based power management | |
US8935547B2 (en) | Method and apparatus for user-activity-based dynamic power management and policy creation for mobile platforms | |
US7353413B2 (en) | Computer system power policy adjustment in response to an affirmative indication from a user | |
US7861098B2 (en) | Method and apparatus for user-activity-based dynamic power management and policy creation for mobile platforms | |
US8874947B2 (en) | Method and apparatus of power management of processor | |
US6654895B1 (en) | Adaptive power management in a computing system | |
US8019370B2 (en) | Method and apparatus for a power-efficient framework to maintain data synchronization of a mobile personal computer to simulate a connected scenario | |
US7949888B2 (en) | Forced idle of a data processing system | |
US6996730B2 (en) | Adjusting voltage supplied to a processor in response to clock frequency | |
US7526663B2 (en) | Method and apparatus for reducing the power consumed by a computer system | |
US20050108075A1 (en) | Method, apparatus, and program for adaptive control of application power consumption in a mobile computer | |
WO2006028658A1 (en) | Storing system information in a low-latency persistent memory device upon transition to a lower-power state | |
CN103645793A (en) | Platform power management based on latency guidance | |
US9323307B2 (en) | Active display processor sleep state | |
KR100934243B1 (en) | How to control CIFIL clock frequency in portable electronic devices | |
Macht | GreenIT: Power Consumption and-Optimization of PCs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |