WO2010133487A1 - Computing system with power requirement evaluation - Google Patents

Computing system with power requirement evaluation Download PDF

Info

Publication number
WO2010133487A1
WO2010133487A1 PCT/EP2010/056500 EP2010056500W WO2010133487A1 WO 2010133487 A1 WO2010133487 A1 WO 2010133487A1 EP 2010056500 W EP2010056500 W EP 2010056500W WO 2010133487 A1 WO2010133487 A1 WO 2010133487A1
Authority
WO
WIPO (PCT)
Prior art keywords
operations
executions
computing system
power
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.)
Ceased
Application number
PCT/EP2010/056500
Other languages
French (fr)
Inventor
Robert Brenneman
Eli Dow
William Hule
Sarah Sheppard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IBM United Kingdom Ltd
International Business Machines Corp
Original Assignee
IBM United Kingdom Ltd
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by IBM United Kingdom Ltd, International Business Machines Corp filed Critical IBM United Kingdom Ltd
Publication of WO2010133487A1 publication Critical patent/WO2010133487A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices

Definitions

  • aspects of the present invention are directed to a computing system with power requirement evaluation.
  • Machines and computers such as portable laptop computers, are often employed to execute input/output (I/O) operations, such as the burning of a CD or the writing of information to removable media.
  • I/O input/output
  • the I/O operation must be instantiated and fully conducted so as not to risk the loss of possibly important data. This requires a given amount of computing time, which is based on processing speeds and the size of the I/O operation, and the availability of sufficient power for powering the execution.
  • the power can be provided by way of, e.g., a building's power supply when the machines and computers are plugged in or, in the case of the portable laptop computer which is not plugged into a power supply, a rechargeable battery.
  • the portable laptop computer draws power from the rechargeable battery, the computer will only have access to a limited power reservoir. Over time, the amount of power within this power reservoir will decrease as the amount of available battery power dwindles. Eventually, the amount of available battery power will approach such a low level that warnings will be issued to the user to stop use and recharge. Nevertheless, in these cases, the user may persist in having his computer continue to perform I/O operations without regard to whether sufficient battery power will be available to complete the I/O operations. Thus, without further layers of protection, the user risks instantiating I/O operations without sufficient power and, therefore, the potential loss of data.
  • Enterprise computing systems in which multiple possible remote servers communicate with multiple possible remote client computers, are not normally operated with battery power and are therefore not at risk of running out of power in the middle of an execution. These systems are generally coupled to one or more power grids and, as such, it is unlikely that the systems will ever lack sufficient power to complete I/O operations. With that said, costs associated with the use of the power by these systems can be significant. However, the systems do not typically consider such costs when undertaking I/O operations. Thus, a particular I/O operation may be completed using relatively expensive power even though the same I/O operation could have been conducted using cheaper power at a different time or at a remote location.
  • a computing system includes recording media relative to which input/output (I/O) operations are executable, and a processor, disposed in signal communication with the recording media, which is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium.
  • the processor includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
  • a portable personal computer includes recording media relative to which input/output (I/O) operations are executable, a power source by which a quantity of power is made available for the executions of the I/O operations and a processor, disposed in signal communication with the recording media and the power source, which is configured to execute the I/O operations, to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium and to read the quantity of available power.
  • the processor includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements and the quantity of available power.
  • a computer readable medium having instructions stored thereon, which, when executed cause a processor of a computing system, including recording media, to execute a method of controlling the computing system.
  • the method includes instantiating input/output (I/O) operations, reading power requirements for executions of the I/O operations with respect to the recording media and scheduling the executions of the I/O operations relative to each individual recording medium, or refusing the executions of the I/O operations in accordance with the evaluated power requirements.
  • I/O input/output
  • FIG. 1 is a schematic illustration of a computing system in accordance with embodiments of the invention.
  • FIG. 2 is a schematic illustration of registers in use by the computing system of FIG. 1;
  • FIG. 3 is a schematic illustration of a personal computer in accordance with embodiments of the invention.
  • FIG. 4 is a flow diagram illustrating a method of controlling a computing system in accordance with embodiments of the invention.
  • the computing system 10 may be a personal computer or an enterprise computing system with multiple servers and client devices at possibly remote locations.
  • the computing system 10 includes recording media 20, relative to which input/output (I/O) operations are executable, a processor 30 and, in some cases, a power source 40 by which a quantity of available power is provided for the executions of the I/O operations.
  • the processor 30 is disposed in signal communication with the recording media 20 and is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium 20.
  • the processor 30 includes a memory unit 35.
  • the memory unit 35 includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor 30 to schedule the executions of the I/O operations relative to each individual recording medium 20 or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
  • the processor 30 may include multiple processing levels arranged in a tree format that includes a top level 31 , at which a central processing unit (CPU) may reside, and a bottom level 32, at which one or more disk control units (DCU 1, DCU 2 and DCU 3) reside. Additional processing levels may, of course, be provided between the top and bottom levels 31 and 32.
  • I/O operations are normally instantiated at the top level 31 as the CPU receives and interprets inputted read and write commands. The CPU then assigns the I/O operations downstream in accordance with read power requirements until they reach each of the various DCUs at the bottom level 32 as atomized I/O operations. Each of the atomized I/O operations is then carried out in accordance with read power requirements at a recording medium 20 coupled to an associated one of the DCUs.
  • the recording media 20 may include removable media that can be removably coupled to the computing system 10 or non-removable media that are normally coupled to the computing system 10. They may also include recording media, such as a universal serial bus (USB) flash drive, an optical disk, a DVD-ROM, etc., from which information is read or onto which information is written in accordance with the executions of the I/O operations.
  • each recording medium 20 is provided with a power requirement gauge 50.
  • the power requirement gauge 50 is readable by the processor 30 and provides an indication to the processor 30 as to how much power is required for an I/O operation to be executed with respect to the recording medium 20.
  • each DCU is normally associated with a set of devices acting as recording media.
  • DCU 1 is associated with devices DI l, Dl 2, D13,..., in such a way as to allow DCU 1 to manage the executions of I/O operations of those devices and to read their respective power requirements indicated by their respective power requirement gauges 50.
  • DCU 2 is associated with devices D21, D22, D23,..., in such a way as to allow DCU 2 to manage the executions of I/O operations of those devices and to read their respective power requirement gauges 50 and
  • DCU 3 is associated with devices D31,
  • the power requirement gauge 50 for each device may indicate the respective power requirement for executing an I/O operation of the device in the form of a register 60. That is, each register 60 may be configured to describe the power requirement for its device for each read (R) and each write (W) access incidence of any I/O operation executed with respect to the associated device.
  • device DI l requires DlAl and DlWl power for read and write operations of access 1, D1A2 and D1W2 power for read and write operations of access
  • Each register 60 may further be configured to indicate previous access data (i.e., Dl Al ', Dl A2', etc.) that is periodically updated and reflective of power requirements of previous read and write access incidences.
  • previous access data i.e., Dl Al ', Dl A2', etc.
  • the register 60 for each device is readable by the DCU to which that device is associated.
  • DCU 1 reads the registers 60 of devices Dl 1, D 12 and D13.
  • Information gleaned from the registers 60 may then be compared with the quantity of power available for I/O operations (this being more important where the computing system 10 is being run with battery power) and is then employed by DCU 1 to schedule the executions of the I/O operations relative to devices Dl 1, D 12 and D13 or to refuse the executions of the I/O operations in accordance with the quantity of available power.
  • the DCU 1 compares the information gleaned from register 60 with the quantity of power available for I/O operations and the
  • the DCU 1 may either refuse the executions of the I/O operation, in which case DCUs 2 or 3 may take over, or warn the user before commencing with the I/O operation and only proceeding upon receipt of a user inputted command to do so.
  • the DCU 1 may simply refuse the execution without offering the user the opportunity to override that judgment.
  • the I/O operation could be conducted in such a manner as to increase the likelihood that the I/O operation could be relatively easily resumed once power is restored.
  • a counter of the offset could also be written to the file.
  • the write operation could be resumed from the last check-pointed location on device DI l even after a complete power outage and restart.
  • the DCU 1 determines that sufficient power for one or more atomized I/O operations is available, the DCU 1 schedules the executions of the I/O operations relative to devices Dl 1, D 12 and D13. That is, the DCU 1 assigns the atomized I/O operations to any one or more of the devices in various combinations based upon the information gleaned from register 60 and predefined algorithms.
  • the DCU 1 could be configured to assign atomized I/O operations to the device that requires the least power for execution of the atomized I/O operations.
  • the DCU 1 or the processor 30 could be configured to prioritize the atomized I/O operations with the DCU 1 being further configured to consider the power requirements and the priorities in assigning the atomized I/O operations.
  • the DCU 1 or the processor 30 may additionally analyze the previous access data and modify the assignments based on results of that analysis. That is, if the previous access data were found to be significantly different than the access data in a particular instance for device DI l, the DCU 1 may judge that the access data is unreliable and assign a pending I/O operation to another device even though the access data for the other device suggests that it is more power intensive than device DI l.
  • the information gleaned from register 60 of devices Dl 1, D 12 and D13 is also aggregated at the DCU 1 register 70 where it can be stored, at least temporarily, in memory unit 80, which is disposed in relative association with the DCU 1.
  • the DCU 1 register 70 includes information reflective of the total power requirement for access incidences of I/O operations for devices Dl 1, D 12 and D13 along with information reflective of historical power requirements for devices Dl 1, D 12 and D13.
  • the DCU 1 register 70 along with registers for any other DCUs in computing system 10 can be transmitted to higher processing levels, such as top level 31, where additional I/O operation assignments can be made.
  • processor 30 receives the DCU registers 70 from DCU 1,
  • the processor 30 can determine based on information gleaned from the DCU registers 70 and predefined algorithms which DCU and, by the same token, which recording media 20, will be best equipped to execute certain I/O operations. For example, if DCU 1 uses slightly less power than DCU 2 but DCU 1 and its associated recording media 20 are located in a region in which power is relatively very expensive, the processor 30 may assign I/O operations to DCU 2 to save costs.
  • a portable personal computer such as a laptop 100
  • the laptop 100 may include removable and non-removable and fragmented and non- fragmented recording media, such as a universal serial bus (USB) flash drive 110, an optical disk drive 120, a DVD recorder 130 and a hard disk drive 140 relative to which input/output (I/O) operations are executable, a power source 150, such as a lithium- ion rechargeable battery, and a processor 160, such as a central processing unit (CPU).
  • Each recording medium includes a power requirement gauge 145 and a register 146 that are configured in a similar manner as described above.
  • the power source 150 is coupled to the recording media and the processor 160 and makes available a quantity of power to allow for the executions of the I/O operations.
  • the processor 160 is coupled to the power source 150 and includes an I/O unit 165, which is disposed in signal communication with the recording media.
  • the processor 160 is thereby configured to execute the I/O operations by way of the I/O unit 165, to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium and to read the quantity of available power made available by the power source 150.
  • the processor 160 includes a memory unit 170.
  • the memory unit 170 may be a computer-readable medium having a set of instructions stored thereon. When executed, the instructions cause the processor 160 to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the
  • the processor 160 if a user of the laptop 100 inputs a command to the processor 160 to, e.g., burn a DVD, the processor
  • the processor 160 may interrogate the power source 150 for a reading of the available power and, at the same time, the I/O unit 165 may read the power requirement from register 146 of the DVD recorder 130. If the available power is subsequently determined to be greater than the power requirement of the DVD recorder 130, the processor 160 executes the DVD burn command at the DVD recorder by way of the I/O unit 165. If, on the other hand, the available power is determined to be less than the power requirement, the processor 160 may simply refuse the execution or may issue a warning to the user as to the insufficient power situation by way of a display driver 180 and a display unit 185. If the user chooses to proceed, the processor 160 may then execute the DVD burn command by way of the I/O unit 165 in such a manner as to allow the command to be resumed if a power outage occurs before completion, as described above.
  • register 146 may include current power requirement data and historical power requirement data, which is periodically updated. In this way, the laptop 100 can adjust the determinations of whether sufficient power will be available for certain I/O operations over time. This can be particularly relevant where the recording medium being read from or written to is fragmented. In this case, the power requirement for similar I/O operations with respect to that recording medium will increase over time. As such, the processor 160 will consider the historical power requirement data of register 146 to judge whether the current power requirement data is reliable or not. In an alternate embodiment, the I/O unit 165 may also read the power requirements of recording media that are reasonably analogous to the DVD recorder 130, such as the USB flash drive 110, to determine whether the DVD burn command can be executed with respect to another device with a lower power requirement.
  • the processor 160 may suggest copying the data that was to be burned to the DVD onto the USB flash drive 110. If the user chooses this option, the processor 160 executes the copy command with respect to the USB flash drive by way of the I/O unit 165.
  • a computer readable medium has instructions stored thereon, which, when executed cause a processor of a computing system, including recording media, to execute a method of controlling the computing system.
  • the method includes instantiating input/output (I/O) operations 200, reading power requirements for executions of the I/O operations with respect to the recording media 210, and, if sufficient power is available 215, scheduling the executions of the I/O operations relative to each individual recording medium 220 to occur immediately or following a delay, or, if sufficient power is unavailable 225, refusing the executions of the I/O operations in accordance with the evaluated power requirements 230 and, in some cases, in accordance with priorities of the executions. Where the executions are scheduled to occur, the method may further include assigning the executions to particular recording media 240.
  • a collection of processors configured as described previously, can collectively be managed by yet another layer of systems management.
  • a workload management system observe the relative power requirements for scheduling a workload across multiple processors and schedule work to run on the most power efficient processor, or the processor with the lowest power cost per unit of work.
  • the workload manager may elect to stop low priority applications on several processors to lower the overall power consumption of the collection of processors such that the total power consumed by the collection of processors is below a threshold value.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

