A temperature management system includes a detection unit for detecting a temperature of a heat generator, power consumption, and an intake air temperature of the electronics device; a control unit for controlling a manipulated variable to be given to the cooling device so that the temperature of the heat generator becomes close to a target value, wherein the control unit includes controllers assigned respectively to operating ranges of the electronics device and each controller includes a prediction model for predicting a future temperature of the heat generator under conditions set for the corresponding operating range, and a vector distance between a first vector for a current state of the electronic device and a second vector for conditions included in the prediction model is calculated to select the controller that corresponds to the prediction model of the shortest vector distance.
|
6. A temperature management method of performing temperature management on an electronics device, the method comprising:
detecting a temperature of a heat generator of the electronics device, power consumption of the electronics device, and an intake air temperature of the electronics device; and
controlling a manipulated variable to be given to a cooling device so that the temperature of the heat generator becomes close to a target value, the cooling device configured to cool the heat generator, the controlling including
dividing an operating area of the electronics device into a plurality of operating ranges, the operating area being a possible range for the power consumption and the intake air temperature of the electronics device, assigning a plurality of controllers respectively to the operating ranges, the controllers configured to control the manipulated variable of the cooling device,
establishing a plurality of prediction models for the operating ranges so that the prediction models correspond to the controllers, respectively, the prediction models each configured to predict a future temperature of the heat generator under conditions of the power consumption and the intake air temperature of the corresponding operating range,
calculating a vector distance between a first vector having elements of detected current power consumption and current intake air temperature and a second vector having elements of the power consumption and the intake air temperature being the conditions of each prediction model, selecting one of the controllers that corresponds to the prediction model of the shortest vector distance, and
causing the selected controller to predict the future temperature of the heat generator and thereby determine the manipulated variable of the cooling device based on the temperature thus predicted.
7. A non-transitory computer readable recording medium having therein a program for causing a computer to execute a process for temperature management on an electronics device, the process comprising:
collecting a temperature of a heat generator of an electronics device, power consumption of the electronics device, and an intake air temperature of the electronics device that are detected by a detector;
assigning a plurality of controllers respectively to a plurality of operating ranges of the electronics device that are obtained by division of an operating area of the electronics device being a possible range for the power consumption and the intake air temperature of the electronics device, the controllers configured to control a manipulated variable to be given to a cooling device;
establishing a plurality of prediction models for the operating ranges so that the prediction models correspond to the controllers, respectively, the prediction models each configured to predict a future temperature of the heat generator under conditions of the power consumption and the intake air temperature of the corresponding operating range;
switching to a controller using a prediction model out of the prediction models that is established for the operating range closest to a current operating condition of the electronics device, the switching including calculating a vector distance between a first vector having elements of current power consumption and a current intake air temperature and a second vector having elements of the power consumption and the intake air temperature being the conditions of each prediction model, and switching to the controller that corresponds to the prediction model of the shortest vector distance; and
causing the switched controller to predict the future temperature of the heat generator and thereby determine the manipulated variable of the cooling device based on the temperature thus predicted.
1. A temperature management system to perform temperature management on an electronics device, the system comprising:
a detector configured to detect a temperature of a heat generator of the electronics device, power consumption of the electronics device, and an intake air temperature of the electronics device;
a cooling device configured to cool the electronics device; and
a processor configured to control a manipulated variable to be given to the cooling device so that the temperature of the heat generator becomes close to a target value, the processor:
controls the manipulated variable of the cooling device for a corresponding one of a plurality of operating ranges of the electronics device which are obtained by division of an operating area of the electronics device, the operating area being a possible range for the power consumption and the intake air temperature of the electronics device,
establishes a plurality of prediction models which are respectively for the plurality of operating ranges and each predicts a future temperature of the heat generator under conditions of the power consumption and the intake air temperature of a corresponding one of the plurality of operating ranges,
selects, from among the plurality of prediction models, a prediction model which is established under the conditions of the power consumption and the intake air temperature closest to a current operating condition of the electronics device by calculating a vector distance between a first vector having elements of current power consumption and a current intake air temperature detected by the detector and a second vector having elements of the power consumption and the intake air temperature being the conditions of each prediction model, and selecting the prediction model of the shortest vector distance
predicts the future temperature of the heat generator using the corresponding prediction model and
determines the manipulated variable of the cooling device based on the predicted temperature.
2. The temperature management system according to
3. The temperature management system according to
4. The temperature management system according to
5. The temperature management system according to
8. The temperature management method according to
9. The temperature management method according to
10. The temperature management method according to
11. The temperature management method according to
12. The non-transitory computer readable recording medium according to
13. The non-transitory computer readable recording medium according to
14. The non-transitory computer readable recording medium according to
15. The non-transitory computer readable recording medium according to
|
This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2014-174425, filed on Aug. 28, 2014, the entire contents of which are incorporated herein by reference.
The embodiment discussed herein is related to a temperature management system, a temperature management method, and a non-transitory computer readable recording medium having therein program for temperature management.
With the advent of an advanced information society, computers have come to handle a vast amount of data, and there have been an increasing number of cases where a large number of computers are installed and managed collectively in the same room of a facility such as a data center. For example, a large number of racks (server racks) are installed in a computer room of a data center, and multiple computers (servers) are housed in each rack. A huge amount of jobs are processed efficiently by organically allocating the jobs to the computers according to the operating condition of each computer.
Computers generate a lot of heat during operation. Since temperature increase inside a computer may cause malfunction or failure of the computer, the heat generated inside the computer is exhausted to the outside of a rack by taking in cool air inside the rack using a cooling fan. In order to adjust the temperature of a heat generator (such as a CPU) of the computer to be equal to or lower than a target value, the number of rotations of the cooling fan is feedback controlled by proportional-integral-derivative (PID) control, for example.
Meanwhile, model predictive control is a control method to optimize a manipulated variable in a future interval. The model predictive control is a method of predicting a variation of a controlled variable (a CPU temperature, for example) in a predetermined prediction interval by use of a prediction model, and determining a manipulated variable so that the controlled variable may reach its target value in a desirable way. A manipulated variable is determined by evaluating a manipulated variable for each control cycle based on an evaluation function, and obtaining a manipulated variable with the highest evaluation value.
A prediction model is a model replicating the dynamic characteristics of an object to be controlled. The dynamic characteristics indicate a relationship of time series variation between a manipulated variable input into the object to be controlled and a controlled variable output from the object to be controlled. In the model predictive control, the accuracy in the reproducibility of the dynamic characteristics greatly influences the control performance. There is also proposed a solution using a nonlinear model as a prediction model used in model predictive control. However, the use of a nonlinear model includes problems such that a solution for an optimum manipulated variable is not given or calculation processing is not completed within a control time period when the prediction model is huge or complicated. Thus, a linear prediction model is generally used, and a solving method for model predictive control with a linear model has been established already.
The above-described technique is disclosed, for example, in Japanese Laid-open Patent Publication No. 2012-251770.
According to an aspect of the invention, a temperature management system to perform temperature management on an electronics device, the system includes a detection unit configured to detect a temperature of a heat generator of the electronics device, power consumption of the electronics device, and an intake air temperature of the electronics device; a cooling device configured to cool the electronics device; and a control unit configured to control a manipulated variable to be given to the cooling device so that the temperature of the heat generator becomes close to a target value, the control unit including a plurality of controllers assigned respectively to a plurality of operating ranges of the electronics device, each of the plurality of controllers configured to control the manipulated variable of the cooling device for a corresponding one of the plurality of operating ranges, the plurality of operating ranges being obtained by division of an operating area of the electronics device, the operating area being a possible range for the power consumption and the intake air temperature of the electronics device, a plurality of prediction models established respectively for the plurality of operating ranges, the plurality of prediction models included respectively in the plurality of controllers, each of the plurality of prediction models configured to predict a future temperature of the heat generator under conditions of the power consumption and the intake air temperature of a corresponding one of the plurality of operating ranges, and a controller switching unit configured to select a controller of the plurality of controller, the controller using a prediction model of the prediction models, the prediction model being established under the conditions of the power consumption and the intake air temperature closest to a current operating condition of the electronics device, wherein the controller switching unit calculates a vector distance between a first vector and a second vector, the first vector having elements of current power consumption and a current intake air temperature detected by the detection unit, the second vector having elements of the power consumption and the intake air temperature being the conditions of each prediction model, and selects the controller that corresponds to the prediction model of the shortest vector distance, and the selected controller predicts the future temperature of the heat generator using the corresponding prediction model and thereby determines the manipulated variable of the cooling device based on the temperature thus predicted.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
In the case of controlling the volume of blowing air (blast volume) and the like and managing the temperature of a heat generator by way of model predictive control using a linear prediction model, it is sometimes difficult to accurately replicate the characteristics of the entire operating area. This is because the response characteristics of a CPU temperature with respect to the air volume of a cooling fan vary largely depending on conditions such as the intake air temperature and utilization rate (rate of operation) of an electronics device. In other words, the control performance may be degraded when the actual operating condition of a computer deviates from an operating condition defined by a prediction model, and hence the control performance fluctuates depending on circumstances.
Accordingly, it is desired a temperature control technique which may suppress degradation of the control performance even when the operating condition of an electronics device varies.
The inventors have found that a prediction model to be used is not an optimal model at all times depending on the operation condition range of computers. As illustrated in
The inventors have conceived of the following solution based on the knowledge that the replicability of a prediction model is high and its control performance is high when the operating condition which a model to be used may implement (the operating condition 1 in the example of
The solution is described below. The operating area of computers is divided into multiple operating ranges, and multiple controllers having different prediction models for their operating ranges are prepared. Then, a controller having a prediction model close to the current operating condition (environment condition) is adaptively selected and switched.
In the selection of a prediction model, a prediction model selected is one having the shortest vector distance between: a first vector having elements of a current power consumption amount and a current intake air temperature of computers; and a second vector having elements of a power consumption amount and an intake air temperature being the conditions of each model. This may reduce fluctuations in the control performance due to the variation of the operating condition, and reduce overshoot of the CPU temperature.
The modular data center illustrated in
An air inlet 11a is provided in one of two surfaces opposed to each other of the container 10, and an air outlet 11b is provided in the other surface. In addition, a partition plate 15 is disposed above a space defined by the cooling fan units 12 and the racks 13.
The cooling fan unit 12 is provided with multiple cooling fans 12a. Although not illustrated, each of the air inlet 11a and the air outlet 11b may be provided with a rainwater block plate that blocks intrusion of rainwater and an insect screen net that blocks intrusion of insects and the like.
The space inside the container 10 is divided into an external-air introduction part 21, a cold aisle 22, a hot aisle 23, and a warm air circulation path 24 by the cooling fan units 12, the racks 13, and the partition plate 15. The external-air introduction part 21 is a space defined by the air inlet 11a and the cooling fan units 12, the cold aisle 22 is a space defined by the cooling fan units 12 and the racks 13, and the hot aisle 23 is a space defined by the racks 13 and the air outlet 11b.
Each rack 13 is arranged in such a way that its surface facing the cold aisle 22 is an air inlet surface and the other surface facing the hot aisle 23 is an air outlet surface.
The warm air circulation path 24 is a space above the racks 13 and the partition plate 15, and communicates between the hot aisle 23 and the external-air introduction part 21. A damper 17 configured to adjust the amount of circulation of warm air exhausted from the racks 13 is disposed in the warm air circulation path 24.
In such a modular data center, the cooling fans 12a of the cooling fan units 12 rotate to introduce external air into the external-air introduction part 21 through the air inlet 11a. Although not illustrated, a vaporizing cooling device may be installed in the external-air introduction part 21. The vaporizing cooling device is configured to lower the temperature of introduced external air using the heat of vaporization of water when the external air temperature is high. The air introduced into the external-air introduction part 21 moves to the cold aisle 22 by way of the cooling fan unit 12, and enters each rack 13 through its air inlet surface to cool the computers 14.
The air (warm air) increased in temperature due to cooling the computers 14 is exhausted to the hot aisle 23 through the air outlet surface of each rack 13 and exhausted to the outside of the container through the air outlet 11b. When the external air temperature is high, the damper 17 is closed so that the warm air may not move from the hot aisle 23 to the external-air introduction part 21. When the external air temperature is further high, the vaporizing cooling device is supplied with water, and external air is introduced into the external-air introduction part 21 by way of the vaporizing cooling device. Since water vaporizes and draws the heat of vaporization from external air when the external air passes through the vaporizing cooling device, air of a temperature lower than the external air temperature is introduced into the external-air introduction part 21.
On the other hand, the damper 17 is opened when the external air temperature is so low that the temperature of air to be introduced into each rack 13 might be lower than the allowable minimum temperature set in advance. Thereby, the warm air partially goes back from the hot aisle 23 to the external-air introduction part 21 through the warm air circulation path 24, increasing the temperature of air to be introduced into each rack 13.
The control unit 30 is configured to control the number of rotations of each cooling fan 12a of the cooling fan unit 12. The control unit 30 may be configured as hardware such as a microcomputer, a field-programmable gate array (FPGA), or a programmable logic controller (PLC). Alternatively, the control unit 30 may also be configured as software by preparing function of the control unit 30 as a program and loading the program into a general purpose computer.
The target value setting unit 31 is configured to set a target value of the CPU temperature. The CPU temperature detection units 32 are each a temperature sensor, for example, mounted in the chip including the CPU 14a. The data of the detected CPU temperature is transferred to the control unit 30 via a communication device (not illustrated) provided in the computer 14. The CPU temperature detection unit 32 as a temperature sensor may be disposed in close contact with a package of the CPU 14a instead of being disposed in the same chip as the CPU 14a.
The cooling fan unit 12 is a cooling device configured to cool each computer 14 including the CPU 14a. In addition to the configuration using the cooling fans 12a, the cooling fan unit 12 may also be configured by a combination of the cooling fans 12a and the vaporizing cooling device, or by a combination of the cooling fans 12a and an air conditioner.
The intake air temperature detection unit 33 is configured to measure the temperature of air to be taken in by each computer 14. The computer power consumption detection units 34 are each configured to detect the amount of power consumption of the computer 14 from a power strip to which the power plug of the computer is connected. As described above, the power consumption of the computer 14 correlate with the rate of operation of the computer 14.
The control parameter setting unit 35 is configured to set control parameters to be used in the control unit 30. Signals are exchanged between the control unit 30 and each computer 14 via user datagram protocol (UDP) communication, for example, but the way of exchanging signals is not limited to UDP communication.
The CPU temperature collection unit 42 is configured to collect data of CPU temperatures measured by the CPU temperature detection units 32. The computer power consumption collection unit 36 is configured to collect data of computer power consumption amounts measured by the computer power consumption detection units 34. The maximum temperature computing unit 37 is configured to identify and output data of a maximum CPU temperature which is in the highest level among the CPU temperatures collected by the CPU temperature collection unit 42.
When the allowable upper limit temperature varies among the computers 14, the temperatures may be normalized by the maximum temperature computing unit 37. Several methods of the normalization are conceivable. For example, a normalized temperature ynor(φ) of a computer φ may be obtained from an upper limit temperature ylim(φ) of the computer φ and a minimum temperature ymin(φ) of the computer φ as in the following expression (1).
The expression (1) means that the rate of approach to the upper limit temperature ylim(φ) is multiplied by 100. A highest CPU temperature ycpu_max which is in the highest level may be obtained by the following expression (2).
Another method of standardization is that a result of the following expression (3), where the maximum deviation between a current CPU temperature ycur(φ) and the upper limit temperature ylim(φ) of the computer φ is multiplied by 100, is controlled so as to be equal to or lower than 100° C.
The average temperature computing unit 38 is configured to collect intake air temperatures when the intake air temperature detection unit 33 measures intake air temperatures at multiple spots, and calculate and output an average value of these values.
The maximum power consumption computing unit 39 is configured to identify and output a maximum power consumption amount which is in the highest level among data of the power consumption amounts collected by the computer power consumption collection unit 36.
The weighted vector distance computing unit 40 is configured to calculate and output a weighted vector distance between: a vector having elements including a current intake air temperature output from the average temperature computing unit 38 and a current computer power consumption amount output from the maximum power consumption computing unit 39; and a vector having elements including condition values of the intake air temperature and computer power consumption amount of each prediction model held by the switching control unit 41. A method of calculating the weighted vector distance will be described later.
The switching control unit 41 is configured to divide the operating area of the computer 14, including conditions of the power consumption and the intake air temperature, into multiple operating ranges, and establish prediction models respectively for the operating ranges thus divided, the prediction models being used to estimate a future CPU temperature. The switching control unit 41 is configured to select a controller having an optimal prediction model among multiple controllers allocated for the respective prediction models and switch to the selected controller. Here, the optimal prediction model included by the selected controller is a prediction model of the shortest weighted vector distance. Each controller controls the cooling fans 12a so that a predicted CPU temperature may fall within an allowable range.
The manipulated variable storage unit 43 is configured to store the manipulated variable to be applied to the cooling fans 12a that each controller 52 has determined based on the CPU temperature predictive value.
Each controller 52 includes a CPU temperature prediction model 53 used by the controller, a compensation unit 54, an evaluation function 55, and an optimization unit 56. The controller 52 calculates a manipulated variable for the cooling fans 12a based on a future CPU temperature variation calculated using its CPU temperature prediction model 53.
The CPU temperature prediction model 53 is configured to calculate a CPU temperature predictive value from the output of the maximum temperature computing unit 37, the output of the average temperature computing unit 38, the output of the maximum power consumption computing unit 39, and the past manipulated variable for the cooling fans 12a and the current manipulated variable for the cooling fans 12a acquired from the manipulated variable storage unit 43. The compensation unit 54 is configured to compensate the predictive value thus calculated.
The evaluation function 55 is configured to calculate cost by weighting the deviation between the CPU temperature predictive value compensated by the compensation unit 54 and the target value set by the target value setting unit 31. The optimization unit 56 is configured to compute a current manipulated variable for the cooling fans 12a so that constraint conditions previously set may be satisfied and the cost (evaluation value) thus calculated may be the smallest value in a predetermined prediction interval between the present and the future. The constraint conditions will be described later. The optimization unit 56 is a calculation unit to solve an optimization problem. The optimization unit 56 does not have to be provided for each operating range (for each controller 52) as in
In step S11, the control unit 30 acquires current CPU temperatures of the computers 14 from the CPU temperature detection units 32, a current intake air temperature from the intake air temperature detection unit 33, and current power consumption amounts of the computers 14 from the computer power consumption detection units 34.
In step S12, the control unit 30 acquires a CPU temperature target value set by the target value setting unit 31 and various parameters set by the control parameter setting unit 35. The various parameters include: a target value following parameter being a weight for approximation to a target value of a cost function; a manipulated variable reducing parameter being a weight that approximates the magnitude of the manipulated variable of the cost function to 0; and a manipulated variable variation range parameter being a weight that reduces the variation range of the manipulated variable of the cost function. Steps S11 and S12 may be performed in any order.
In step S13, the maximum temperature computing unit 37 of the control unit 30 identifies and outputs a CPU temperature which is in the highest level among the CPU temperatures of the computers 14 collected by the CPU temperature collection unit 42. When the allowable upper limit temperature varies among the computers 14, the CPU temperatures are normalized using the normalization by the expressions (1) and (2) or the normalization by the expression (3), and the highest value of the obtained values is used.
In step S14, the maximum power consumption computing unit 39 of the control unit 30 identifies and outputs a power consumption amount which is in the highest level among the power consumption amounts of the computers 14 collected by the computer power consumption collection unit 36, and the average temperature computing unit 38 of the control unit 30 outputs an average value of the intake air temperatures measured at the multiple spots. Steps S13 and S14 may be performed in any order.
In step S15, the weighted vector distance computing unit 40 of the control unit 30 calculates a weighted vector distance. Specifically, using the following expression (4), the weighted vector distance computing unit 40 calculates and outputs a weighted Euclidean norm dy(k, ρ) between a vector vc and a vector vm. The vector vc includes as a first element a current computer power consumption amount v1_c output from the maximum power consumption computing unit 39 and as a second element a second element that is a current intake air temperature vm output from the average temperature computing unit 38. The vector vm includes a first element that is a computer power consumption amount v1_m of a prediction model ρ and a second element that is an intake air temperature v2_m of the prediction model ρ, the computer power consumption amount v1_m and the intake air temperature v2_m being included in the set of the prediction models held by the switching control unit 41.
Here, w1 indicates a weight coefficient for the computer power consumption amount (first element) and w2 indicates a weight coefficient for the intake air temperature (second element). k indicates the number of the control cycle, and ρ indicates an index (element number) for the prediction model in the set of the prediction models held by the switching control unit 41.
w1 and w2 are determined by how much the intake air temperature and the computer power consumption contribute to the CPU temperature (rate of contribution). As the rate of contribution, one of the followings may be used, the absolute value of a correlation coefficient between the CPU temperature and the computer power consumption, the absolute value of a correlation coefficient between the CPU temperature and the intake air temperature, and an F value found by the t-test. In the case of using the correlation coefficients, for example, w1 is set at 0.5 when the absolute value of the correlation coefficient between the CPU temperature and the intake air temperature is 0.5, and w2 is set at 0.9 when the absolute value of the correlation coefficient between the CPU temperature and the computer power consumption is 0.9.
The control unit 30 calculates a weighted vector distance dy(k, ρ) for every prediction model held by the switching control unit 41.
In step S16, using the following expression (5), the switching control unit 41 identifies a prediction model ρmin having the shortest distance among the prediction models ρ held by the switching control unit 41. Then, the switching control unit 41 selects a controller 52 having the prediction model ρmin, and switches to the selected controller. When there are multiple prediction models ρmin having the shortest distance, the switching control unit 41 selects a controller of the highest priority among the controllers 52 having the prediction models ρmin, and switches to the selected controller.
In step S17, using its CPU temperature prediction model 53 included in the controller 52 selected by the control unit 30, a model is prepared to predict a CPU temperature from the number of rotations of the cooling fans u(k) as a manipulated variable. The model is expressed by the following expression (6).
y(k+1)=f(u(k)) (6)
Here, y(k+1) indicates a one-cycle-later (future) CPU temperature.
In the embodiment, a state space model expressed by the following expressions (7) and (8) is used.
x(k+l)=Ax(k)+Buu(k) (7)
{tilde over (y)}(k)=Cx(k) (8)
Here, x(k) is called a state variable at a time point k and is an n-dimensional vector. A is an n×n matrix, Bu is an n-dimensional vector, and C is an n-dimensional vector. A, Bu, and C may be found by system identification from previously acquired experimental data. Techniques of system identification include a prediction error technique and a subspace identification technique. Alternatively, when it is possible to derive a differential equation of a physical model describing the dynamic characteristics of a CPU temperature, A, Bu, and C may also be derived by linearization (Taylor expansion) of the differential equation. n is determined by the degree nd of a model and dead time dt, and is expressed as n=nd+dt. In the embodiment, dt indicates dead time of the cooling fans 12a, and is set at 12 seconds. Although the state space model is used as an example, a multiple regression model may also be employed as a model expression method.
The compensation unit 54 of the selected controller 52 compensates the gap between the actual value and the predictive value by using the following expression (9).
y(k+1|k)={tilde over (y)}(k+1|k)+(yreal(k)−y(k|k−1)) (9)
Here, {tilde over (y)}(k+i|k) indicates a CPU temperature predictive value obtained by predicting a CPU temperature at a time point k+1 using the expressions (7) and (8) based on information available at the time point k, yreal(k) indicates a one-cycle-earlier (past) actual measured value, and y(k|k−1) indicates a one-cycle-earlier (past) predictive value.
The optimization unit 56 of the selected controller 52 calculates a current manipulated variable which may be satisfy the constraint conditions and minimize the evaluation function 55 in a prediction interval P over a predetermined period from the present to the future. Here, dead time dt of a manipulated variable u(k−dt) is not described for the sake of clarity of the description. Using a variation Δu, a one-cycle-later (future interval) manipulated variable may be expressed as follows.
u(k+i|k)=u(k+i−1|k)+Δu(k+i|k)
(i=0, . . . ,p−1) (10)
i is an index indicating a time in the prediction interval P. In order to evaluate a predictive value y in the prediction interval, the index i is added to each of the expressions (7) and (8) of the CPU temperature prediction model 53 and the expression (9) of the compensation unit 54. These are expressed as the following expressions (11) to (13).
x(k+i+1|k)=Ax(k+i|k)+Buu(k+i|k) (11)
{tilde over (y)}(k+i+1|k)=Cx(k+i+1|k) (12)
y(k+i+1|k)={tilde over (y)}(k+i+1|k)+(yreal(k)−y(k|k−1)) (13)
Using the expressions (11) to (13), a variation Δu of a manipulated variable such that the constraint conditions may be satisfied and a cost function J may return the smallest value is calculated.
For example, the constraint conditions are expressed by the following expression (14).
ymin≤y(k+i+1|k)≤ymax
Δumin≤Δu(k+i|k)≤Δumax
umin≤u(k+i|k)≤umax
Δu(k+h|k)=0
(h=m, . . . ,p−1) (14)
The cost function J is expressed by the following expression (15).
An input row of the variation Δu of the manipulated variable such that the constraint conditions may be satisfied and the cost function J in the expression (15) may return the smallest value is expressed by the following expression (16).
Here, P indicates a prediction interval (prediction horizon) over a future predetermined period, m indicates an interval (control horizon) in consideration of a variation of a manipulated variable, and P≥m is satisfied. In the embodiment, P is set at 100 and m is set at 1. Q, RΔu, and Ru each indicate a weight matrix.
The first term of the expression (15) is an operation that approximates a controlled variable y to a target value r set by the target value setting unit 31. Q indicates a weight for an operation that approximates the controlled variable to the target value, and is the target value following parameter set by the control parameter setting unit 35. The second term is an operation that approximates the variation Δu of the manipulated variable to 0. RΔu indicates a weight for an operation that approximates the variation of the manipulated variable to zero, and is the manipulated variable reducing parameter set by the control parameter setting unit 35. The variation Δu is large when the weight RΔu is small, and the variation Δu is small when the weight RΔu is large. The third term is an operation that approximates the manipulated variable to a target manipulated variable utarget. In the embodiment, the target manipulated variable utarget is set at 0. Ru indicates a weight for an operation that approximates the manipulated variable to the target manipulated variable, and is the manipulated variable variation range parameter set by the control parameter setting unit 35.
A current manipulated variable u(k) is calculated by the following expression (17) using a head element Δuopt(k|k) extracted from the optimal input row {Δuopt(k|k), . . . , Δuopt(m−1+k|k)} found by the expression (16).
u(k)=u(k−1)+Δuopt(k|k) (17)
As an optimization solver allowing the cost function J to return the smallest value, metaheuristic solution approaches searching an approximate solution such as a genetic algorithm (GA) and particle swarm optimization (PSO) may be employed; however, in the embodiment, sequential quadratic programming (SQP) for solving a quadratic programming problem is employed.
The current manipulated variable u(k) of the expression (17) calculated by the switched controller is substituted into the expression (7) which corresponds to the prediction model held by every controller 52 and into the expression (7) in the expression (8), and the expression (8) is calculated. The controller thereby updates a state amount x(k+1) and a predictive value {tilde over (y)}(k) included in the prediction model of each controller 52.
As described above, according to the embodiment, the control unit selects a controller having a prediction model whose operating condition is closest to the current operating condition based on a weighted vector distance between: a vector having elements of a current power consumption amount and a current intake air temperature of computers; and a vector having elements of a power consumption amount and an intake air temperature being condition values of each prediction model. By adaptively switching between the controllers having the respective prediction models, it is possible to control cooling fans and manage the temperatures of computers without degradation of the control performance even when the computers are in an operating range that a single linear prediction model is not able to cover well.
The intake air temperature operating range is divided into 2 and the divided ranges are represented by two typical conditions of 20° C. and 30° C., and the computer power consumption operating range is divided into 2 and the divided ranges are represented by two typical conditions of 200 W and 320 W in order to create the following four prediction models: (1) a prediction model No. 1 having conditions of an intake air temperature of 20° C. and a computer power consumption amount of 200 W; (2) a prediction model No. 2 having conditions of an intake air temperature of 30° C. and a computer power consumption amount of 320 W; (3) a prediction model No. 3 having conditions of an intake air temperature of 30° C. and a computer power consumption amount of 200 W; and (4) a prediction model No. 4 having conditions of an intake air temperature of 20° C. and a computer power consumption amount of 320 W.
Then, a controller having the prediction model No. 1 is set as a controller No. 1, a controller having the prediction model No. 2 is set as a controller No. 2, a controller having the prediction model No. 3 is set as a controller No. 3, and a controller having the prediction model No. 4 is set as a controller No. 4.
The four controllers described above perform control with the intake air temperature set at 20° C. and the computer power consumption amount set at 200 W as the operating conditions of computers. Since the correlation coefficient between the computer power consumption and the CPU temperature is 0.9 and the correlation coefficient between the intake air temperature and the CPU temperature is 0.5, the weight coefficient w1 for the computer power consumption amount (the first element of the vector) in the expression (4) is set at 0.9 and the weight coefficient w2 for the intake air temperature (the second element of the vector) is set at 0.5. Besides, a target value of the CPU temperature is set at 68° C.
A weighted vector distance between: a vector having elements of the current intake air temperature and the current computer power consumption amounts acquired from the detection units; and a vector having elements of the condition values of each of the prediction models No. 1 to No. 4 held by the corresponding controller was calculated using the method according to the embodiment. As a result, the model No. 1 was selected.
In
Since the weighted vector distance is employed in the embodiment, it is possible to uniquely determine a controller by the equation (4) adopting the weight coefficients even when a value of the current condition is equal to a boundary value of any of the divided operating ranges (a current intake air temperature of 25° C. or a current computer power consumption amount of 260 W, for example).
The target value is previously set lower than actually desired in consideration of overshoot so that the CPU temperature may not exceed the target value actually desired. In the case of using the temperature management method according to the embodiment, the target value may be set at 67.95° C. because overshoot rarely occurs as illustrated in
On the other hand, in the case where the controller No. 4 having the prediction model whose operating condition is different from the actual operating condition controls the cooling fans 12a, the target value has to be set at 67.5° C. in consideration of overshoot. Thus, the volume of air requested to cool the computers 14 is increased, and the amount of power consumption of the cooling fans 12a in this case is 1046 Wh.
The comparison result described above is summarized in
The temperature management on electronics devices according to the embodiment may be implemented by a computer program. In this case, a program is installed in a control computer, the program causing the computer to execute a procedure including processes of: (a) collecting a temperature of a heat generator of an electronics device, power consumption of the electronics device, and an intake air temperature of the electronics device that are detected by a detection unit; (b) assigning multiple controllers respectively to multiple operating ranges of the electronics device that are obtained by division of an operating area of the electronics device being a possible range for the power consumption and the intake air temperature of the electronics device, the controllers configured to control a manipulated variable to be given to a cooling device; (c) establishing multiple prediction models for the operating ranges so that the prediction models correspond to the controllers, respectively, the prediction models each configured to predict a future temperature of the heat generator under conditions of the power consumption and the intake air temperature of the corresponding operating range; (d) switching to a controller using a prediction model out of the prediction models that is established for the operating range closest to a current operating condition of the electronics device, the switching including calculating a vector distance between a first vector having elements of current power consumption and a current intake air temperature and a second vector having elements of the power consumption and the intake air temperature being the conditions of each prediction model, and switching to the controller that corresponds to the prediction model of the shortest vector distance; and (e) causing the switched controller to predict the future temperature of the heat generator and thereby determine the manipulated variable of the cooling device based on the temperature thus predicted.
The use of the temperature management program described above makes it possible to suppress degradation of the control performance even in an environment where the operating condition of electronics devices varies, to perform control to keep the CPU temperature at or near the target temperature while suppressing overshoot at the time of temperature control on electronics devices, and to reduce power consumption of a cooling device used for the temperature control.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Endo, Hiroshi, Fukuda, Hiroyuki, Kondo, Masao, Ogawa, Masatoshi, Kodama, Hiroyoshi
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
8594856, | Feb 15 2011 | Nuvoton Technology Corporation | Processor cooling by temperature range and multiple algorithm fan speed control |
8639482, | May 02 2005 | Schneider Electric IT Corporation | Methods and systems for managing facility power and cooling |
9541971, | Jun 28 2013 | International Business Machines Corporation | Multiple level computer system temperature management for cooling fan control |
9671840, | Jun 28 2013 | International Business Machines Corporation | Multiple level computer system for temperature management for cooling fan control |
9857779, | Mar 02 2012 | Vigilent Corporation | Multi-dimensional optimization for controlling environmental maintenance modules |
20070067136, | |||
20100179695, | |||
20110306287, | |||
JP2012251770, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jul 07 2015 | OGAWA, MASATOSHI | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036291 | /0126 | |
Jul 08 2015 | ENDO, HIROSHI | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036291 | /0126 | |
Jul 09 2015 | FUKUDA, HIROYUKI | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036291 | /0126 | |
Jul 14 2015 | KONDO, MASAO | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036291 | /0126 | |
Jul 15 2015 | KODAMA, HIROYOSHI | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036291 | /0126 | |
Jul 24 2015 | Fujitsu Limited | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Feb 16 2022 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Date | Maintenance Schedule |
Aug 28 2021 | 4 years fee payment window open |
Feb 28 2022 | 6 months grace period start (w surcharge) |
Aug 28 2022 | patent expiry (for year 4) |
Aug 28 2024 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 28 2025 | 8 years fee payment window open |
Feb 28 2026 | 6 months grace period start (w surcharge) |
Aug 28 2026 | patent expiry (for year 8) |
Aug 28 2028 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 28 2029 | 12 years fee payment window open |
Feb 28 2030 | 6 months grace period start (w surcharge) |
Aug 28 2030 | patent expiry (for year 12) |
Aug 28 2032 | 2 years to revive unintentionally abandoned end. (for year 12) |