A method and apparatus for dynamically adjusting temperature reading cycles
By dynamically adjusting the temperature reading cycle in the server according to the rate of temperature change, the problems of temperature update lag and resource waste caused by fixed cycles are solved, achieving more reliable temperature monitoring and control, improving system stability and reducing power consumption.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- INSPUR SUZHOU INTELLIGENT TECH CO LTD
- Filing Date
- 2023-10-30
- Publication Date
- 2026-06-30
AI Technical Summary
In existing technologies, the server temperature reading cycle is fixed and cannot be dynamically adjusted according to temperature changes, resulting in delayed temperature updates or wasted resources, which affects the overall stability and heat dissipation efficiency of the machine.
By obtaining the first and second derivatives of temperature relative to the reading time, the temperature reading period is dynamically adjusted according to the relationship between the magnitudes of the derivatives and the minimum reading change period of the sensor, thus achieving dynamic adjustment of the temperature period.
It improves the reliability of server temperature monitoring and control, reduces system resource contention, ensures system stability, and reduces overall power consumption.
Smart Images

Figure CN117493106B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of server temperature reading, and in particular to a method and apparatus for dynamically adjusting the temperature reading cycle. Background Technology
[0002] With the development of information technology, servers are being used more and more widely and their integration is becoming more and more advanced. The heat dissipation of the entire machine requires temperature data input, and an appropriate temperature monitoring cycle can provide real-time and effective temperature data for heat dissipation, thereby ensuring system stability and reducing the power consumption of the entire machine.
[0003] In related designs, the temperature reading cycle is usually pre-set and cannot be dynamically adjusted according to temperature changes. The reading cycle of the temperature sensor is generally a fixed cycle. When the reading cycle is too long, the temperature update is slow. When the temperature increases rapidly, the heat dissipation cannot use the latest temperature control, thus affecting the stability of the entire system. When the reading cycle is too short, on the one hand, it causes competition for BMC (Baseboard Management Controller) and CPU (Central Processing Unit) resources. On the other hand, it may affect the performance of the components that provide temperature (the objects monitored by the temperature sensor), such as RAID (Redundant Array of Independent Disks): a disk array that uses multiple independent disks to form a large disk system, which is not conducive to the monitoring and control of server temperature.
[0004] To address this problem, the present invention provides a dynamic adjustment method and apparatus for reading temperature cycles, thereby solving the aforementioned issues. Summary of the Invention
[0005] To address the problems existing in the prior art, this invention proposes a method and apparatus for dynamically adjusting the temperature reading cycle. This effectively solves the problem that the baseboard management controller in the server cannot dynamically adjust the temperature reading cycle when reading temperature due to the prior art, and realizes the dynamic adjustment of the temperature reading cycle, thereby effectively improving the reliability of server temperature monitoring and control.
[0006] To achieve the above objectives, the present invention adopts the following technical solution:
[0007] The first aspect of this invention provides a dynamic adjustment method for reading temperature cycles, which operates in a substrate management controller, comprising:
[0008] Obtain the first derivative and the second derivative of temperature relative to reading time. The first derivative is the derivative of temperature relative to reading time in the previous time period, and the second derivative is the derivative of temperature relative to reading time in the current time period.
[0009] Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the period for reading the temperature sensor temperature in the next time period is determined.
[0010] Optionally, the first derivative is calculated as follows:
[0011] Where f1' is the first derivative, Te1 is the temperature of the temperature sensor read at the end of the previous time period, Te0 is the temperature of the temperature sensor read at the beginning of the previous time period, Ti1 is the end of the temperature sensor reading in the previous time period, and Ti0 is the beginning of the temperature sensor reading in the previous time period.
[0012] Optionally, the second derivative is calculated as follows:
[0013] Where f2' is the second derivative, Te2 is the temperature of the temperature sensor read at the end of the current time period, Te1 is the temperature of the temperature sensor read at the beginning of the current time period or the end of the previous time period, Ti2 is the end of the temperature sensor read in the current time period, and Ti1 is the beginning of the temperature sensor read in the current time period or the end of the temperature sensor read in the previous time period.
[0014] Optionally, the step of determining the temperature sensor reading period for the next time period based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period specifically involves:
[0015] Determine if the second derivative is equal to zero. If the second derivative is equal to zero, then the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period.
[0016] If the second derivative is less than zero, compare the second derivative with the first derivative. If the second derivative is not less than the first derivative, the temperature sensor reading period for the next time period is the sum of the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the second derivative is less than the first derivative, determine whether the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the difference between the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is not greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period.
[0017] If the second derivative is greater than zero, compare its magnitude with the first derivative. If the second derivative is less than the first derivative, the temperature sensor reading period for the next time period is the sum of the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the second derivative is not less than the first derivative, determine whether the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the difference between the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is not greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period.
[0018] Furthermore, if the second derivative is less than zero, the second derivative is not less than the first derivative, and the difference between the second derivative and the first derivative is greater than the first preset difference threshold, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors.
[0019] If the second derivative is greater than zero, the second derivative is less than the first derivative, and the difference between the first derivative and the second derivative is greater than the second preset difference threshold, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors.
[0020] Furthermore, the greater the difference between the second derivative and the first derivative, and the greater the difference between the first preset difference threshold, the more minimum reading change cycles of the temperature sensor are added to the reading cycle of the temperature sensor in the current time period; the greater the difference between the first derivative and the second derivative, and the greater the difference between the second preset difference threshold, the more minimum reading change cycles of the temperature sensor are added to the reading cycle of the temperature sensor in the current time period.
[0021] Optionally, if the second derivative is less than zero, the second derivative is less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the first derivative and the second derivative is greater than a third preset difference threshold, and all these conditions are met simultaneously, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change periods of multiple temperature sensors; and the adjusted reading period of the temperature sensor in the next time period is greater than the minimum reading change period of the temperature sensor.
[0022] If the second derivative is greater than zero, the second derivative is not less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the second derivative and the first derivative is greater than the fourth preset difference threshold, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors; and the adjusted reading period of the temperature sensor in the next time period is greater than the minimum reading change period of the temperature sensor.
[0023] Furthermore, the greater the difference between the first derivative and the second derivative, and the greater the difference between the third preset difference threshold, the more minimum reading change cycles of the temperature sensor are subtracted from the reading cycle of the temperature sensor in the current time period; the greater the difference between the second derivative and the first derivative, and the greater the difference between the fourth preset difference threshold, the more minimum reading change cycles of the temperature sensor are subtracted from the reading cycle of the temperature sensor in the current time period.
[0024] A second aspect of the present invention provides a dynamic adjustment device for reading temperature cycles, comprising:
[0025] The acquisition module acquires the first derivative and the second derivative of the temperature relative to the reading time. The first derivative is the derivative of the temperature with respect to the reading time in the previous time period, and the second derivative is the derivative of the temperature with respect to the reading time in the current time period.
[0026] The determination module determines the temperature sensor reading period for the next time period based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period.
[0027] A third aspect of the present invention provides a substrate management controller for performing the steps of a dynamic adjustment method for reading temperature cycles as described in the first aspect of the present invention.
[0028] The technical solution adopted in this invention has the following technical effects:
[0029] 1. The technical solution of this invention obtains a first derivative and a second derivative of temperature relative to reading time. The first derivative is the derivative of temperature in the previous time period with respect to reading time, and the second derivative is the derivative of temperature in the current time period with respect to reading time. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the reading period of the temperature sensor in the next time period is determined. This effectively solves the problem that the reading period of the baseboard management controller in the server cannot be dynamically adjusted when reading temperature due to the prior art, and realizes the dynamic adjustment of the reading period, effectively improving the reliability of server temperature monitoring and control.
[0030] 2. In the technical solution of this invention, based on the relationship between the second derivative and zero, the relationship between the second derivative and the first derivative, and the relationship between the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor, the reading period of the temperature sensor in the next time period is flexibly adjusted. That is, the reading period is dynamically adjusted according to the speed of temperature change of the temperature sensor. When the temperature changes quickly, the temperature sensor temperature can be monitored more in real time; when the temperature changes slowly, the system resource contention caused by system calls can be effectively reduced. An appropriate temperature monitoring period can provide effective temperature data for heat dissipation, thereby ensuring the stability of the system and reducing the power consumption of the whole machine.
[0031] 3. In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the second derivative and the first derivative and the difference between the first preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period; the larger the difference between the first derivative and the second derivative and the difference between the second preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0032] 4. In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the first derivative and the second derivative and the third preset difference threshold, the more minimum reading change periods of the temperature sensors are subtracted from the reading period of the temperature sensor in the current time period; the larger the difference between the second derivative and the first derivative and the fourth preset difference threshold, the more minimum reading change periods of the temperature sensors are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0033] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the invention. Attached Figure Description
[0034] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0035] Figure 1 This is a flowchart illustrating the method of Embodiment 1 in the present invention;
[0036] Figure 2 This is a schematic diagram of the derivative (slope) of the temperature curve with respect to the temperature reading time in the method of Embodiment 1 of the present invention;
[0037] Figure 3 This is a flowchart illustrating step S2 in the method of Embodiment 1 of the present invention;
[0038] Figure 4 This is a schematic diagram showing the temperature curves as the temperature is read, when the second derivative is greater than zero, the second derivative is greater than the first derivative, and the first derivative is greater than zero, in the method of Embodiment 1 of the present invention.
[0039] Figure 5 This is a schematic diagram showing the temperature curves as the temperature is read when the second derivative is greater than zero, the second derivative is greater than the first derivative, and the first derivative is less than zero, in the method of Embodiment 1 of the present invention.
[0040] Figure 6 This is a schematic diagram showing the change of the temperature curve with the time of temperature reading when the second derivative is greater than zero and the second derivative is less than the first derivative in the method of Embodiment 1 of the present invention.
[0041] Figure 7This is a schematic diagram showing the temperature curves as the temperature is read when the second derivative is less than zero, the second derivative is greater than the first derivative, and the first derivative is less than zero, in the method of Embodiment 1 of the present invention.
[0042] Figure 8 This is a schematic diagram showing the temperature curves as the temperature is read when the second derivative is less than zero, the second derivative is less than the first derivative, and the first derivative is less than zero in the method of Embodiment 1 of the present invention.
[0043] Figure 9 This is a schematic diagram showing the temperature curves as the temperature is read when the second derivative is less than zero, the second derivative is less than the first derivative, and the first derivative is greater than zero in the method of Embodiment 1 of the present invention.
[0044] Figure 10 This is a schematic diagram illustrating the dynamic adjustment of the temperature reading cycle in the next time period by the BMC based on the first derivative of the previous time period and the second derivative of the current time period in the method of Embodiment 1 of the present invention.
[0045] Figure 11 This is a schematic diagram of the device in Embodiment 2 of the present invention. Detailed Implementation
[0046] To clearly illustrate the technical features of this solution, the invention will be described in detail below through specific embodiments and in conjunction with the accompanying drawings. The following disclosure provides many different embodiments or examples for implementing different structures of the invention. To simplify the disclosure of the invention, components and arrangements of specific examples are described below. Furthermore, reference numerals and / or letters may be repeated in different examples. This repetition is for simplification and clarity and does not in itself indicate a relationship between the various embodiments and / or arrangements discussed. It should be noted that the components illustrated in the drawings are not necessarily drawn to scale. Descriptions of well-known components, processing techniques, and processes are omitted in this invention to avoid unnecessarily limiting the invention.
[0047] Example 1
[0048] like Figure 1 As shown, the present invention provides a dynamic adjustment method for reading temperature cycles, which operates in a substrate management controller, including:
[0049] S1, obtain the first derivative and the second derivative of the temperature relative to the reading time. The first derivative is the derivative of the temperature relative to the reading time in the previous time period, and the second derivative is the derivative of the temperature relative to the reading time in the current time period.
[0050] S2. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, determine the period for reading the temperature sensor temperature in the next time period.
[0051] In step S1, the first derivative is calculated as follows:
[0052] Where f1' is the first derivative, Te1 is the temperature of the temperature sensor read at the end of the previous time period, Te0 is the temperature of the temperature sensor read at the beginning of the previous time period, Ti1 is the end of the temperature sensor reading in the previous time period, and Ti0 is the beginning of the temperature sensor reading in the previous time period.
[0053] The method for calculating the second derivative is as follows:
[0054] Where f2' is the second derivative, Te2 is the temperature of the temperature sensor read at the end of the current time period, Te1 is the temperature of the temperature sensor read at the beginning of the current time period or the end of the previous time period, Ti2 is the end of the temperature sensor read in the current time period, and Ti1 is the beginning of the temperature sensor read in the current time period or the end of the temperature sensor read in the previous time period.
[0055] For ease of description of the embodiments of the present invention, Ti0, Ti1, and Ti2 are used to represent three consecutive time points when the temperature was read, and Te0, Te1, and Te2 correspond to the temperature readings at time points Ti0, Ti1, and Ti2. The previous time period is Ti0-Ti1, the current time period is Ti1-Ti2, and the next time period is Ti2-Ti3.
[0056] This invention introduces the Lagrange Mean Value Theorem from the concept of differentiation (if a function f(x) is continuous on a closed interval [a,b] and differentiable on an open interval (a,b), then there exists at least one point ξ in the open interval (a,b) such that f'(ξ) = (f(b) - f(a)) / (ba)). Based on the principle of differentiation, as follows... Figure 2 As shown, the first derivative f1' > 0 indicates that the temperature in the previous time period (Ti0-Ti1) was in the rising phase. The larger the slope, the larger the first derivative f1', and the faster the temperature rises. The second derivative f2' = 0 indicates that the temperature in the current time period (Ti1-Ti2) has not changed. The second derivative f2' < 0 indicates that the temperature in the current time period (Ti1-Ti2) is in the falling phase. The larger the slope, the smaller the second derivative f2' (the larger the absolute value of the second derivative f2').
[0057] When the BMC first starts temperature monitoring, it cannot confirm the current temperature trend. Therefore, it uses the default TDef or Tcr (default reading period, e.g., 10s) to read the first three temperatures, such as (Ti0, Te0), (Ti1, Te1), and (Ti2, Te2). Based on the differential principle and Lagrange's theorem, the slope of the Te0-Te1 temperature curve within the Ti0-Ti1 period can be calculated. and the slope of the Te1-Te2 temperature curve within the Ti1-Ti2 cycle The first derivative f1' and the second derivative f2' represent the rate of temperature change between Ti0-Ti1 and Ti1-Ti2, respectively.
[0058] Among them, such as Figure 3 As shown, step S2 specifically includes:
[0059] S201, Determine whether the second derivative is equal to zero. If the result is yes, proceed to step S202; if the result is no, proceed to step S203.
[0060] S202, the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period;
[0061] S203, determine whether the second derivative is less than zero. If the result is yes, proceed to step S204; if the result is no, proceed to step S205.
[0062] S204, determine whether the second derivative is not less than the first derivative. If the result is yes, proceed to step S206; if the result is no, proceed to step S207.
[0063] S206, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor.
[0064] S207, determine whether the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor. If the determination result is yes, proceed to step S208; if the determination result is no, proceed to step S209.
[0065] S208, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor.
[0066] S209, The temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period;
[0067] S205, determine whether the second derivative is less than the first derivative (the second derivative is greater than zero). If the determination result is yes, execute step S210; if the determination result is no, execute step S211;
[0068] For S210, the period for reading the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor;
[0069] For S211, determine whether the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor. If the determination result is yes, execute step S212; if the determination result is no, execute step S213;
[0070] For S212, the period for reading the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor;
[0071] For S213, the period for reading the temperature of the temperature sensor in the next time period is the same as the reading period of the temperature sensor in the current time period.
[0072] Specifically, in step S202, if the second derivative f2' = 0, this indicates that the temperature in the current time period has not changed and there is no need to adjust the temperature reading period. Continue to use the (Ti1 - Ti2) period for the next temperature reading; that is, the period for reading the temperature of the temperature sensor in the next time period (Ti2 - Ti3) is the same as the reading period of the temperature sensor in the current time period (Ti1 - Ti2);
[0073] In steps S205 - S213, if the second derivative f2' > 0, at this time the temperature in the current time period is in an ascending state or a state of rapid temperature change. Then compare the state of the second derivative f2' with the first derivative f1'. If the second derivative f2' >= f1' (as Figure 4 shown, the first derivative f1' is greater than zero; as Figure 5 shown, the first derivative f1' is less than zero), it means that the current temperature is still in a state of rapid temperature increase (as Figure 4 shown) or a state of unstable temperature (as Figure 5 shown), and the temperature needs to be read in a timely manner. At this time, if (Ti2 - Ti1) > Tmin (the minimum reading change period of the temperature sensor, for example, 0.02s), then use the (Ti2 - Ti1 - Tmin) period for the next temperature reading, that is, step S212, otherwise continue to use the (Ti2 - Ti1) period for the next temperature reading; that is, step S213.
[0074] If f2' < f1' (as Figure 6As shown, it indicates that the temperature is in a slow rising state during the current time period. At this time, the temperature reading cycle can be slowed down. Therefore, the (Ti2 - Ti1 + Tmin) cycle is used for the next temperature reading, that is, step S210.
[0075] In steps S204 - S209, if the second derivative f2' < 0, at this time the temperature during the current time period is in a decreasing state or the temperature change is relatively fast state. Then compare the state of the second derivative f2’ with the first derivative f1'. If f2' >= f1'( Figure 7 As shown, it indicates that the temperature is in a slow decreasing trend at this time, and there is no need to read the temperature too frequently. Therefore, the (Ti2 - Ti1 + Tmin) cycle is used for the next temperature reading, that is, step S206; if f2' < f1’ (such as Figure 8 As shown, f1’ is less than zero; as Figure 9 As shown, f1’ is greater than zero), it indicates that the temperature is in a rapid decreasing trend (such as Figure 8 As shown) or the temperature is in an unstable state (such as Figure 9 As shown). The temperature needs to be read in a timely manner. At this time, if (Ti2 - Ti1) > Tmin, then the (Ti2 - Ti1 - Tmin) cycle is used for the next temperature reading, that is, step S208; otherwise, the (Ti2 - Ti1) cycle continues to be used for the next temperature reading, that is, step S209.
[0076] Preferably, if the second derivative is less than zero, the second derivative is not less than the first derivative, and the difference between the second derivative and the first derivative is greater than the first preset difference threshold, then the cycle for reading the temperature sensor in the next time period is the sum of the reading cycle of the temperature sensor in the current time period and the minimum reading change cycle of multiple temperature sensors; the greater the difference between the difference between the second derivative and the first derivative and the first preset difference threshold, the more the number of minimum reading change cycles of the temperature sensor added to the reading cycle of the temperature sensor in the current time period; for example, the second derivative f2' is -2, the first derivative f1' is -5 or -4, and the first preset difference threshold is ......
[0077] If the second derivative is greater than zero, the second derivative is less than the first derivative, and the difference between the first derivative and the second derivative is greater than the second preset difference threshold, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors. The larger the difference between the first derivative and the second derivative and the difference between the second preset difference threshold, the more minimum reading change periods of the temperature sensors are added to the reading period of the temperature sensor in the current time period. For example, if the second derivative f2' is 2, the first derivative f1' is 5 or 4, and the second preset difference threshold is 1, when the first derivative is 5, the difference between the first derivative f1' and the second derivative f2' is 5-2=3, and the difference with the second preset difference threshold is 2. The temperature cycle Tcr = Tcr + n*Tmin is read in the next time period, where n can be 3. When the first derivative is 4, the difference between the first derivative f1' and the second derivative f2' is 4-2=2, and the difference with the second preset difference threshold is 1. The temperature cycle Tcr = Tcr + n*Tmin is read in the next time period, where n can be 2.
[0078] Preferably, if the second derivative is less than zero, the second derivative is less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the first derivative and the second derivative is greater than a third preset difference threshold, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change periods of multiple temperature sensors; and the adjusted reading period of the temperature sensor in the next time period is greater than the minimum reading change period of the temperature sensor; the larger the difference between the first derivative and the second derivative, and the larger the difference between the third preset difference threshold, the more significant the difference between the reading period of the temperature sensor in the current time period. The more minimum reading change cycles the temperature sensor has, the better. For example, if the second derivative f2' is -2, the first derivative f1' is -1 or 2, and the third preset difference threshold is 1, when the first derivative is -1, the difference between the first derivative f1' and the second derivative f2' is -1 - (-2) = 1, and the difference with the first preset difference threshold is 0. The next time period for reading temperature cycle Tcr = Tcr - n * Tmin, where n can be 2. When the first derivative is 2, the difference between the first derivative f1' and the second derivative f2' is 2 - (-2) = 4, and the difference with the third preset difference threshold is 3. The next time period for reading temperature cycle Tcr = Tcr + n * Tmin, where n can be 4.
[0079] If the second derivative is greater than zero, the second derivative is not less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the second derivative and the first derivative is greater than the fourth preset difference threshold, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change periods of multiple temperature sensors; and the adjusted reading period of the temperature sensor in the next time period is greater than the minimum reading change period of the temperature sensor; the larger the difference between the second derivative and the first derivative and the difference between the fourth preset difference threshold, the more minimum reading change periods of the temperature sensors are subtracted from the reading period of the temperature sensor in the current time period. For example, if the second derivative f2' is 3, the first derivative f1' is -1 or 2, and the fourth preset difference threshold is 1, when the first derivative is -1, the difference between the second derivative f2' and the first derivative f2' is 3 - (-1) = 4, and the difference with the fourth preset difference threshold is 3. The temperature period Tcr = Tcr - n * Tmin is read in the next time period, where n can be 4. When the first derivative is 2, the difference between the second derivative f2' and the first derivative f1' is 3 - 2 = 1, and the difference with the third preset difference threshold is 0. The temperature period Tcr = Tcr - n * Tmin is read in the next time period, where n can be 2.
[0080] BMC predefines a default reading period TDef (initial temperature reading period) for each temperature sensor. This value is equal to the minimum temperature update period Tmin (minimum temperature sensor reading change period), such as 0.02s. (The minimum temperature sensor reading change period is fixed. If it is too small, it may lead to inaccurate, abnormal, or wasted temperature sensor data. This value needs to be determined based on the sensor type. For example, if the sensor type is EMC1413, the EMC1413 sensor has an internal average temperature calculation period. Therefore, it is not recommended that the minimum interval for reading the EMC1413 sensor be less than this average temperature calculation period. Similarly, if BMC monitors the hard drive temperature cached inside the RAID card, the RAID card firmware will periodically read the temperature of the connected hard drive. This period is confirmed by the RAID card manufacturer. Therefore, it is not recommended that the BMC read the hard drive temperature through the RAID card at a period less than the RAID card's internal hard drive temperature reading period.)
[0081] like Figure 10As shown, when BMC first starts temperature monitoring, since it cannot confirm the current temperature change trend, it uses the default TDef (initial temperature reading period, i.e., Tcr) to read the first three temperatures, such as (Ti0, Te0), (Ti1, Te1), and (Ti2, Te2). The first derivative f1' (same as F1') and the second derivative f2' (same as F2') are calculated respectively to reflect the temperature change rate between Ti1-Ti0 and Ti1-Ti2.
[0082] If the second derivative f2' = 0, it means that the temperature has not changed in the current time period, and there is no need to adjust the temperature reading period. Continue to use the (Ti2-Ti1, i.e. Tcr) period for the next temperature reading.
[0083] If the second derivative f2' > 0, then the temperature is either rising or changing rapidly during the current time period. Then, compare this to the state indicated by the first derivative f1'. If the second derivative f2' >= the first derivative f1', then... Figure 4 , Figure 5 This indicates that the current temperature is still in a state of rapid warming. Figure 4 or an unstable temperature state ( Figure 5 When it is necessary to read the temperature promptly, if (Ti2-Ti1)>Tmin (Tcr>Tmin), then use the period (Ti2-Ti1-Tmin, i.e., Tcr=Tcr-Tmin) for the next temperature reading (next time period); otherwise (i.e., (Ti2-Ti1)<=Tmin, or Tcr<=Tmin), continue using the period (Ti2-Ti1, i.e., Tcr=Tcr) for the next temperature reading; if the second derivative f2'< the first derivative f1' (… Figure 6 This indicates that the temperature is slowly rising during the current time period. At this time, the temperature reading cycle can be slowed down. Therefore, the cycle of (Ti2-Ti1+Tmin, i.e., Tcr=Tcr+Tmin) is used for the next temperature reading.
[0084] If the second derivative f2' < 0, the temperature is either decreasing or changing rapidly during the current time period. Then, compare this to the first derivative f1'. If the second derivative f2' >= the first derivative f1', then... Figure 7 This indicates that the temperature is slowly decreasing, and frequent temperature readings are unnecessary. Therefore, a period of (Ti2-Ti1+Tmin, i.e., Tcr=Tcr+Tmin) is used for the next temperature reading; if f2' <f1’( Figure 8 , Figure 9 This indicates that the temperature is currently in a rapid downward trend. Figure 8 or temperature instability ( Figure 9If the temperature is to be read in a timely manner, and (Ti2-Ti1)>Tmin (Tcr>Tmin), then the next temperature reading should be performed using the cycle (Ti2-Ti1-Tmin, i.e., Tcr=Tcr-Tmin). Otherwise (i.e., (Ti2-Ti1)<=Tmin, or Tcr<=Tmin), the next temperature reading should be performed using the cycle (Ti2-Ti1, i.e., Tcr=Tcr).
[0085] In summary, the technical solution of this invention can dynamically adjust the temperature sensor reading cycle according to the current operating status of the server, which can effectively solve the problem of system resource waste caused by temperature update lag due to a temperature reading cycle that is too large or system resource waste caused by a reading cycle that is too small.
[0086] The technical solution of this invention obtains a first derivative and a second derivative of temperature relative to reading time. The first derivative is the derivative of temperature with respect to reading time in the previous time period, and the second derivative is the derivative of temperature with respect to reading time in the current time period. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the reading period of the temperature sensor in the next time period is determined. This effectively solves the problem that the reading period of the baseboard management controller in the server cannot be dynamically adjusted when reading temperature due to the prior art, and realizes the dynamic adjustment of the reading period, effectively improving the reliability of server temperature monitoring and control.
[0087] In this invention, the temperature sensor reading period for the next time period is flexibly adjusted based on the relationship between the second derivative and zero, the relationship between the second derivative and the first derivative, and the relationship between the current time period's temperature sensor reading period and the temperature sensor's minimum reading change period. This means the reading period is dynamically adjusted according to the rate of temperature change. When the temperature changes rapidly, the temperature sensor temperature can be monitored more in real time; when the temperature changes slowly, system resource contention caused by system calls can be effectively reduced. A suitable temperature monitoring period provides effective temperature data for heat dissipation, thereby ensuring system stability and reducing overall power consumption.
[0088] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the second derivative and the first derivative and the difference between the first preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period; the larger the difference between the first derivative and the second derivative and the difference between the second preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0089] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the first derivative and the second derivative and the third preset difference threshold, the more minimum reading change periods of the temperature sensors are subtracted from the reading period of the temperature sensor in the current time period; the larger the difference between the second derivative and the first derivative and the fourth preset difference threshold, the more minimum reading change periods of the temperature sensors are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0090] Example 2
[0091] like Figure 11 As shown, the present invention also provides a dynamic adjustment device for reading temperature cycles, comprising:
[0092] The acquisition module 101 acquires the first derivative and the second derivative of the temperature relative to the reading time. The first derivative is the derivative of the temperature relative to the reading time in the previous time period, and the second derivative is the derivative of the temperature relative to the reading time in the current time period.
[0093] The determination module 102 determines the temperature reading period of the temperature sensor in the next time period based on the relationship between the first derivative and the second derivative, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period.
[0094] It should be noted that the execution process of each functional module of the acquisition module 101 and the determination module 102 in this embodiment corresponds to the method steps in embodiment one, and will not be repeated here.
[0095] The technical solution of this invention obtains a first derivative and a second derivative of temperature relative to reading time. The first derivative is the derivative of temperature with respect to reading time in the previous time period, and the second derivative is the derivative of temperature with respect to reading time in the current time period. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the reading period of the temperature sensor in the next time period is determined. This effectively solves the problem that the reading period of the baseboard management controller in the server cannot be dynamically adjusted when reading temperature due to the prior art, and realizes the dynamic adjustment of the reading period, effectively improving the reliability of server temperature monitoring and control.
[0096] In this invention, the temperature sensor reading period for the next time period is flexibly adjusted based on the relationship between the second derivative and zero, the relationship between the second derivative and the first derivative, and the relationship between the current time period's temperature sensor reading period and the temperature sensor's minimum reading change period. This means the reading period is dynamically adjusted according to the rate of temperature change. When the temperature changes rapidly, the temperature sensor temperature can be monitored more in real time; when the temperature changes slowly, system resource contention caused by system calls can be effectively reduced. A suitable temperature monitoring period provides effective temperature data for heat dissipation, thereby ensuring system stability and reducing overall power consumption.
[0097] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the second derivative and the first derivative and the difference between the first preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period; the larger the difference between the first derivative and the second derivative and the difference between the second preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0098] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the first derivative and the second derivative and the third preset difference threshold, the more minimum reading change periods of the temperature sensors are subtracted from the reading period of the temperature sensor in the current time period; the larger the difference between the second derivative and the first derivative and the fourth preset difference threshold, the more minimum reading change periods of the temperature sensors are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0099] Example 3
[0100] The present invention also provides a substrate management controller, which is used to run the steps of a dynamic adjustment method for reading temperature cycles in Embodiment 1.
[0101] The technical solution of this invention obtains a first derivative and a second derivative of temperature relative to reading time. The first derivative is the derivative of temperature with respect to reading time in the previous time period, and the second derivative is the derivative of temperature with respect to reading time in the current time period. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the reading period of the temperature sensor in the next time period is determined. This effectively solves the problem that the reading period of the baseboard management controller in the server cannot be dynamically adjusted when reading temperature due to the prior art, and realizes the dynamic adjustment of the reading period, effectively improving the reliability of server temperature monitoring and control.
[0102] In this invention, the temperature sensor reading period for the next time period is flexibly adjusted based on the relationship between the second derivative and zero, the relationship between the second derivative and the first derivative, and the relationship between the current time period's temperature sensor reading period and the temperature sensor's minimum reading change period. This means the reading period is dynamically adjusted according to the rate of temperature change. When the temperature changes rapidly, the temperature sensor temperature can be monitored more in real time; when the temperature changes slowly, system resource contention caused by system calls can be effectively reduced. A suitable temperature monitoring period provides effective temperature data for heat dissipation, thereby ensuring system stability and reducing overall power consumption.
[0103] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the second derivative and the first derivative and the difference between the first preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period; the larger the difference between the first derivative and the second derivative and the difference between the second preset difference threshold, the more minimum reading change periods of the temperature sensor are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0104] In the technical solution of this invention, when the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors, the larger the difference between the first derivative and the second derivative and the third preset difference threshold, the more minimum reading change periods of the temperature sensors are subtracted from the reading period of the temperature sensor in the current time period; the larger the difference between the second derivative and the first derivative and the fourth preset difference threshold, the more minimum reading change periods of the temperature sensors are added to the reading period of the temperature sensor in the current time period, further improving the correlation between the temperature sensor's temperature change rate and the dynamic adjustment of the reading period, ensuring system stability and reducing the overall power consumption.
[0105] While the specific embodiments of the present invention have been described above in conjunction with the accompanying drawings, this is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art without creative effort based on the technical solutions of the present invention are still within the scope of protection of the present invention.
Claims
1. A dynamic adjustment method for reading temperature cycles, characterized in that, Running in the baseboard management controller, including: Obtain the first derivative and the second derivative of temperature relative to reading time. The first derivative is the derivative of temperature relative to reading time in the previous time period, and the second derivative is the derivative of temperature relative to reading time in the current time period. Based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, the period for reading the temperature sensor temperature in the next time period is determined as follows: Determine if the second derivative is equal to zero. If the second derivative is equal to zero, then the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period. If the second derivative is less than zero, compare the second derivative with the first derivative. If the second derivative is not less than the first derivative, the temperature sensor reading period for the next time period is the sum of the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the second derivative is less than the first derivative, determine whether the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the difference between the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is not greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period. If the second derivative is greater than zero, compare its magnitude with the first derivative. If the second derivative is less than the first derivative, the temperature sensor reading period for the next time period is the sum of the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the second derivative is not less than the first derivative, determine whether the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the difference between the temperature sensor reading period for the current time period and the minimum reading change period of the temperature sensor. If the temperature sensor reading period for the current time period is not greater than the minimum reading change period of the temperature sensor, the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period.
2. The method of claim 1, wherein the dynamic adjustment of the read temperature period is based on a number of read attempts. The first derivative is calculated as follows: f1 = wherein f1 is the first derivative, Te1 is the temperature of the temperature sensor read at the end of the previous time period, Te0 is the temperature of the temperature sensor read at the beginning of the previous time period, Ti1 is the end time of the temperature of the temperature sensor read in the previous time period, Ti0 is the beginning time of the temperature of the temperature sensor read in the previous time period.
3. The method for dynamically adjusting the temperature reading cycle according to claim 1, characterized in that, The second derivative is calculated as follows: f2 = , where f2 Te2 is the temperature of the temperature sensor read at the end of the current time period, Te1 is the temperature of the temperature sensor read at the beginning of the current time period or the end of the previous time period, Ti2 is the end of the temperature sensor read in the current time period, and Ti1 is the beginning of the temperature sensor read in the current time period or the end of the temperature sensor read in the previous time period.
4. The method for dynamically adjusting the temperature reading cycle according to claim 1, characterized in that, If the second derivative is less than zero, the second derivative is not less than the first derivative, and the difference between the second derivative and the first derivative is greater than the first preset difference threshold, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors. If the second derivative is greater than zero, the second derivative is less than the first derivative, and the difference between the first derivative and the second derivative is greater than the second preset difference threshold, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors.
5. The method for dynamically adjusting the temperature reading cycle according to claim 4, characterized in that, The greater the difference between the second derivative and the first derivative, and the greater the difference between the first preset difference threshold, the more minimum reading change cycles of the temperature sensor are added to the reading cycle of the temperature sensor in the current time period; the greater the difference between the first derivative and the second derivative, and the greater the difference between the second preset difference threshold, the more minimum reading change cycles of the temperature sensor are added to the reading cycle of the temperature sensor in the current time period.
6. The method for dynamically adjusting the temperature reading cycle according to claim 1, characterized in that, If the second derivative is less than zero, the second derivative is less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the first derivative and the second derivative is greater than the third preset difference threshold, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors. Furthermore, the reading period of the temperature sensor in the next time period after adjustment is greater than the minimum reading change period of the temperature sensor. If the second derivative is greater than zero, the second derivative is not less than the first derivative, the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, and the difference between the second derivative and the first derivative is greater than the fourth preset difference threshold, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of multiple temperature sensors. Furthermore, the reading period of the temperature sensor in the next time period after adjustment is greater than the minimum reading change period of the temperature sensor.
7. The method for dynamically adjusting the temperature reading cycle according to claim 6, characterized in that, The greater the difference between the first derivative and the second derivative, and the greater the difference between the third preset difference threshold, the more minimum reading change cycles of the temperature sensor are subtracted from the reading cycle of the temperature sensor in the current time period. The larger the difference between the second derivative and the first derivative, and the larger the difference between the fourth preset difference threshold, the more minimum reading change cycles of the temperature sensor are subtracted from the reading cycle of the temperature sensor in the current time period.
8. A dynamic adjustment device for reading temperature cycles, characterized in that, include: The acquisition module acquires the first derivative and the second derivative of the temperature relative to the reading time. The first derivative is the derivative of the temperature with respect to the reading time in the previous time period, and the second derivative is the derivative of the temperature with respect to the reading time in the current time period. The determination module, based on the relationship between the first and second derivatives, the minimum reading change period of the temperature sensor, and the reading period of the temperature sensor in the current time period, determines the period for reading the temperature sensor temperature in the next time period. Specifically: Determine if the second derivative is equal to zero. If the second derivative is equal to zero, then the temperature sensor reading period for the next time period is the same as the temperature sensor reading period for the current time period. If the second derivative is less than zero, compare the second derivative with the first derivative. If the second derivative is not less than the first derivative, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor. If the second derivative is less than the first derivative, determine whether the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor. If the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor. If the reading period of the temperature sensor in the current time period is not greater than the minimum reading change period of the temperature sensor, then the reading period of the temperature sensor in the next time period will be the same as the reading period of the temperature sensor in the current time period. If the second derivative is greater than zero, compare the second derivative with the first derivative. If the second derivative is less than the first derivative, then the reading period of the temperature sensor in the next time period is the sum of the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor. If the second derivative is not less than the first derivative, determine whether the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor. If the reading period of the temperature sensor in the current time period is greater than the minimum reading change period of the temperature sensor, then the reading period of the temperature sensor in the next time period is the difference between the reading period of the temperature sensor in the current time period and the minimum reading change period of the temperature sensor. If the reading period of the temperature sensor in the current time period is not greater than the minimum reading change period of the temperature sensor, then the reading period of the temperature sensor in the next time period will be the same as the reading period of the temperature sensor in the current time period.
9. A baseboard management controller, characterized in that, The substrate management controller is used to perform the steps of a dynamic adjustment method for reading temperature cycles as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Temperature control method, device and equipment and storage medium
CN110928341A
Fan regulation and control method and device, equipment and medium
CN111309123A