A computing system is provided and includes recording media relative to which input/output (I/O) operations are executable, and a processor, disposed in signal communication with the recording media, which is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium. The processor includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.

Description

COMPUTING SYSTEM WITH POWER REQUIREMENT EVALUATION
Field of the Invention
Aspects of the present invention are directed to a computing system with power requirement evaluation.
Background of the Invention
Machines and computers, such as portable laptop computers, are often employed to execute input/output (I/O) operations, such as the burning of a CD or the writing of information to removable media. To be successfully executed, the I/O operation must be instantiated and fully conducted so as not to risk the loss of possibly important data. This requires a given amount of computing time, which is based on processing speeds and the size of the I/O operation, and the availability of sufficient power for powering the execution. The power can be provided by way of, e.g., a building's power supply when the machines and computers are plugged in or, in the case of the portable laptop computer which is not plugged into a power supply, a rechargeable battery.
If the portable laptop computer draws power from the rechargeable battery, the computer will only have access to a limited power reservoir. Over time, the amount of power within this power reservoir will decrease as the amount of available battery power dwindles. Eventually, the amount of available battery power will approach such a low level that warnings will be issued to the user to stop use and recharge. Nevertheless, in these cases, the user may persist in having his computer continue to perform I/O operations without regard to whether sufficient battery power will be available to complete the I/O operations. Thus, without further layers of protection, the user risks instantiating I/O operations without sufficient power and, therefore, the potential loss of data.
Enterprise computing systems, in which multiple possible remote servers communicate with multiple possible remote client computers, are not normally operated with battery power and are therefore not at risk of running out of power in the middle of an execution. These systems are generally coupled to one or more power grids and, as such, it is unlikely that the systems will ever lack sufficient power to complete I/O operations. With that said, costs associated with the use of the power by these systems can be significant. However, the systems do not typically consider such costs when undertaking I/O operations. Thus, a particular I/O operation may be completed using relatively expensive power even though the same I/O operation could have been conducted using cheaper power at a different time or at a remote location.
Summary of the Invention
In accordance with an aspect of the invention, a computing system is provided and includes recording media relative to which input/output (I/O) operations are executable, and a processor, disposed in signal communication with the recording media, which is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium. The processor includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
In accordance with an aspect of the invention, a portable personal computer is provided and includes recording media relative to which input/output (I/O) operations are executable, a power source by which a quantity of power is made available for the executions of the I/O operations and a processor, disposed in signal communication with the recording media and the power source, which is configured to execute the I/O operations, to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium and to read the quantity of available power. The processor includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements and the quantity of available power. In accordance with an aspect of the invention, a computer readable medium having instructions stored thereon, which, when executed cause a processor of a computing system, including recording media, to execute a method of controlling the computing system is provided. The method includes instantiating input/output (I/O) operations, reading power requirements for executions of the I/O operations with respect to the recording media and scheduling the executions of the I/O operations relative to each individual recording medium, or refusing the executions of the I/O operations in accordance with the evaluated power requirements.
Brief Description of the Drawings
A preferred embodiment of the present invention will now be described, by way of example only, with reference to the accompanying drawings in which:
FIG. 1 is a schematic illustration of a computing system in accordance with embodiments of the invention;
FIG. 2 is a schematic illustration of registers in use by the computing system of FIG. 1;
FIG. 3 is a schematic illustration of a personal computer in accordance with embodiments of the invention; and
FIG. 4 is a flow diagram illustrating a method of controlling a computing system in accordance with embodiments of the invention.
Detailed Description of the Preferred Embodiment
With reference to FIG. 1, a computing system 10 is provided. The computing system 10 may be a personal computer or an enterprise computing system with multiple servers and client devices at possibly remote locations. The computing system 10 includes recording media 20, relative to which input/output (I/O) operations are executable, a processor 30 and, in some cases, a power source 40 by which a quantity of available power is provided for the executions of the I/O operations. The processor 30 is disposed in signal communication with the recording media 20 and is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium 20. To this end, the processor 30 includes a memory unit 35. The memory unit 35 includes a computer-readable medium having a set of instructions stored thereon, which, when executed, cause the processor 30 to schedule the executions of the I/O operations relative to each individual recording medium 20 or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
As will be described below, the processor 30 may include multiple processing levels arranged in a tree format that includes a top level 31 , at which a central processing unit (CPU) may reside, and a bottom level 32, at which one or more disk control units (DCU 1, DCU 2 and DCU 3) reside. Additional processing levels may, of course, be provided between the top and bottom levels 31 and 32. I/O operations are normally instantiated at the top level 31 as the CPU receives and interprets inputted read and write commands. The CPU then assigns the I/O operations downstream in accordance with read power requirements until they reach each of the various DCUs at the bottom level 32 as atomized I/O operations. Each of the atomized I/O operations is then carried out in accordance with read power requirements at a recording medium 20 coupled to an associated one of the DCUs.
The recording media 20 may include removable media that can be removably coupled to the computing system 10 or non-removable media that are normally coupled to the computing system 10. They may also include recording media, such as a universal serial bus (USB) flash drive, an optical disk, a DVD-ROM, etc., from which information is read or onto which information is written in accordance with the executions of the I/O operations. In any case, each recording medium 20 is provided with a power requirement gauge 50. The power requirement gauge 50 is readable by the processor 30 and provides an indication to the processor 30 as to how much power is required for an I/O operation to be executed with respect to the recording medium 20.
As shown in FIG. 1, each DCU is normally associated with a set of devices acting as recording media. Thus, DCU 1 is associated with devices DI l, Dl 2, D13,..., in such a way as to allow DCU 1 to manage the executions of I/O operations of those devices and to read their respective power requirements indicated by their respective power requirement gauges 50. Similarly, DCU 2 is associated with devices D21, D22, D23,..., in such a way as to allow DCU 2 to manage the executions of I/O operations of those devices and to read their respective power requirement gauges 50 and, finally, DCU 3 is associated with devices D31,
D32, D33,..., in such a way as to allow DCU 2 to manage the executions of I/O operations of those devices and to read their respective power requirement gauges 50.
In accordance with an embodiment of the invention and, as shown in FIG. 2, the power requirement gauge 50 for each device may indicate the respective power requirement for executing an I/O operation of the device in the form of a register 60. That is, each register 60 may be configured to describe the power requirement for its device for each read (R) and each write (W) access incidence of any I/O operation executed with respect to the associated device. Thus, at a particular time, device DI l requires DlAl and DlWl power for read and write operations of access 1, D1A2 and D1W2 power for read and write operations of access
2 and D1A3 and Dl W3 power for read and write operations of access 3, and so on. Each register 60 may further be configured to indicate previous access data (i.e., Dl Al ', Dl A2', etc.) that is periodically updated and reflective of power requirements of previous read and write access incidences.
The register 60 for each device is readable by the DCU to which that device is associated. Thus, DCU 1 reads the registers 60 of devices Dl 1, D 12 and D13. Information gleaned from the registers 60 may then be compared with the quantity of power available for I/O operations (this being more important where the computing system 10 is being run with battery power) and is then employed by DCU 1 to schedule the executions of the I/O operations relative to devices Dl 1, D 12 and D13 or to refuse the executions of the I/O operations in accordance with the quantity of available power.
In accordance with embodiments of the invention, if the DCU 1 compares the information gleaned from register 60 with the quantity of power available for I/O operations and the
DCU 1 or the processor 30 subsequently determines that the quantity of power available may be insufficient for a given atomized I/O operation, the DCU 1 may either refuse the executions of the I/O operation, in which case DCUs 2 or 3 may take over, or warn the user before commencing with the I/O operation and only proceeding upon receipt of a user inputted command to do so. Similarly, if the DCU 1 subsequently determines that the quantity of power available for the I/O operation is so diminished that an execution of the I/O operation will definitely fail, the DCU 1 may simply refuse the execution without offering the user the opportunity to override that judgment.
If the user inputs the command to commence with the I/O operation, in accordance with further embodiments of the invention, the I/O operation could be conducted in such a manner as to increase the likelihood that the I/O operation could be relatively easily resumed once power is restored. As an example, while a file is written to device Dl 1 as part of the I/O operation, a counter of the offset could also be written to the file. Here, the write operation could be resumed from the last check-pointed location on device DI l even after a complete power outage and restart.
In accordance with other embodiments of the inventions, if the DCU 1 determines that sufficient power for one or more atomized I/O operations is available, the DCU 1 schedules the executions of the I/O operations relative to devices Dl 1, D 12 and D13. That is, the DCU 1 assigns the atomized I/O operations to any one or more of the devices in various combinations based upon the information gleaned from register 60 and predefined algorithms. For example, the DCU 1 could be configured to assign atomized I/O operations to the device that requires the least power for execution of the atomized I/O operations. Alternatively, the DCU 1 or the processor 30 could be configured to prioritize the atomized I/O operations with the DCU 1 being further configured to consider the power requirements and the priorities in assigning the atomized I/O operations.
Still further, the DCU 1 or the processor 30 may additionally analyze the previous access data and modify the assignments based on results of that analysis. That is, if the previous access data were found to be significantly different than the access data in a particular instance for device DI l, the DCU 1 may judge that the access data is unreliable and assign a pending I/O operation to another device even though the access data for the other device suggests that it is more power intensive than device DI l. The information gleaned from register 60 of devices Dl 1, D 12 and D13 is also aggregated at the DCU 1 register 70 where it can be stored, at least temporarily, in memory unit 80, which is disposed in relative association with the DCU 1. The DCU 1 register 70 includes information reflective of the total power requirement for access incidences of I/O operations for devices Dl 1, D 12 and D13 along with information reflective of historical power requirements for devices Dl 1, D 12 and D13. The DCU 1 register 70 along with registers for any other DCUs in computing system 10 can be transmitted to higher processing levels, such as top level 31, where additional I/O operation assignments can be made.
That is, with reference to FIG. 1, if processor 30 receives the DCU registers 70 from DCU 1,
DCU 2 and DCU 3, the processor 30 can determine based on information gleaned from the DCU registers 70 and predefined algorithms which DCU and, by the same token, which recording media 20, will be best equipped to execute certain I/O operations. For example, if DCU 1 uses slightly less power than DCU 2 but DCU 1 and its associated recording media 20 are located in a region in which power is relatively very expensive, the processor 30 may assign I/O operations to DCU 2 to save costs.
With reference to FIG. 3 and, in accordance with an aspect of the invention, a portable personal computer, such as a laptop 100, is provided. The laptop 100 may include removable and non-removable and fragmented and non- fragmented recording media, such as a universal serial bus (USB) flash drive 110, an optical disk drive 120, a DVD recorder 130 and a hard disk drive 140 relative to which input/output (I/O) operations are executable, a power source 150, such as a lithium- ion rechargeable battery, and a processor 160, such as a central processing unit (CPU). Each recording medium includes a power requirement gauge 145 and a register 146 that are configured in a similar manner as described above. The power source 150 is coupled to the recording media and the processor 160 and makes available a quantity of power to allow for the executions of the I/O operations.
The processor 160 is coupled to the power source 150 and includes an I/O unit 165, which is disposed in signal communication with the recording media. The processor 160 is thereby configured to execute the I/O operations by way of the I/O unit 165, to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium and to read the quantity of available power made available by the power source 150. To this end, the processor 160 includes a memory unit 170. The memory unit 170 may be a computer-readable medium having a set of instructions stored thereon. When executed, the instructions cause the processor 160 to schedule the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the
I/O operations in accordance with the evaluated power requirements and the quantity of available power.
Thus, as described above and, in accordance with an embodiment of the invention, if a user of the laptop 100 inputs a command to the processor 160 to, e.g., burn a DVD, the processor
160 may interrogate the power source 150 for a reading of the available power and, at the same time, the I/O unit 165 may read the power requirement from register 146 of the DVD recorder 130. If the available power is subsequently determined to be greater than the power requirement of the DVD recorder 130, the processor 160 executes the DVD burn command at the DVD recorder by way of the I/O unit 165. If, on the other hand, the available power is determined to be less than the power requirement, the processor 160 may simply refuse the execution or may issue a warning to the user as to the insufficient power situation by way of a display driver 180 and a display unit 185. If the user chooses to proceed, the processor 160 may then execute the DVD burn command by way of the I/O unit 165 in such a manner as to allow the command to be resumed if a power outage occurs before completion, as described above.
As described above, register 146 may include current power requirement data and historical power requirement data, which is periodically updated. In this way, the laptop 100 can adjust the determinations of whether sufficient power will be available for certain I/O operations over time. This can be particularly relevant where the recording medium being read from or written to is fragmented. In this case, the power requirement for similar I/O operations with respect to that recording medium will increase over time. As such, the processor 160 will consider the historical power requirement data of register 146 to judge whether the current power requirement data is reliable or not. In an alternate embodiment, the I/O unit 165 may also read the power requirements of recording media that are reasonably analogous to the DVD recorder 130, such as the USB flash drive 110, to determine whether the DVD burn command can be executed with respect to another device with a lower power requirement. In this case, if the USB flash drive 110 is found to have a lower power requirement than the DVD recorder 130 and the quantity of available power from the power source 150, the processor 160 may suggest copying the data that was to be burned to the DVD onto the USB flash drive 110. If the user chooses this option, the processor 160 executes the copy command with respect to the USB flash drive by way of the I/O unit 165.
With reference to FIG. 4 and, in accordance with another aspect of the invention, a computer readable medium is provided. The computer readable medium has instructions stored thereon, which, when executed cause a processor of a computing system, including recording media, to execute a method of controlling the computing system. The method includes instantiating input/output (I/O) operations 200, reading power requirements for executions of the I/O operations with respect to the recording media 210, and, if sufficient power is available 215, scheduling the executions of the I/O operations relative to each individual recording medium 220 to occur immediately or following a delay, or, if sufficient power is unavailable 225, refusing the executions of the I/O operations in accordance with the evaluated power requirements 230 and, in some cases, in accordance with priorities of the executions. Where the executions are scheduled to occur, the method may further include assigning the executions to particular recording media 240.
A collection of processors configured as described previously, can collectively be managed by yet another layer of systems management. Just as in the case where a single processor, with a collection of DCUs attached may observe the relative power requirements to drive I/O for each DCU and make I/O Scheduling decisions according to that data, so too can a workload management system observe the relative power requirements for scheduling a workload across multiple processors and schedule work to run on the most power efficient processor, or the processor with the lowest power cost per unit of work. Additionally, given that the workload manager knows the power cost of each application running across all the processors in the environment, it may elect to stop low priority applications on several processors to lower the overall power consumption of the collection of processors such that the total power consumed by the collection of processors is below a threshold value.
While the disclosure has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the essential scope thereof.

