Abstract:
A rack having a plurality of fans and a plurality of servers divided into several groups is presented. Each of the servers calculates fan speed needed for heat dissipating based on internal temperatures, and outputs the calculated fan speed to the fans in same group respectively. The fans in the same group run according to the received fan speed. A rack management controller (RMC) in the rack obtains the fan speed outputted by a server in one of the several groups, and calculates a fan speed compensating value based on the obtained fan speed. The RMC then outputs the fan speed compensating value to fans in neighboring groups to make it to run according to the fan speed compensating value.

Description:
TECHNICAL FIELD 
       [0001]    The present invention relates to racks and more particularly relates to racks with fan speed compensation. 
       BACKGROUND 
       [0002]    Usually, a server rack may contain multiple server slots for installing multiple servers. In addition, a fan wall may be installed behind the server rack. By operating the fan wall, heat generated when the multiple servers operate may be dissipated output the server rack to achieve heat dissipation. 
         [0003]    The fan wall has multiple fans and the multiple fans respectively face locations for installing servers so that the multiple fans may carry heat of the multiple servers outside the server rack. 
         [0004]    However, the multiple servers and corresponding fans do not contact to each other but have a gap therebetween. Therefore, the heat of the multiple servers runs inside the server rack via such gap, instead of all being dissipated outside the server rack by the multiple fans. 
         [0005]    In addition, because there is such gap between the multiple servers and the fans, when the multiple fans operate, in addition to pump the heat of front servers outside the server rack, upper and bottom cool air is also pumped outside the server rack. Such arrangement causes overall efficiency loss of heat dissipation of the server rack. 
       SUMMARY OF INVENTION 
       [0006]    A major objective of the present invention is to provide a rack with fan speed compensation and a fan speed compensation method thereof so that when fans in the rack operates to perform heat dissipation, fans in a neighbor group are also controlled by providing fan speed compensation. 
         [0007]    To achieve the aforementioned objective, the multiple servers and multiple fans in the rack are grouped into multiple groups. Each server respectively detects its temperature condition, and calculates a necessary fan speed to be sent to the fans in the same group so that the fans in the same group operate according to the necessary fan speed. A rack management controller of the rack retrieves fan speed values from servers in a group and calculates a compensation value according to the retrieved fan speed values. Finally, the rack management controller sends the compensation value to the fans in a neighbor group so that the fans in the neighbor group operate according to the compensation value. 
         [0008]    One technical effect of the present invention, compared with convention art, is that when servers determine the need of heat dissipation, in addition to activate fans in the same group to directly pump the heat of the servers outside the rack, fans in a neighbor group are also activated to provide compensation fan speed to pump out heat running inside the rack outside the rack. As such, the rack of the present invention that uses the fan speed compensation method of the present invention provides better heat dissipation effect than racks that only rely on fans in the same group. 
     
    
     
       BRIEF DESCRIPTION OF DRAWING 
         [0009]      FIG. 1  is a perspective diagram of a rack of a first embodiment according to the present invention; 
           [0010]      FIG. 2  is a side view diagram of the rack of the first embodiment according to the present invention; 
           [0011]      FIG. 3  is a server connection diagram of the first embodiment according to the present invention; 
           [0012]      FIG. 4  is a fan connection diagram of the first embodiment according to the present invention; 
           [0013]      FIG. 5  is fan connection diagram of a second embodiment according to the present invention; 
           [0014]      FIG. 6  is a control flowchart of the first embodiment according to the present invention; 
           [0015]      FIG. 7  is a compensation flowchart of the first embodiment according to the present invention; and 
           [0016]      FIG. 8  is a fan speed comparison flowchart of the first embodiment according to the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0017]    A preferred embodiment of the present invention with associated drawings are provided as follows. 
         [0018]    Please refer to  FIG. 1  and  FIG. 2 , which are perspective diagram and side view diagram of a rack of the first embodiment according to the present invention. The present invention provides a rack with fan speed compensation function (hereinafter as the rack  1 ). The rack  1  has multiple server slots for installing multiple servers  2 . A fan wall is disposed behind the rack  1  and the fan wall is composed of multiple fans  3 . 
         [0019]    In the invention, the rack  1  divides the multiple servers  2  and the multiple fans  3  into multiple groups, e.g. a first group  11 , a second group  12  and a third group  13  in  FIG. 2 . Please be noted that such arrangement is not a limitation to the invention scope. The groups  11 - 13  respectively include the multiple servers  2  and the multiple fans  3 . The multiple fans  3  are respectively disposed right behind the multiple servers  2  in the same group. As such, when the fans  3  operate, heat generated by the multiple servers  2  in the same group is pumped outside the rack  1 . 
         [0020]    In the embodiment of  FIG. 2 , the first group  11  includes a first group of servers  21  and a first group of fans  31  disposed right behind the first group of servers  21 . The second group  12  includes a second group of servers  22  and a second group of fans  32  disposed right behind the second group of servers  22 . The third group  13  includes a third group of servers  23  and a third group of fans  33  disposed right behind the third group of servers  23  and so forth. 
         [0021]    Take the first group  11  as an example. When one from the first group of servers  21  determines there is a need for heat dissipation, a control instruction is sent to the first group of fans  31  in the same group (the first group  11  in this example). The first group of fans  31  operate according to the control instruction to achieve heat dissipation for the first group of servers  21 . Specifically, the control instruction may include a fan speed necessary for the first group of servers  21  and the first group of serves  21  mainly sends the control instruction to a fan controller (not shown) in the fan wall. As such, the fan controller controls the first group of fans  31  so that the first group of fans  31  operate according to the fan speed recorded in the control instruction to satisfy the heat dissipation needed for the first group of servers  21 . 
         [0022]    As mentioned above, under normal operation, the multiple servers  2  only control the multiple fans  3  in the same group, but not able to control the fans  3  in other groups. 
         [0023]    Please refer to  FIG. 3 , which is a server connection diagram of a first embodiment according to the present invention. As illustrated in  FIG. 3 , the rack  1  further includes a rack management controller (RMC)  4  for connecting to all servers  2  in the rack  1 . Specifically, the multiple servers  2  respectively have baseboard management controllers (BMC). The RMC  4  is connected to and communicates with the multiple BMCs  21  respectively for collecting data of the multiple servers  2  and sending instructions to the servers  2 . 
         [0024]    When the servers  2  need heat dissipation, the internal BMCs  20  are mainly used for generating and sending the control instructions. Because the RMC  4  may communicate with these BMCs  20 , the RMC  4  knows which BMC  20  sends the control instruction and also knows the content of the control instruction, e.g. the fan speed. In the present invention, the rack  1  uses the RMC  4  to perform fan speed compensation and the RMC  4  calculates necessary fan speed compensation value according to the content of the control instructions. 
         [0025]    Specifically, by reference to the calculated fan speed, the RMC  4  controls the fans in a neighbor group of the server  2  that sends the control instructions to operate. Take the embodiment in  FIG. 2 , if any of the second group of servers  22  sends the control instructions, the RMC  4  sends the calculated fan speed to the first group of fans  31  in the first group  11  and the third group of fans  33  in the third group  13 . The first group of fans  31  and the third group of fans  33  operate to perform compensated heat dissipation for the second group of servers  22 . 
         [0026]    Please refer to  FIG. 4 , which is a fan connection diagram of the first embodiment according to the present invention.  FIG. 4  discloses a server group  5  and a fan group  6  in the same group. The server group  5  is composed of n servers, i.e. a first server  51 , a second server  52  to a n-th server  5   n . The fan group  6  is disposed right behind the server group  5  and is composed of m fans, i.e. a first fan  61 , a second fan  62  to m-th fan  6   m.    
         [0027]    As illustrated in  FIG. 4 , when the first server  51  determines a need for heat dissipation, a first baseboard management controller  511  of the first server  51  is used for calculating and sending a first fan speed output value V 1  to the multiple fans  61 - 6   m . When the second server  52  determines a need for heat dissipation, a second baseboard management controller  511  of the second server  52  is used for calculating and sending a second fan speed output value V 2  to the multiple fans  61 - 6   m . When the n-th server  5   n  determines a need for heat dissipation, a n-th baseboard management controller  5   n   1  of the n-th server  5   n  is used for calculating and sending a n-th fan speed output value Vn to the multiple fans  61 - 6   m  and so forth. 
         [0028]    When the multiple fans  61 - 6   m  and the multiple servers  51 - 5   n  are in the same group, the multiple fans  61 - 6   m  operate according to the fan speed output values V 1 -Vn for performing heat dissipation of the multiple servers  51 - 5   n  in the same group so as to decrease the temperature of the multiple servers  51 - 5   n  down to a safety temperature range. Meanwhile, the multiple fans  61 - 6   m  receive a fan compensation value Vc from the RMC  4 . The fan speed compensation value Vc is generated by the RMC  4  for performing heat dissipation compensation of servers in a neighbor group beside the server group  5 . To perform heat dissipation compensation for servers in the neighbor group, the multiple fans  61 - 6   m  operate according to the fan compensation value Vc when receiving the fan speed compensation value Vc from the RMC  4 . 
         [0029]    In another embodiment, the rack  1  further includes multiple fan speed comparators  7  respectively connected to the multiple servers  2  and the multiple fans  3  in the same group, and connected to the RMC  4 . The major effect of the fan speed comparators  7  is to ensure the fans  3  to operate in a maximum fan speed. 
         [0030]    Please refer to  FIG. 5 , which is a fan connection diagram of the second embodiment according to the present invention. Compared with the embodiment illustrated in  FIG. 4 , the embodiment in  FIG. 5  further includes the aforementioned fan speed comparators  7 . The fan speed comparator  7  is connected to all servers  51 - 5   n  in the server group  5 , all fans  61 - 6   m  in the fan group  6  and the RMC  4 . When the multiple servers  51 - 5   n  determines a need of heat dissipation and calculate respectively the first fan speed output value V 1 , the second fan speed output value V 2  to the n-th fan speed output value Vn, the baseboard management controllers  511 ,  521  to  5   n   1  are used for sending these values to the fan speed comparator  7 . The fan speed comparator  7  compares these fan speed output values V 1 -Vn and selects the maximum fan speed output value as an ascertain fan speed value Vm and outputs the ascertain fan speed value Vm to the fan group  6 . As such, the fans  61 - 6   m  operate according to the ascertain fan speed value Vm to satisfy the heat dissipation need of the multiple servers  51 - 5   n.    
         [0031]    When the fan group  6  operates, the RMC  4  calculates and generates a fan speed compensation value Vc for the group for controlling the fans in a neighbor group to perform compensation. If another server group (not shown) neighbor to the server group  5  also performs heat dissipation, the RMC  4  also calculates and generates a fan speed compensation value Vc and sends the value to the fan speed comparator  7 . In such case, the fan speed comparator  7  compares the fan speed output values V 1 -Vn and the fan speed compensation value Vc and selects the maximum therein as the ascertain fan speed value Vm. 
         [0032]    For example, if the first fan speed output value V 1  is 50%, the second fan speed output value V 2  is 30% and the fan speed output value Vn is 40%, the fan speed comparator  7  compares these values and determines taking the first fan speed output value V 1  as the ascertain fan speed value Vm and instructs the fans  61 - 6   m  to operate in 50% fan speed. In another example when the fan speed comparator  7  receives the fan speed compensation value Vc from the RMC  4  at the same time and the fan speed compensation value Vc is 75%, the fan speed comparator  7  compares these values and changes the ascertain fan speed value Vm as the fan speed compensation value Vc and instructs the fans  61 - 6   m  to operate in 75% fan speed. As such, the fans  61 - 6   m  are able to perform heat dissipation for the servers  51 - 5   n  in the same group and also perform heat dissipation compensation for servers in a neighbor group. 
         [0033]    Please refer to  FIG. 6 , which is a control flowchart of the first embodiment according to the present invention. Please also refer to the rack  1  illustrated in  FIG. 1  and  FIG. 2  for the following explanation of  FIG. 6 . First, each server  2  respectively uses the baseboard management controller  20  to detect the internal temperature (step S 10 ). The temperature in this embodiment may refer to temperature of motherboard, CPU, memory, hard disk or any other temperature. 
         [0034]    When the baseboard management controllers  20  determine heat dissipation needs, they respectively calculate and generate the aforementioned fan speed output values (step S 12 ). In this embodiment, these baseboard management controllers  20  record a fan speed mapping table. By looking up the fan speed mapping table, the current temperature is converted to a fan speed of the fans  3  in the same group. In another embodiment, these baseboard management controllers  20  may respectively have an algorithm for calculating necessary fan speeds according to the detected temperatures by the algorithms. These configurations are not limitation of the invention scope. 
         [0035]    After the step S 12 , these baseboard management controllers  20  respectively output the fan speed output values (step S 14 ). In this embodiment, these baseboard management controllers  20  output the fan speed output values to the fans  3  (or the fan controller) in the same group. In another embodiment, these baseboard management controllers  20  output the fan speed output values to the fan speed comparator  7  in the same group. These configurations are not limitation of the invention scope. 
         [0036]    Please refer to  FIG. 7 , which is a compensation flowchart of the first embodiment according to the present invention. Firstly, the RMC  4  in the rack  1  retrieves any of the plurality of fan speed output values (step S 20 ). The RMC  4  may directly retrieve the fan speed output value directly from the servers  2  or from the fans  3 . These configurations are not limitation of the invention scope. 
         [0037]    The RMC  4  first determines which group corresponds to the server that outputs the fan speed output value (step S 22 ) and then calculates the fan speed compensation value Vc according to the fan speed output value. In this embodiment, the RMC  4  may record another fan speed mapping table. By looking up the table, the RMC  4  converts the fan speed output value to the fan speed compensation value Vc. In another embodiment, the RMC  4  may have another algorithm for calculating necessary fan speed compensation value Vc in real time by this algorithm. These configurations are not limitation of the invention scope. 
         [0038]    Finally, the RMC  4  outputs the fan speed compensation value Vc to multiple fans  3  in a neighbor group (step S 26 ) so that the multiple fans  3  in the neighbor group operate according to the fan speed compensation value Vc to perform heat dissipation compensation. In another embodiment, the RMC  4  outputs the fan speed compensation value Vc to the fan speed comparator  7  in a neighbor group. These configurations are not limitation of the invention scope. 
         [0039]    Please refer to  FIG. 8 , which is a fan speed comparison flowchart for the first embodiment according to the present invention. The flowchart in  FIG. 8  is used to explain the steps for the fan speed comparator  7  to generate the ascertain fan speed value Vm. First, the fan speed comparator  7  retrieves multiple fan speed output values from the multiple servers  2  in the same group (step S 30 ). Meanwhile, it is determined whether the fan speed compensation value Vc from the RMC  4  is received (step S 32 ). 
         [0040]    If the fan speed compensation value Vc is not received, the fan speed comparator  7  selects the maximum value among the multiple fan speed output values as the ascertain fan speed value Vm (step S 34 ). Otherwise, if the fan speed compensation value Vc is received, the fan speed comparator  7  selects the maximum value among the multiple fan speed output values and the fan speed compensation value Vc as the ascertain fan speed value Vm (step S 36 ). Finally, the fan speed comparator  7  outputs the ascertain fan speed value Vm to the multiple fans in the same group (step S 38 ) so that the multiple fans operate according to the ascertain fan speed value Vm. 
         [0041]    After these steps, the fan speed comparator  7  determines whether the system in the rack  1  is interrupted (step S 40 ). Before the system is interrupted, the steps S 30  to S 38  are performed repeatedly to control the fans  3  to perform heat dissipation for the multiple servers in the same group and also perform heat dissipation compensation for multiple servers in a neighbor group. 
         [0042]    The foregoing descriptions of embodiments of the present invention have been presented only for purposes of illustration and description. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims.