[0001] Not applicable.
[0002] Not applicable.
[0003] 1. Field of the Invention
[0004] The present invention relates generally to power management in a system comprising a plurality of computers. More particularly, the present invention relates to changing the power state of one or more computers in the system based on a change in demand for the processing capability of the system or in accordance with criteria specified by a user.
[0005] 2. Background of the Invention
[0006] As is well known, a computer can execute a software application to perform virtually any desired function. As is also known, processing capability can be increased by networking together more than one computer. Each computer in the network then can be assigned one or more tasks to perform. By having a plurality of computers working in concert with each computer performing a portion of the overall set of tasks, the productivity of such a system is much greater than if only one computer was forced to perform the same set of tasks.
[0007] Computers, of course, require electrical power to operate and, as a result, generate heat. Despite attempts to reduce the electrical current draw and heat generation by computers, computers today generally draw more electrical power and generate more heat than previous generations of computers. Networks of computers may require very substantial amounts of electrical power and which may cause a great deal of heat to be generated. The electrical power required to power computers is, of course, not free of charge and, at times, may carry a very substantial cost. The heat generated, particularly by networks of computers, may also be very substantial and, if not removed from the system, may damage the computers. There is an additional cost associated with the cost of the electrical power required for the cooling systems necessary to remove the heat from the computers. The amount of power required for cooling is proportional to the amount of heat that must be removed. Thus, all else being equal, any reduction in the electrical current draw by a computer or network of computers is highly desirable.
[0008] One relatively recent advancement in the area of power management involves an individual computer being able to monitor its level of activity and transition itself to a reduced power consumption mode of operation during periods of low activity. For example, if no input, such as from a keyboard, mouse, disk drive, or a network connection, has been received for a certain amount of time, the computer may take action to reduce its power consumption. One response to such a low level of activity might be turn off all disk drives within the computer or to clock one or more of the computer's microprocessor at a reduced frequency.
[0009] Although helpful in managing power consumption on an individual computer basis, this type of methodology may not be the most efficient technique to manage power in a network of computers. Accordingly, any improvement that can be made in the area of computer power management is highly desirable.
[0010] The problems noted above are solved in large part by a computer system comprising a plurality of computing entities and includes automatic power management logic that automatically transitions the system to a state which uses an amount of power commensurate with the processing demands for the system. For example, if the processing demands are reduced, the power management logic transitions the system to a state in which less power is consumed. The determination as to when this transition should occur is based on determining when demand for the processing abilities of the system is reduced. Once the decision has been made to transition to a reduced power state, the system's power management logic makes this transition in such a way to preferably minimize or at least reduce the performance impact on the system.
[0011] In accordance with a preferred embodiment of the invention, the system comprises a plurality of computers with each computer capable of being in one of a plurality of power states. The system also includes a load balancer and power management logic (which may be embodied in the same or separate pieces of equipment) that couples to the computers and to a network. The load balancer and power management logic provides incoming transaction requests to one of the computers to provide efficient system behavior. The load balancer and power management logic also changes the power state of at least one of the plurality of computers based on transactions on the network. To that end, the load balancer and power management logic may compare the rate of network transactions to a threshold and when the rate falls below the threshold, one or more of the computers will be caused to consume less power. This may happen by the load balancer and power management logic causing a computer to transition to a state in which it consumes less power. Examples of such states include a reduced functionality mode in which a disk drive is turned off or a processor is operated at slower clock frequency. Another lower power state may be the off state in which the computer is essentially off but retains enough active logic to be remotely turned back on when needed.
[0012] In another embodiment, groups of computers can be centrally controlled, in part, by the load balancer and power management logic. Rather than altering the power state of one of the computers in the system, the computer can be deployed as part of another group of computers.
[0013] These and other advantages will become apparent upon reviewing the following description in relation to the accompanying drawings.
[0014] For a detailed description of the preferred embodiments of the invention, reference will now be made to the accompanying drawings in which:
[0015]
[0016]
[0017]
[0018] Certain terms are used throughout the following description and claims to refer to particular system components. As one skilled in the art will appreciate, computer companies may refer to a component and sub-components by different names. This document does not intend to distinguish between components that differ in name but not function. In the following discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to . . .”. Also, the term “couple” or “couples” is intended to mean either a direct or indirect electrical connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections. The following disclosure refers to power “states.” The term “state” is intended to be synonymous with “mode.” Further, a computer that is turned off is still considered to be in a power state or mode (i.e., the “off” power state). The term “transaction processing computer” (TPC) refers to a computer or other type of computing entity that performs one or more tasks. A TPC, for example, may respond to a request for a web page, perform a numerical calculation, or any other action. To the extent that any term is not specially defined in this specification, the intent is that the term is to be given its plain and ordinary meaning.
[0019] Referring now to
[0020] Computer system
[0021] In general, the load balancer and power management unit
[0022] In accordance with the preferred embodiment shown in
[0023] More than two power states can be provided if desired. For example, the power states may include a normal state, a reduced power state (lower processor clock frequency or disk drives turned off) and an off state (including standard “hibernation” or “sleep” states). The load balancer and power management unit
[0024] Referring still to
[0025] The load balancer and power management unit
[0026] It should be recognized that the load balancer and power management unit
[0027] There are many ways to implement the above power management methodology and, unless otherwise stated, the claims which follow should not be limited to any particular technique. One suitable technique is for the load balancer and power management unit
[0028] In accordance with the preferred embodiment of the invention, the load balancer and power management unit
[0029] By examining these two criteria—system-wide demand and TPC performance—the load balancer and power management unit
[0030] When the load balancer and power management unit
[0031] To summarize at this point, the computer system
[0032] Another preferred embodiment of the invention is shown in
[0033] As shown, the load balancer
[0034] Each TPC
[0035] The slave PMA
[0036] Fully active
[0037] Reduced power
[0038] Hibernate or sleep (Wake-On-Lan or could be awakened via another method)
[0039] Off/Wake-On-LAN (or could be awakened via another suitable method)
[0040] The fully active state means that the TPC is fully operational which also means it is capable of drawing more power than in any other state. The reduced power state means that one or more features of the TPC has been disabled or has had its performance reduced. Examples of this state include, without limitation, turning off one or more hard disk drives, turning off one or more of the CPUs
[0041] Once the master PMA
[0042] Referring still to
[0043] A management control unit
[0044] Fixed Time Sequence.
[0045] Fixed Time Sequence Plus Rule Based.
[0046] Fixed Time Sequence Plus Rule Based Plus Adaptive Learning.
[0047] Maximum Power/Heat.
[0048] Performance.
[0049] The fixed time sequence criteria may include specifying the power state for each TPC during predetermined or programmable periods of time. For example, from 8 AM until 5 PM, two of the TPCs may be set to their normal (full power) power states while the remaining TPCs are shut off or placed in another type of reduced power state. Then, from 5 PM until 8 AM when network traffic is historically lightest, perhaps only one TPC is kept fully operational with the remaining TPCs placed in a reduced or off state. Additional and/or different time periods of course can be specified. It is determined ahead of time specifically which TPCs are to be at which power states during these time periods.
[0050] Alternatively, the fixed time sequence criterion may be implemented by simply specifying the number of TPCs to be at the various power states during various periods of time without identifying which specific TPC is to be at a given power states. Instead, the master PMA, once it knows how many TPCs are to be at each power state, can determine which specific TPCs are to placed in each power state. For instance, if the master PMA knows that two TPCs must be turned off, then it may analyze the turn-around time metrics for the TPCs to identify the TPCs that historically have taken the longest time to perform their tasks and turn off the two slowest TPCs. It should be appreciated that many other embodiments of fixed time sequencing can be implemented and all such embodiments are embraced within the scope of this disclosure.
[0051] The Fixed Time Sequence Plus Rule Based criterion refers to a combination of a fixed time sequence, such as that described above, with a set of behavior rules. By way of example, during one period of time, a rotation group
[0052] The third protocol listed above (Fixed Time Sequence Plus Role Based Plus Adaptive Learning) combines the first two protocols with adaptive learning. Adaptive learning logic, embodied in master PMA
[0053] The maximum power/heat protocol involves a network administrator specifying a maximum (peak or average) power load on the system
[0054] Using the performance protocol, the administrator can specify an acceptable performance level for the system and the master PMA
[0055] Referring still to
[0056] In addition to the master PMA
[0057]
[0058] As described above, the master PMA
[0059] The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.