Claims

1. A computing system, comprising: recording media relative to which input/output (I/O) operations are executable; and a processor, disposed in signal communication with the recording media, which is configured to execute the I/O operations and to evaluate power requirements associated with executions of the I/O operations relative to each individual recording medium, the processor including: means for scheduling the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
2. The computing system according to claim 1, wherein the recording media each comprise processor readable power requirement gauges, which are indicative of the power requirements.
3. The computing system according to claim 1 or claim 2, further comprising a power source by which a quantity of available power is provided for the executions of the I/O operations.
4. The computing system according to claim 4, wherein, when executed, the instructions cause the processor to schedule the executions or to refuse the executions in accordance with the evaluated power requirements and the quantity of available power.
5. The computing system according to claim 4, wherein, when executed, the instructions further cause the processor to prioritize the executions and to schedule the executions or to refuse the executions in accordance with the evaluated power requirements, the quantity of available power and the execution priorities.
6. The computing system according to claim 4, wherein, when executed, the instructions further cause the processor to schedule the executions by assigning atomic I/O operations to individual ones of the recording media.
7. The computing system according to any preceding claim, wherein the processor is organized in multiple levels, including at least top and bottom levels, with each level including one or more processing units.
8. The computing system according to claim 7, wherein the I/O operations are instantiated at the top level and provided as atomic I/O operations at the bottom level.
9. The computing system according to claim 7, wherein the top level includes a central processing unit (CPU) and each lower level includes one or more disk control units (DCUs) arranged with respect to one another in a tree-format.
10. The computing system according to claim 9, wherein each DCU at the bottom level is associated with one or more of the recording media.
11. The computing system according to claim 10, wherein, when executed, the instructions cause each DCU at the bottom level to read power requirements associated with executions of the I/O operations relative to each individual associated recording medium and to schedule the executions of the I/O operations relative to each individual associated recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements.
12. The computing system according to claim 11 , wherein the read power requirements associated with executions of the I/O operations relative to each individual associated recording medium are up-level transmittable.
13. The computing system according to claim 11, wherein the read power requirements are aggregated in DCU registers.
14. The computing system according to claim 13, wherein the DCU registers are, at least, temporarily stored in recording media of each of the DCUs.
15. The computing system according to any preceding claim, wherein the means for scheduling the executions of the I/O operations relative to each individual recording medium or to refuse the executions of the I/O operations in accordance with the evaluated power requirements comprise computer program code means.
PCT/EP2010/056500 2009-05-19 2010-05-11 Computing system with power requirement evaluation Ceased WO2010133487A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/468,214 2009-05-19
US12/468,214 US8880908B2 (en) 2009-05-19 2009-05-19 Computing system with power requirement evaluation

