Abstract:
In general, in one aspect, the disclosure describes running a cooling fan within a computer at low speed while the computer is in low temperature operations (e.g., idle). The operation of the cooling fan may reduce CPU temperature enough to decrease CPU leakage power, offsetting the power consumption of the fan, and possibly resulting in a net system power reduction. The benefit at the platform level increases further when considering the low efficiency of voltage regulation (VR) in this lower power regime, and potentially reductions in other components (e.g., graphics processor). The optimal fan speed is the speed at which the overall system power is reduced the most (e.g., CPU power savings is greater than fan power utilized). The optimal temperature may be determined dynamically during-operation or may be determined in manufacturing and applied statically during operation.

Description:
RELATED APPLICATIONS 
       [0001]    The present application is related to and claims priority from U.S. patent application Ser. No. 13/431,628, filed on Mar. 27, 2012 which claims priority from U.S. patent application Ser. No. 12/242,883, filed on Sep. 30, 2008 (now U.S. Pat. No. 8,145,926 issued on Mar. 27, 2012), which is incorporated herein by reference for all purposes. 
     
    
     BACKGROUND 
       [0002]    Fans may be utilized in computer systems to provide cooling. The fans are used to provide cooling to the central processing unit (CPU) and other processors that generate large amounts of heat. The fans are typically turned on when the temperate of the CPU exceeds some threshold temperature. The use of the fans can reduce the temperature of the CPU and accordingly the leakage current and power consumption. In order to conserve the power consumed by the fan, the fan is typically turned off when the CPU is below some temperature or when the system is receiving power from the battery (e.g., system is unplugged) and battery conservation is desired. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0003]    The features and advantages of the various embodiments will become apparent from the following detailed description in which: 
           [0004]      FIG. 1  illustrates a block diagram of an example computer system with cooling provided by a fan; 
           [0005]      FIG. 2  illustrates a graph of an example implementation of the fan based on temperature of the CPU; 
           [0006]      FIG. 3A  illustrates a graph of example power consumptions of the CPU and fan for increasing fan speeds during low temperature operations, according to one embodiment; 
           [0007]      FIG. 3B  illustrates a graph of an example overall system power consumption as the speed of the fan increases, according to one embodiment; 
           [0008]      FIG. 3C  illustrates a graph of an example overall system temperature as the speed of the fan increases, according to one embodiment; 
           [0009]      FIG. 4  illustrates a graph of a dynamic implementation of adjusting fan speed to select an optimal speed for power conservation for low temperature (low power) operations, according to one embodiment; 
           [0010]      FIG. 5  illustrates a graph illustrating an example static implementation of optimal fan speed over CPU temperature for low temperature (low power) operations, according to one embodiment; and 
           [0011]      FIG. 6  illustrates an example algorithm that may be utilized to determine a target temperature and optimal fan speed based on system parameters, according to one embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0012]      FIG. 1  illustrates a block diagram of an example computer system  100  with cooling provided by a fan. The computer  100  receives power from at a power adapter  110  that converts the AC power from a wall socket to DC power utilized by the computer  100 . The power adapter  110  provides the power to a voltage regulator (VR)  120  to generate a regulated voltage for use by a central processing unit (CPU)  130 . The power adapter  110  also provides the power to a VR  140  to generate a regulated voltage for use by a fan controller  150  and a fan  160 . A remote heat exchanger (RCE)  170  is utilized to extract heat from the CPU  130  and provide it to a location where the fan  160  provides cooling thereto. A target temperature is the temperature at which the computer  100  is desired to operate. The target temperature may vary based on the operations of the computer  100 . 
         [0013]    As the target temperature increases, the fan will not be required to operate as much and the power consumed by the fan will be reduced. Alternatively, as the target temperature increases the CPU temperature increases and the leakage current increases resulting in the power consumed by the CPU being increased. The overall power consumed by the system  100  is based on the power consumed by the fan  160 , the CPU  130 , and other functions (not illustrated) as well as the efficiency of the VRs  120 ,  140 , the fan controller  150  and other functions. The efficiencies of the VRs  120 ,  140  may vary based, for example, on the operating power and temperature of the system  100 . 
         [0014]      FIG. 2  illustrates a graph of an example implementation of the fan based on temperature of the CPU. Typically for low temperature operations, such as during CPU idle, the fan is not turned on in order to save the power required to operate the fan. Once the CPU gets into higher temperature operations associated with an operational CPU and approaches the thermal design power (TDP) of the CPU, the fan will turn on and the speed of the fan will increase with the temperature increase of the CPU. 
         [0015]    During low temperature operations (e.g., idle) it is possible to reduce the power consumed by the CPU by cooling the CPU (reduce target temperature). The power consumed by the fan increases in order to reduce the target temperature. As the power of the CPU and the power of the fan are inversely related to one another the overall affect on the power of the system needs to be examined. In addition to reducing the temperature and power of the CPU, the operation of the fan may reduce the temperature and power of other components in the system (e.g., graphics processor). There may be a speed for which the fan may be operated that results in a maximum power savings during lower temperature operations (optimal speed for power savings). 
         [0016]      FIG. 3A  illustrates a graph of example power consumptions of the CPU  300  and fan  310  for increasing fan speeds during low temperature operations. As the fan speed increases the power consumed by the CPU  300  reduces as the temperature and leakage current are reduced. As the fan speed increases the power consumed by the fan  310  increases. 
         [0017]      FIG. 3B  illustrates a graph of an example overall system power consumption  320  as the speed of the fan increases. The overall power consumption  320  reduces as the fan is turned on and increases in speed. At this point, the power required to operate the fan is less than the power conserved by reducing the temperature of the CPU (as well as power possibly saved by reducing the temperature of other components). At a certain fan speed the overall power consumption  320  reaches a minimum (the optimal speed  330 ). As the fan speed continues to increase from the optimal speed, the overall power consumption  320  begins to increase again. At this point, the power required to increase the speed of the fan is more than the power savings provided by reducing the temperature of the CPU (and other components). A first power savings  340  may be achieved by turning the fan on and increasing the fan speed to the optimal speed  330  is achieved. A second power savings  350  may be achieved by reducing the fan from full speed to the optimal speed  330 . 
         [0018]      FIG. 3C  illustrates a graph of an example overall system temperature  360  as the speed of the fan increases. The overall system temperature  360  is reduced as the fan is turned on and the speed is increased. At some point, the overall temperature may level off or even increase if the power and heat required to run the fan exceeds the heat reduction in the CPU (and other components). 
         [0019]    The control of the fan during low temperature operations may be controlled dynamically or statically. For dynamic control the system may make decisions about increasing or decreasing the fan speed based on measurements made during operation of the system. For example, the system may take measurements regarding the power consumed by the fan and CPU during operation. The system may also take measurements regarding the power consumed by other components (e.g., graphics processor). The fan, CPU and other components may require the addition of one or more sense resisters to measure power if not already provided. 
         [0020]    Rather than measuring CPU power, the CPU may measure the temperature and use existing leakage current characteristics to determine the leakage current (and power) based thereon. The other components (e.g., graphics processor) may also calculate power consumption in a similar way. Alternatively, the system may utilize operating system (OS) estimates of platform power utilized for battery life projection to estimate the power consumption. 
         [0021]    Regardless of how the power consumption is measured or calculated, the system may calculate the overall power of the system for a certain fan speed (e.g., measure prior to initiation of the fan). The fan speed may then be adjusted and the overall system power may be calculated again. If the overall system power was reduced the fan speed was adjusted in the correct direction while if the overall power increased the fan speed was either adjusted in the wrong direction or the previous value may be the optimal value. 
         [0022]      FIG. 4  illustrates a graph of a dynamic implementation of adjusting fan speed to select an optimal speed for power conservation. The CPU power  400  and the fan power  410  are measured/determined for an initial fan speed (e.g., off). A determination is made as to the overall system power  420 . As illustrated, the overall system power  420  is simply based on CPU power  400  and fan power  410 . The overall system power may also take into account the power of other components (e.g., graphics processor) that may be affected by cooling. 
         [0023]    The fan speed is then adjusted (e.g., to a faster speed) and the CPU power  400  and fan power  410  are measured/determined again and the system power  420  is determined. The measurement/determination of CPU power  400  and fan power  410  may be made after the fan has been running at the new speed for some period (e.g., time, cycles). If the change in system power  420  was negative meaning that the overall system power  420  was reduced the fan speed was adjusted correctly. For example, as the fan speed is initially increased the system power  420  will be reduced (left side of system power  420  curve). The fan will be incremented in the same direction as long as a determination is made that the system power  420  is being reduced. 
         [0024]    When the system power  420  increases the fan speed was adjusted too much in the particular direction (e.g., for fan speed increase the fan power  410  required to operate the fan at the additional speed is more than savings in CPU power  400  at the lower temperature). The fan speed is adjusted in the opposite direction and the system power  420  is determined again. Eventually, an optimal fan speed will be determined that provides the lowest system power  420  (e.g., lowest point on system power curve, point on system power curve where slope equals  0 ). 
         [0025]    It is possible that the measurements result in the fan speed oscillating back and forth between two speeds. The optimal fan speed may be selected from one of those speeds or the system may allow the fan speed may oscillate back and forth. If the optimal fan speed is selected the fan may continue to operate at that speed. The system may at times adjust the fan speed from the selected optimal speed to determine if the fan speed is still optimal. The adjustment to the optimal fan speed may be done at defined periods (e.g., time, cycles) or may be based on some system parameters (e.g., change in system status, change in system temperature). 
         [0026]    The adjustments to the fan speed may be same for each adjustment period or may vary based on conditions. For example, the fan speed may be implemented in certain increments while the system power is decreasing, and then the increments may be reduced each time a determination is made that the system power increased. 
         [0027]      FIG. 5  illustrates a graph illustrating an example static implementation of optimal fan speed  500  over CPU temperature for low temperature (low power) operations. The optimal fan speed  500  may be calculated by an engineer at the time the computer is designed or may be calculated by an algorithm used to calculate optimal fan speed based on system parameters. The optimal fan speed may be a parameter defined in the fan controller, and the fan may operate at the defined speed based on the temperature of the CPU. 
         [0028]    As the optimal fan speed  500  is determined during the design of the system the optimal fan speed may not equate to what would be optimal in operation due to, for example, manufacturing or operational differences. For example, if the dynamic method of defining the optimal fan speed was utilized it may determine an optimal fan speed  510  that is above the static optimal fan speed  500 . Accordingly, the system power savings may not be as much as it could have been if the fan speed was increased (e.g., on left side of  FIG. 4 ). If the dynamic method determined that an optimal fan speed  520  below the static optimal fan speed  500 . In this case, the system power savings may not be as much as it could have been had the fan speed been reduced (e.g., on right side of  FIG. 4 ). Whether the static optimal fan speed  500  is optimal in operation or not, use of the static optimal fan speed  500  provides system power savings that would not be available if the fan was not run during low temperature (low power) operations. 
         [0029]      FIG. 5  includes some typical low power benchmarks (idle mode, mobile mark 2007 (MMO7), and Energy Star) overlayed over the CPU temperature (the placement is relative as the CPU temperature for these benchmarks may vary based on different parameters. MM07 is a benchmark for limited CPU operations associated with conserving battery life in a portable computer and Energy Star is a benchmark for reducing energy. Utilizing the fan during these low power operations may reduce power consumed and conserve energy, and accordingly assist the systems meet these benchmarks. 
         [0030]      FIG. 6  illustrates an example algorithm that may be utilized to determine a target temperature and optimal fan speed based on system parameters. The algorithm may be utilized for any system where the parameters are known and may not require excessive experimentation by the engineer. 
         [0031]    Although the disclosure has been illustrated by reference to specific embodiments, it will be apparent that the disclosure is not limited thereto as various changes and modifications may be made thereto without departing from the scope. Reference to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described therein is included in at least one embodiment. Thus, the appearances of the phrase “in one embodiment” or “in an embodiment” appearing in various places throughout the specification are not necessarily all referring to the same embodiment. 
         [0032]    The various embodiments are intended to be protected broadly within the spirit and scope of the appended claims.