Publications (1)

Publication Number Publication Date
WO2010133487A1 true WO2010133487A1 (en) 2010-11-25

Family

ID=42358241

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2010/056500 Ceased WO2010133487A1 (en) 2009-05-19 2010-05-11 Computing system with power requirement evaluation

Country Status (2)

Country Link
US (2) US8880908B2 (en)
WO (1) WO2010133487A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8789061B2 (en) * 2010-02-01 2014-07-22 Ca, Inc. System and method for datacenter power management
TW201217951A (en) * 2010-10-19 2012-05-01 Wistron Corp Power management method and portable electronic device using the same
US20120137289A1 (en) * 2010-11-30 2012-05-31 International Business Machines Corporation Protecting high priority workloads in a virtualized datacenter
JP2012118820A (en) * 2010-12-01 2012-06-21 Canon Inc Information processing system
JP6113538B2 (en) * 2012-03-23 2017-04-12 株式会社東芝 Control device, control method, program, and semiconductor device
CN104423994B (en) * 2013-09-03 2018-05-11 华为技术有限公司 A kind of code generating method, compiler, dispatching method, device and scheduling system
WO2015038106A1 (en) * 2013-09-11 2015-03-19 Hewlett-Packard Development Company, L.P. Mobile device power control
US9946564B2 (en) 2015-06-23 2018-04-17 International Business Machines Corporation Adjusting virtual machine migration plans based on alert conditions related to future migrations
US12019473B2 (en) 2021-07-14 2024-06-25 Qualcomm Incorporated Systems, techniques, and other implementations for expandable display management
US11989109B2 (en) * 2022-10-12 2024-05-21 Dell Products L.P. Managing power consumption for a computing cluster
CN118509702A (en) * 2024-05-09 2024-08-16 上海七十迈数字科技有限公司 Video recording method and equipment of low-power-consumption video recording system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167524A (en) * 1998-04-06 2000-12-26 International Business Machines Corporation Apparatus and method for efficient battery utilization in portable personal computers
US20030126467A1 (en) * 2001-07-17 2003-07-03 Yotta Yotta, Inc. Network security devices and methods
US20060179334A1 (en) * 2005-02-09 2006-08-10 International Business Machines Corporation Dynamic power management via DIMM read operation limiter

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5623647A (en) 1995-03-07 1997-04-22 Intel Corporation Application specific clock throttling
US5714870A (en) * 1996-12-18 1998-02-03 Intel Corporation Method for measuring suspend-time power consumption in a battery-powered electronic device
FR2827054B1 (en) * 2001-07-06 2003-12-12 Nec Technologies Uk Ltd METHOD FOR MONITORING AND MANAGING THE BATTERY CONDITION OF A PORTABLE MULTIMEDIA DEVICE
US6922788B2 (en) * 2001-09-19 2005-07-26 International Business Machines Corporation Low power access to a computing unit from an external source
US6834353B2 (en) * 2001-10-22 2004-12-21 International Business Machines Corporation Method and apparatus for reducing power consumption of a processing integrated circuit
JP3779215B2 (en) * 2002-01-28 2006-05-24 富士通株式会社 Portable information processing device
US6710578B1 (en) * 2002-08-27 2004-03-23 Motorola, Inc. Power resource management in a portable communication device
US7428644B2 (en) * 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US7131019B2 (en) * 2003-09-08 2006-10-31 Inventec Corporation Method of managing power of control box
US7051223B2 (en) * 2003-09-30 2006-05-23 International Business Madnine Corporation System, apparatus, and method for limiting non-volatile memory
US7178743B2 (en) * 2004-06-29 2007-02-20 Clarke Consumer Products, Inc. Portable sprayer
US7446773B1 (en) * 2004-12-14 2008-11-04 Nvidia Corporation Apparatus, system, and method for integrated heterogeneous processors with integrated scheduler
US7732949B2 (en) * 2006-10-18 2010-06-08 International Business Machines Corporation System for method of predicting power events in an intermittent power environment and dispatching computational operations of an integrated circuit accordingly
EP2195724B1 (en) * 2007-08-28 2019-10-09 Commvault Systems, Inc. Power management of data processing resources, such as power adaptive management of data storage operations
US7895459B2 (en) * 2007-11-13 2011-02-22 International Business Machines Corporation Structure for a system and method of predicting power events in an intermittent power environment and dispatching computational operations of an integrated circuit accordingly
US8095728B2 (en) * 2008-04-18 2012-01-10 Oracle America, Inc. Method and system for power aware I/O scheduling
US8106530B2 (en) * 2008-08-28 2012-01-31 Cisco Technology, Inc. Network-centric scheduled power provisioning method
US20100257529A1 (en) * 2009-04-06 2010-10-07 Christopher Wilkerson Efficient systems and methods for consuming and providing power
US8589875B2 (en) 2009-06-16 2013-11-19 International Business Machines Corporation Computing system with compile farm
US9141166B2 (en) * 2011-12-13 2015-09-22 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including dynamic control of energy consumption in power domains

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167524A (en) * 1998-04-06 2000-12-26 International Business Machines Corporation Apparatus and method for efficient battery utilization in portable personal computers
US20030126467A1 (en) * 2001-07-17 2003-07-03 Yotta Yotta, Inc. Network security devices and methods
US20060179334A1 (en) * 2005-02-09 2006-08-10 International Business Machines Corporation Dynamic power management via DIMM read operation limiter

Also Published As

Publication number Publication date
US20140351610A1 (en) 2014-11-27
US9323309B2 (en) 2016-04-26
US8880908B2 (en) 2014-11-04
US20100299540A1 (en) 2010-11-25

Similar Documents

Publication Publication Date Title
US8880908B2 (en) Computing system with power requirement evaluation
US8996890B2 (en) Method for power conservation in virtualized environments
US8631412B2 (en) Job scheduling with optimization of power consumption
US20240411594A1 (en) Power aware scheduling
JP4800837B2 (en) Computer system, power consumption reduction method thereof, and program thereof
US8527997B2 (en) Energy-aware job scheduling for cluster environments
US7930507B2 (en) Method of providing to a processor an estimated completion time of a storage operation
US20100169489A1 (en) Resource management tool
CN102005021B (en) Enrollment processing
US20130067137A1 (en) Systems and methods for using reserved solid state nonvolatile memory storage capacity for system reduced power state
CN101379453A (en) Method and apparatus for using dynamic workload characteristics to control CPU frequency and voltage scaling
JP2012523593A (en) Storage system and control method of storage device
US8161251B2 (en) Heterogeneous storage array optimization through eviction
US8677375B2 (en) Selecting executing requests to preempt
JP4768354B2 (en) Job management apparatus, job management method, and job management program
US10936368B2 (en) Workload management with delegated correction of execution issues for improving a functioning of computing machines
US8627126B2 (en) Optimized power savings in a storage virtualization system
US8656395B2 (en) Method and system for optimizing a job scheduler in an operating system
CN118786412A (en) Manage app updates
Mi et al. Restrained utilization of idleness for transparent scheduling of background tasks
Patil et al. Methodology for Usage of Emerging Disk to Ameliorate Hybrid Storage Clouds
US8234513B2 (en) Power management method
US20250258705A1 (en) Workload control device and workload control method
Nassiffe et al. Optimizing quality of service in real-time systems under energy constraints
JP7834550B2 (en) Method for generating a computer system and deployment plan

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10720902

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10720902

Country of ref document: EP

Kind code of ref document: A1