A method and device for adjusting the speed of a server fan based on a BMC
By installing noise sensors on the BMC and combining them with CPU/GPU usage to build a dual control system, the contradiction between excessive noise and heat dissipation efficiency in existing server fan speed regulation strategies is resolved. This enables intelligent regulation and adapts to different hardware configurations, improving server operational stability and energy efficiency.
Patent Information
- Application Number
- CN202511069754.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-31
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2045-07-31
AI Technical Summary
The existing server fan speed control strategy relies on ambient temperature sensors, which causes the fan to misjudge high-frequency operation under low load, resulting in excessive noise. It cannot adapt to the needs of noise-sensitive scenarios and lacks intelligent analysis of the noise-temperature coupling relationship, resulting in a long-term contradiction between heat dissipation efficiency and noise control.
By installing noise sensors on the BMC and integrating them with CPU and GPU usage, we establish a dual control system: initial noise screening and feedback-based fine-tuning, enabling differentiated speed regulation. For servers equipped with noise sensors, noise values are directly collected. For servers without noise sensors, noise values are calculated based on fan speed. The fan speed is dynamically adjusted based on the noise range and feedback, achieving intelligent control.
It achieves full-scenario coverage under different hardware configurations, avoids policy failure due to hardware missing, significantly improves universality and practicality, dynamically optimizes speed regulation strategies, balances heat dissipation efficiency and user experience, reduces noise, and improves server operation stability and energy efficiency.
Smart Images

Figure CN120578281B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of servers, and in particular to a server fan speed regulation method and device based on a BMC. BACKGROUND
[0002] With the deep penetration of information technology in the fields of cloud computing, big data, artificial intelligence, etc., the scale of data centers and server clusters is expanding exponentially. In the process of high-frequency operation of servers, high-power components such as CPUs and GPUs continuously generate a large amount of heat, and if the heat is not dissipated in time, the hardware will be damaged by overheating, and even the system will be shut down. Therefore, dynamically adjusting the heat dissipation intensity through a fan speed regulation mechanism has become a core requirement for ensuring the service life and stable operation of server hardware.
[0003] The current mainstream fan speed regulation strategy highly depends on the feedback data of the environmental temperature sensor: when the temperature sensor detects that the temperature in the case exceeds the threshold, the BMC (Baseboard Management Controller) will drive the fan to increase the speed to enhance heat dissipation. However, this single temperature-based regulation mode has significant technical defects: first, the temperature change is not completely linearly related to the actual load of the hardware, and in low-load working conditions, the fan may be misjudged due to local temperature fluctuations and run at a high frequency. The actual measurement shows that the peak value of fan noise under the traditional scheme is still high under medium load; second, the real-time feedback of noise data is ignored, which cannot meet the needs of noise-sensitive scenarios such as medical image centers and financial transaction rooms. The actual measurement of a financial data center shows that the traditional speed regulation scheme still operates at a high noise level during the night and low-load period, far exceeding the specified environmental noise standard. In addition, the existing scheme uses a rough regulation logic with pre-set temperature intervals, lacks intelligent analysis of the noise-temperature coupling relationship, and results in a long-term contradiction between heat dissipation efficiency and noise control.
[0004] Therefore, there is an urgent need for a method to intelligently regulate the speed of the server fan to achieve dual optimization of heat dissipation efficiency and low noise. SUMMARY
[0005] Therefore, the present application provides a server fan speed regulation method and device based on a BMC to intelligently regulate the speed of the server fan to achieve dual optimization of heat dissipation efficiency and low noise.
[0006] Specifically, the present application is implemented through the following technical solutions:
[0007] The first aspect of the present application provides a server fan speed regulation method based on a BMC, which comprises:
[0008] determine a server type based on whether a noise sensor is equipped on the server; the server type includes a first server and a second server, the first server is not equipped with a noise sensor, and the second server is equipped with a noise sensor, and the noise sensor is installed on a BMC of the server;
[0009] determine a real-time noise value based on a noise determination method matched according to the server type; the real-time noise value includes noise values of all fans on the server;
[0010] compare the real-time noise value with a noise threshold value to determine a corresponding noise interval;
[0011] obtain a CPU usage rate and a GPU usage rate of the server;
[0012] calculate a feedback value based on the CPU usage rate and the GPU usage rate;
[0013] determine a corresponding speed regulation method based on a matching relationship between the feedback value and a plurality of feedback intervals in the noise interval, and regulate the speed of the fans on the server based on the speed regulation method; wherein in a first noise interval, adjust a temperature PID set value of a target sensor based on a feedback interval in which the feedback value is located, and adjust the fan speed based on the adjusted temperature PID set value; and in a second noise interval, adjust a noise value based on a feedback interval in which the feedback value is located, and adjust the fan speed based on the adjusted noise value.
[0014] The second aspect of the present application provides a BMC-based server fan speed regulation device, which comprises a determination module, an acquisition module, a calculation module, and a speed regulation module;
[0015] The determination module is configured to determine a server type based on whether a noise sensor is equipped on the server; the server type includes a first server and a second server, the first server is not equipped with a noise sensor, and the second server is equipped with a noise sensor, and the noise sensor is installed on a BMC of the server;
[0016] The determination module is further configured to determine a real-time noise value based on a noise determination method matched according to the server type; the real-time noise value includes noise values of all fans on the server;
[0017] The determination module is further configured to compare the real-time noise value with a noise threshold value to determine a corresponding noise interval;
[0018] The acquisition module is configured to obtain a CPU usage rate and a GPU usage rate of the server;
[0019] The calculation module is used to calculate a feedback value based on the CPU usage rate and the GPU usage rate;
[0020] The speed regulation module is used to determine a corresponding speed regulation method based on a matching relationship between the feedback value and multiple feedback intervals in the noise interval, and regulate the speed of the fan on the server based on the speed regulation method; wherein, in a first noise interval, the temperature PID set value of the target sensor is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted temperature PID set value; in a second noise interval, the noise value is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted noise value.
[0021] This application provides a BMC-based server fan speed control method and device. First, in the context of diverse server hardware configurations, this application achieves full coverage through a "hardware perception-policy adaptation" approach. Specifically, servers are first classified based on whether they are equipped with noise sensors. For servers equipped with sensors, the real-time noise values of all fans are directly collected using sensors on the BMC, ensuring that the speed control policy is based on actual noise data. For servers without sensors, the noise collection process is bypassed and the noise value is calculated based on fan speed, indirectly assessing server load and cooling requirements. This differentiated processing method avoids policy failures caused by missing hardware and enables servers with different configurations to achieve intelligent fan speed adjustment through a logical closed loop of "load-feedback value-speed control." For example, low-cost servers for small businesses may not be equipped with noise sensors, but can still dynamically adjust speeds based on CPU and GPU load. High-end servers in data centers can use sensor data to achieve a more precise balance between cooling and noise, significantly improving universality and practicality. Secondly, this application achieves dynamic optimization of the speed regulation strategy by constructing a dual control system: "initial noise screening - feedback fine-tuning." The first screening process focuses on real-time noise values, comparing them with preset thresholds and categorizing them into different noise ranges. This allows for rapid identification of current noise levels, providing a foundation for speed regulation. For example, in low-noise ranges, energy conservation is prioritized by reducing fan speed; in high-noise ranges, heat dissipation is prioritized. The second screening process focuses on feedback values, matching them with the feedback ranges to further refine the server's load scenarios (e.g., light load vs. heavy load). The speed regulation strategy is then dynamically adjusted based on the characteristics of different noise ranges. In the first noise range, the speed is indirectly controlled by adjusting the temperature PID setpoint to ensure heat dissipation safety in high-temperature scenarios. In the second noise range, speed is directly adjusted based on the noise value, taking into account quietness requirements under low loads. This hierarchical and progressive screening logic, like "first coarsely screening environmental conditions, then fine-tuning control parameters," avoids regulation errors caused by relying solely on a single metric (e.g., noise or load) while achieving a balance between heat dissipation efficiency and user experience. For example, when the server is in a high-load and high-noise range, the system will prioritize increasing the speed to ensure hardware safety; in a low-load and low-noise range, it will automatically reduce the speed to reduce energy consumption, ultimately achieving an efficient and intelligent speed regulation effect. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] Figure 1 Flowchart of the server fan speed adjustment method based on BMC provided in Example 1 of the present application;
[0023] Figure 2 This is a structural diagram of the BMC-based server fan speed regulation device provided in Example 2 of the present application. DETAILED DESCRIPTION
[0024] Exemplary embodiments are described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different drawings represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with this application.
[0025] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The singular forms "a," "the," and "the" used in this application are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.
[0026] It should be understood that although the terms first, second, third, etc. may be used in this application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this application, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0027] Specific embodiments are given below to introduce the technical solutions of the present application in detail.
[0028] Figure 1 This is a flow chart of the server fan speed adjustment method based on BMC provided in Example 1 of this application. Figure 1 The method provided in this embodiment may include:
[0029] S101: Determine the server type based on whether the server is equipped with a noise sensor.
[0030] The server types include a first server and a second server, the first server is not equipped with a noise sensor, the second server is equipped with a noise sensor, and the noise sensor is installed on a BMC of the server.
[0031] Specifically, server types are divided according to whether the server is equipped with a noise sensor. Servers are divided into two categories based on whether the noise sensor is integrated in the server hardware configuration as the core distinguishing criterion. Among them, the first server is a server that is not equipped with a noise sensor, that is, there is no sensor component for real-time monitoring of noise levels deployed inside the chassis, and it is impossible to directly obtain noise data during server operation. The first server is suitable for scenarios with low noise control requirements (such as data centers in non-office areas), or early server models that did not integrate noise monitoring functions. The second server is a server equipped with a noise sensor, and the noise sensor is installed on the BMC. The noise sensor is directly installed on the BMC (baseboard management controller), so that the noise sensor and the BMC form a hardware linkage to collect and transmit noise data in real time.
[0032] In specific implementations, the server hardware configuration is scanned through the BMC, or the server motherboard's hardware information list is directly read to confirm whether the server has a noise sensor component. If a noise sensor is detected, the system further queries the sensor's physical installation location parameters to confirm whether it is installed on the BMC. If a noise sensor is detected and installed on the BMC, the server is identified as the second server. If no noise sensor is detected, the server is identified as the first server.
[0033] Optionally, foam is provided on the noise sensor, and the foam compensates for the degree of noise attenuation at different distances by adjusting the thickness; the foam thickness is nonlinearly correlated with the distance from the noise sensor to the fan wall, and the foam thickness changes in a negative correlation with the distance.
[0034] Specifically, a foam pad is placed on the noise sensor, and its thickness is adjusted to compensate for noise attenuation at different distances. Because noise intensity is related to the detection location, the degree of noise attenuation during propagation varies when the distance from the noise sensor to the fan wall changes. Therefore, the noise data needs to be corrected by adjusting the foam pad thickness. The foam pad thickness and the distance from the noise sensor to the fan wall are nonlinearly related, and the two are negatively correlated. Specifically, as the distance increases, the foam pad thickness decreases accordingly; as the distance decreases, the foam pad thickness increases accordingly. This nonlinear relationship can be expressed as:
[0035] T(d')=15-14[(d-1) / 999]²;
[0036] Wherein, T(d') is the thickness of the foam; d is the distance from the noise sensor to the fan wall.
[0037] The method provided in this embodiment can accurately match the noise attenuation characteristics at different distances by adjusting the foam thickness, thereby correcting the data detected by the noise sensor to make it closer to the actual noise level.
[0038] S102, determine a real-time noise value based on the noise determination method corresponding to the server type.
[0039] The real-time noise value includes the noise values of all fans on the server.
[0040] Specifically, the server type is different, and the corresponding noise determination method is also different. When the server type is a first server, the real-time noise value is determined based on the fan speed. When the server type is a second server, the real-time noise value is determined based on the data collected by the noise sensor. The real-time noise value refers to the integrated noise level of the noise generated by all fans in the case during server operation, and the unit is decibel.
[0041] In a specific implementation, when the server type is a second server, the noise in the case is detected in real time by the noise sensor installed on the BMC, and the noise attenuation at different distances is corrected by the foam. The corrected noise data is transmitted to the BMC control module to obtain the real-time noise value.
[0042] Optionally, when the server type is a first server, the real-time noise value is determined based on the noise determination method, comprising:
[0043] (1) For each fan on the server, based on the current speed of the fan, the maximum speed of the fan, and the maximum noise value of the fan at the maximum speed, the current noise value of the fan is calculated.
[0044] Specifically, the current speed of the fan refers to the rotating speed of the fan in the real-time running state. The current speed of the fan is a real-time dynamic parameter, which needs to be acquired in real time by a sensor (such as a fan speed sensor) or BMC. The maximum speed of the fan refers to the maximum rotating speed (i.e. the rated maximum speed) that the fan can reach under the design specification. The maximum speed of the fan is a preset static parameter, which is set by the fan hardware manufacturer at the time of factory shipment, and is a fixed value. The maximum noise value of the fan at the maximum speed refers to the noise intensity generated when the fan runs at the maximum speed. The maximum noise value of the fan at the maximum speed is a preset static parameter, which is determined by the fan manufacturer through testing, and is written into the hardware document together with the maximum speed as the fan specification parameter, and is stored in the server as a fixed value.
[0045] In a specific implementation, based on the current speed of the fan, the maximum speed of the fan, and the maximum noise value of the fan at the maximum speed, the current noise value of the fan is calculated, comprising: calculating the quotient value between the current speed of the fan and the maximum speed; performing logarithmic operation on the quotient value to obtain a logarithmic value; and determining the sum of the maximum noise value of the fan at the maximum speed and the logarithmic value as the current noise value of the fan.
[0046] Specifically, the fan's current speed is obtained by reading the feedback data from the fan speed sensor in real time through the server's BMC. The fan's specification parameters are retrieved from the server's hardware configuration database, and the fan's maximum speed and the fan's maximum noise value at the maximum speed are determined by searching the fan's specification parameters. Furthermore, the fan's current speed is divided by the fan's maximum speed to obtain the quotient of the two. A logarithmic operation is performed on the calculated quotient to obtain the corresponding logarithmic value; the fan's maximum noise value at the maximum speed is added to the above logarithmic value, and the sum of the two is ultimately determined as the fan's current noise value.
[0047] The calculation formula for the current fan noise value can be expressed as:
[0048] Lpt1= Lptmax + 50*(log(RPMcurrent / RPMmax));
[0049] Wherein, Lpt1 is the current noise value of the fan; Lptmax is the maximum speed of the fan; RPMcurrent is the current speed of the fan; and RPMmax is the maximum noise value of the fan at the highest speed.
[0050] It should be noted that since fan noise is primarily generated by aerodynamic effects and mechanical friction, its intensity is positively correlated with the power of the speed. Calculating the quotient essentially converts the actual speed to a ratio relative to rated operating conditions, eliminating variations across fan specifications and establishing a unified noise assessment benchmark. In acoustics, sound intensity (decibels) is defined using a logarithmic scale (due to the nonlinearity of human auditory perception of sound). The power-order relationship between fan noise and speed can be converted to a linear relationship through logarithmic operations. This maps the nonlinear noise characteristics of speed to a linear decibel scale, making noise calculations consistent with physical laws. For example, if noise is proportional to the cube of speed, after logarithmic operations, the noise increment will be linearly related to the logarithm of speed, facilitating subsequent quantification. The maximum noise value at the fan's highest speed is used as the baseline, representing the fan's noise baseline under full load. Logarithmic mapping converts the speed ratio into a decibel-scaled noise change (positive values indicate an increase above the baseline, negative values indicate a decrease). The sum of the two is essentially the linear superposition of the baseline noise and the speed-varying noise, consistent with the physical property of "noise dynamically adjusting with speed." For example, when the speed is reduced to 50% of the rated value, the logarithmic value is negative, and the current noise will be lower than the maximum noise value, which is consistent with the phenomenon that low-speed fans have lower noise during actual operation.
[0051] The method provided by the embodiment can convert the absolute rotation speed of different fans into a unified relative proportion by dividing the current rotation speed by the maximum rotation speed, eliminate the calculation obstacles caused by the specification differences of the fans, and enable fans of different models to be evaluated for noise using the same logic. The log operation on the quotient value takes into account the nonlinear log characteristics of the human ear in perceiving sound, which enables the calculated noise value to be more consistent with the actual auditory perception of humans, and converts the complex nonlinear relationship between the rotation speed and the noise into a more easily processed linear relationship, thereby simplifying the complexity of the calculation model. The measured maximum noise value at the maximum rotation speed is taken as a reference, and the offset obtained through the log operation is used to determine the current noise value, which not only ensures the accuracy of the calculation by relying on the measured data, but also enables the noise result to be dynamically adjusted according to the current rotation speed, and the entire process does not require additional sensors, but can be completed through simple division, log and addition operations using only basic parameters, thereby having the advantages of low implementation cost and strong adaptability in engineering. This setting not only conforms to the physical laws of noise generation, but also takes into account the practicality and efficiency in engineering applications, and through the combination of mathematical transformation and measured data, the universal, real-time and low-cost calculation of the fan noise is realized while ensuring the accuracy of the acoustic principle.
[0052] (2) Based on the current noise value of the fan and the number of fans on the server, a real-time noise value is calculated through log addition and inverse transformation.
[0053] In a specific implementation, the calculation of the real-time noise value based on the current noise value of the fan and the number of fans on the server through log addition and inverse transformation includes: converting the current noise value of each fan into a log form, calculating the sum of the noise values of all fans based on the log addition formula and the number of fans on the server; and performing inverse transformation on the sum of the noise values to obtain a real-time noise value.
[0054] Specifically, the current noise value of each fan is converted from a decibel unit to a corresponding linear energy value, and based on acoustic principles, the decibel value on a log scale is restored to an acoustic power or acoustic pressure energy on a linear scale. Further, the energy values corresponding to all fans are added to obtain a total energy value of the noise of all fans in the server. All fans on the server are traversed, and the energy values of each fan are sequentially added. The total energy value is converted back to a decibel unit through a log operation again, and the total energy added linearly is mapped to a decibel value on a log scale again to obtain a final real-time noise value.
[0055] The calculation formula of the real-time noise value can be represented as:
[0056] Lpt_total=10log(10^(Lpt1 / 10)+10^(Lpt2 / 10)+...+10^(LptS / 10));
[0057] Wherein, the Lpt is a real-time noise value; the LptS / 10 is a current noise value of each fan; and the S is the number of fans on the server.
[0058] The method provided by the embodiment matches the noise determination method according to the server type, and balances the cost, accuracy and applicability through a differentiated technical path: for the first type of server, a hardware noise sensor is used to directly collect a sound pressure signal and convert it into an electrical signal to output a noise value, so that high-precision real-time monitoring can be realized by directly capturing physical quantities, calculation model errors can be avoided, and complex modeling is not required, which is suitable for scenes with strict noise control or complex fan types and variable environments; for the second type of server, a noise value is derived based on fan speed and other parameters through a logarithmic operation and an energy superposition model, which can save sensor costs, is suitable for mid-end or large-scale production servers, does not need to rely on specific sensors and is convenient for parameter updating when the fan model is changed, and can also avoid the influence of sensor physical failure and electromagnetic interference; in addition, this method can also realize the matching of scene requirements, such as using sensors to ensure the standard for key business servers, using calculation to control the cost for general servers, and cross-verification of data of both for part of high-end servers to improve reliability, so as to build a dynamic balance between noise monitoring accuracy, cost control and engineering adaptability, to meet different scene core requirements and optimize the whole life cycle resources.
[0059] S103, comparing the real-time noise value with a noise threshold value to determine a corresponding noise interval.
[0060] Specifically, the noise threshold value is a decibel value standard pre-set by a customer or a server internal designer, which is used to measure whether the noise of the server during operation is in an acceptable range, and is irrelevant to the installation distance of the noise sensor, and is based on the noise control requirements of the application scene (such as the medical scene requiring a quiet environment, and the noise threshold value may be set to 45 decibels, while the ordinary data center may be set to 60 decibels). The determination of the noise threshold value needs to comprehensively consider the noise sensitivity of the use scene (such as the strict limitation of noise in the financial transaction room), the industry standard (such as the data center noise standard), and the user's requirement for the equipment operation comfort, which is a human-defined control reference parameter.
[0061] Further, the noise interval is a level area divided by the range of the real-time noise value based on the noise threshold, for example, it can be divided into "low noise interval" (noise value is lower than noise threshold by more than 10 decibels), "medium noise interval" (noise value is close to noise threshold), "high noise interval" (noise value exceeds noise threshold), etc. Different noise intervals correspond to different fan speed regulation strategies: in the low noise interval, the BMC can reduce the fan speed to save energy; in the medium noise interval, the current speed is maintained or slightly adjusted; in the high noise interval, the fan speed is preferentially increased to ensure heat dissipation, while the noise control demand is dynamically balanced in combination with the temperature data. For example, in an embodiment, the noise threshold is A, and the multiple noise intervals are that the real-time noise value is less than A-6, and the real-time noise value is between A-6 and A.
[0062] In specific implementation, the noise threshold set by the user or the designer is determined. Based on the noise threshold, the noise range is divided into multiple intervals (such as low noise interval: real-time noise value < noise threshold - X; medium noise interval: noise threshold - X ≤ real-time noise value ≤ noise threshold + Y; high noise interval: real-time noise value > noise threshold + Y), wherein X and Y are interval width parameters, which are defined by the user. Further, the real-time noise value is compared with the boundaries of each interval to determine the noise interval to which it belongs (for example, the real-time noise value is 50 decibels, the noise threshold is 60 decibels, X = 10, and Y = 5, and it belongs to the medium noise interval).
[0063] S104, acquire the CPU usage and GPU usage of the server.
[0064] Specifically, the CPU usage refers to the time proportion of the central processing unit in executing a computing task in a unit of time, which reflects the busy degree of the CPU. The GPU usage refers to the time proportion of the graphics processing unit in processing a graphics or general computing task in a unit of time, which reflects the load state of the GPU.
[0065] It should be noted that, since the CPU and the GPU are the most computationally intensive and heat-generating components in the server, their usage is directly related to the heat dissipation demand. For example, when the CPU / GPU is running at high load, the heat generated is surging, and the fan speed needs to be increased to maintain temperature safety. The usage data can reflect the current workload of the server in real time, and compared with the hysteresis of the temperature sensor (which needs time to rise in temperature), the usage can predict the heat dissipation demand in advance, realizing the forward-looking adjustment of the fan speed. By dynamically adjusting the fan speed based on the usage, frequent start-stop or excessive heat dissipation caused by the traditional "temperature trigger" strategy can be avoided, while ensuring the safety of the hardware and reducing energy consumption and noise (such as maintaining low speed at low load).
[0066] In practice, the BMC can directly read the CPU's hardware monitoring registers to obtain CPU usage. For GPUs, the BMC can communicate with the GPU's management bus (such as I2C / SMBus) to read GPU usage.
[0067] S105: Calculate a feedback value based on the CPU usage rate and the GPU usage rate.
[0068] Specifically, the feedback value is a comprehensive indicator calculated using a specific algorithm based on CPU and GPU utilization, used to quantify the server's current computing load. The feedback value serves as the core input to the speed regulation strategy, directly determining the direction and magnitude of fan speed adjustments.
[0069] In a specific implementation, the feedback value is calculated based on the CPU usage rate and the GPU usage rate, including: calculating the square root of the product of the CPU usage rate and the GPU usage rate; and determining the sum of the square root of the product and the CPU usage rate and the GPU usage rate as the feedback value.
[0070] Specifically, the CPU usage and GPU usage are multiplied to obtain the product. The square root of this product is then taken to obtain a new value. The original CPU usage and GPU usage are added together, and the square root of the sum is added to the sum. Finally, the feedback value is normalized (e.g., converted to a percentage or a value between 0 and 1).
[0071] The calculation formula of the feedback value can be expressed as:
[0072] +X+Y;
[0073] Among them, the is the feedback value; X is the CPU usage; and Y is the GPU usage.
[0074] The method provided in this embodiment combines the square root of the product of CPU and GPU utilization rates with their sum. Essentially, this approach captures the effects of hardware collaborative load while preserving the overall load base. The square root can discern the combined heating effect of high CPU and GPU loads (e.g., when both are fully loaded, the square root approaches 1, amplifying cooling requirements). It also suppresses excessive amplification of the feedback value caused by high load on a single hardware component (e.g., when only a single component is highly loaded, the square root is less than that component's load, preventing a sudden increase in fan speed). The sum calculation ensures a linear positive correlation between the feedback value and the total hardware load, preventing the product calculation from losing information about the load of a single component (e.g., when a single component is highly loaded, the sum still reflects the basic cooling requirements). This combination of factors allows the feedback value to trigger a strong cooling response to high collaborative loads on both hardware and maintain smooth speed regulation under high loads on a single hardware. Ultimately, this achieves a dynamic balance between hardware cooling safety and fan noise control—prioritizing cooling during high collaborative loads, avoiding noise waste during high single loads, and reducing energy consumption during low loads.
[0075] S106 . In the noise range, determine a corresponding speed regulation method based on a matching relationship between the feedback value and multiple feedback ranges, and regulate the speed of the fan on the server based on the speed regulation method.
[0076] Among them, in the first noise interval, the temperature PID set value of the target sensor is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted temperature PID set value; in the second noise interval, the noise value is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted noise value.
[0077] Specifically, the feedback interval is a pre-defined number of feedback value intervals used to categorize the feedback values calculated in real time. For example, in one embodiment, the feedback intervals are set as feedback value greater than or equal to 1.5, feedback value between 1 and 1.5, feedback value between 0.5 and 1, and feedback value less than 0.5.
[0078] Further, in combination with the above description, when the noise interval is different, the corresponding speed regulation method is also different. When the noise interval is the first noise interval, the fan speed is indirectly adjusted by adjusting the PID control target value of the temperature sensor. The PID control calculates the adjustment amount of the fan speed according to the deviation of the current temperature and the target temperature. The higher the target temperature (set value), the greater the space allowed for the hardware temperature to rise, and the lower the fan speed can be. Conversely, the lower the target temperature, the higher the fan speed required to force heat dissipation. When the feedback value falls within a certain feedback interval, the temperature PID set value is dynamically lowered or raised. For example: if the feedback value is high (such as double hardware high load), it indicates that the heat dissipation demand is strong, and the temperature set value is lowered (such as from 70°C to 65°C), so that the PID control drives the fan to rotate faster due to the increased deviation; if the feedback value is low, the temperature set value is raised (such as from 70°C to 75°C), allowing the hardware temperature to rise moderately and reducing the fan speed to reduce noise. The essence of the speed regulation method in the first noise interval is to indirectly adjust the fan speed by changing the "temperature control target", and the core is to dynamically adjust the heat dissipation priority based on the hardware load (feedback value), to prioritize the accuracy of temperature control.
[0079] When the noise interval is the second noise interval, the noise level is directly taken as the control target, the allowed noise threshold is adjusted through feedback interval matching, and then the fan speed is controlled. Since the fan speed is positively correlated with the noise (the higher the speed, the greater the noise), when the feedback value falls within a certain feedback interval, the noise allowed value (noise threshold) is dynamically adjusted. For example: if the feedback value is high, it indicates that the hardware load is high, and the noise threshold is allowed to be raised (such as from 60dB to 65dB), and the fan can run at a higher speed to enhance heat dissipation; if the feedback value is low, the noise threshold is lowered (such as from 60dB to 55dB), forcing the fan to reduce speed to meet the low noise scene demand (such as office environment). The essence of the speed regulation method in the second noise interval is to convert the feedback value into a noise constraint condition, directly taking the user experience (noise) as the priority, balancing between hardware load and noise, and suitable for noise-sensitive scenarios (such as desktop servers, data center quiet areas).
[0080] Optionally, the method for determining the feedback interval comprises: traversing all components on the server, and determining components with power exceeding a preset threshold as target components; in each calculation, selecting any two components from the target components, and obtaining the usage of the two components; calculating a feedback value based on the usage of the selected two components, and arranging the calculated feedback values in descending order according to the numerical values; counting the occurrence probability of different feedback values, generating a probability distribution curve based on the occurrence probability, determining a target interval with occurrence probability greater than a preset probability threshold and a mutation point with adjacent interval occurrence probability difference greater than a preset difference threshold based on the probability distribution curve, and determining interval endpoints based on the target interval, the mutation point, and the feedback values corresponding to the noise threshold of different target component combinations, and dividing the feedback values into multiple feedback intervals.
[0081] Specifically, the target component refers to a hardware component with power exceeding a preset threshold in the server. During the running of the server, the power consumption of each component is monitored in real time, and the components with actual power exceeding a preset power threshold are dynamically marked as target components. The target components may generate significant heat due to high-power operation, and are the main objects of heat dissipation regulation. For example, in an embodiment, the target components can be a central processing unit (CPU), a graphics processing unit (GPU), a storage device (hard disk), a memory module, a network interface card, a motherboard chipset, a power conversion module, etc.
[0082] It should be noted that the target components are not fixed, for example, when the server switches from an idle state to a compute-intensive task, the CPU and GPU may be converted from non-target components to target components.
[0083] In a specific implementation, the server management system systematically traverses all hardware components on the server. During the traversal, real-time power data of each component is continuously monitored. The monitored power data is compared with a pre-set power threshold. When the power of a component exceeds the power threshold, it is marked as a target component. Further, target components are selected and usage rates are obtained: at each feedback value calculation, two different components are randomly selected from the set of determined target components for combination. For example, in one possible implementation, the combination of CPU and GPU is selected because in many compute-intensive tasks, these two components often simultaneously undertake a large amount of computation work, and have a large amount of heat and strong correlation; in another possible implementation, the combination of CPU and hard disk is selected, and in a scenario where data reading and writing are frequent, their load conditions have a greater impact on the overall performance and cooling demand of the server. Using the performance monitoring interface provided by the server operating system, real-time usage rate data of the selected two components is obtained. According to the previously determined feedback value calculation method, the usage rate data of the two components obtained is substituted into the formula for calculation. The above component combination selection, usage rate obtaining, and feedback value calculation operation process is repeated multiple times, all feedback values calculated multiple times are collected, and arranged in order from large to small according to the numerical value. The sorted feedback value data is statistically processed, and the number of occurrences of each feedback value is counted. The number of occurrences of each feedback value is divided by the total number of calculations to obtain the occurrence probability. With the feedback value as the horizontal axis and the occurrence probability as the vertical axis, the statistical feedback value and its corresponding probability data are plotted into a probability distribution curve. By observing the probability distribution curve, the continuous interval with a probability value exceeding a pre-set probability threshold (such as 5%) is identified, and these intervals are marked as target intervals. At the same time, the mutation point where the probability difference between adjacent intervals exceeds a pre-set difference threshold (such as 3%) is determined. For example, in the probability distribution curve, it is found that the feedback value is 1.0, and the probability difference between the adjacent intervals before and after 1.0 reaches 4%, which exceeds the pre-set 3%, so 1.0 is taken as a possible interval division point. Combining the feedback value information corresponding to the noise threshold of different target component combinations. For example, through a large number of tests and actual application verification, it is found that when the feedback value corresponding to the noise threshold of the CPU + GPU combination is 1.5, the server's cooling and noise control can achieve a good balance. Considering the feedback value corresponding to the target interval, the mutation point, and the noise threshold, the endpoints of the feedback interval are finally determined, such as 0.5, 1.0, 1.5, etc. According to the determined interval endpoints, the feedback value range is divided into multiple different intervals. For example, with 0.5, 1.0, 1.5 as the endpoints, the feedback value is divided into [0, 0.5), [0.5, 1.0), [1.0, 1.5), etc.
[0084] The method provided by the embodiment can accurately locate high-power heat-emitting components such as CPUs and GPUs in a server by screening target components through a power threshold, avoid interference of low-power components, reduce invalid calculation amount, and make feedback values focus on core hardware that most affects heat dissipation and noise; the use rate combination of any two target components is used to calculate a feedback value, so that the linkage characteristics of component loads in actual operation of the server can be effectively captured, for example, the scenario in which a CPU and a GPU are simultaneously highly loaded in a deep learning task, so as to avoid disconnection between the feedback value and actual heat dissipation demand in a single component perspective; a distribution curve is generated by counting the occurrence probability of the feedback value, and interval endpoints are determined based on a probability threshold and a mutation point, so that high-frequency load states (for example, a low load interval in a regular office scenario) and critical states of load switching (for example, a feedback value mutation point when an operation task is started) can be dynamically identified, and the division of the feedback interval is freed from the mechanicalness of a fixed threshold, and better adapts to dynamic changes of server loads; in combination with noise threshold calibration of different component combinations, the feedback interval can be directly bound to a fan speed regulation strategy, for example, when the feedback value falls into a certain interval, a corresponding speed regulation strategy can be immediately matched, so that heat dissipation is avoided due to excessive noise control in a high load state, and energy consumption and noise waste caused by fan idling in a low load state are prevented, and finally, through dynamic adaptation of the feedback interval of the load, the server can realize energy efficiency optimization of strengthening heat dissipation to ensure hardware safety in a high load state and reducing speed to reduce noise in a low load state, and improve the stability of system operation and the user experience.
[0085] Further, in combination with the above description, when the noise interval is the second noise interval, determining, based on a matching relationship between the feedback value and a plurality of feedback intervals, a corresponding speed regulation method, and regulating the speed of a fan on the server based on the speed regulation method, includes: determining, based on the feedback value, a target feedback interval corresponding to the feedback value; determining a noise reference value based on the target feedback interval; the noise reference value is a reference for regulating the speed of the fan; taking the noise reference value as a target, calculating a noise change amount at a continuous time point by comparing a difference between real-time noise values at the continuous time points by using a PID control method; updating a real-time noise value at a current time point based on the noise change amount at the continuous time point and a real-time noise value at a previous time point; obtaining an adjusted fan speed based on the updated real-time noise value at the current time point, a maximum speed of the fan, and a maximum noise value of the fan at the maximum speed.
[0086] Specifically, the noise reference value is a target reference value for server fan noise speed regulation, which forms a "one-to-one" unique correspondence with the feedback interval. During the operation of the server, the feedback value is calculated according to the component load (such as CPU, GPU usage, etc.), and the feedback value is divided into a plurality of different feedback intervals (such as a first feedback interval, a second feedback interval). Each feedback interval corresponds to a typical load state (such as low load, medium-high load), and the noise reference value is a "target noise level" preset for each feedback interval. For example, when the feedback value falls into the "second noise interval", the noise reference value corresponding to the interval (such as 55 decibels) is called as the reference target of fan speed regulation. For example, in an embodiment, the first feedback interval is greater than or equal to 1.5, and the corresponding noise reference value is A; the second feedback interval is between 1 and 1.5, and the corresponding noise reference value is A-3; the third feedback interval is between 0.5 and 1, and the corresponding noise reference value is A-6.
[0087] In specific implementation, the calculated feedback value is compared with the plurality of pre-divided feedback intervals to determine the interval to which the feedback value belongs (for example, falling into the "third feedback interval"). The noise reference value (for example, A-6) uniquely corresponding to the target feedback interval (such as the "third feedback interval") is read from the system configuration. The difference between the real-time noise value at the current time and the real-time noise value at the last time is obtained by comparing the real-time noise values. The difference value is input into the PID control algorithm, and the noise change amount that needs to be adjusted is obtained through the comprehensive calculation of the three links of proportion, integration and differentiation. The real-time noise value at the last time is added to the calculated noise change amount to obtain the updated noise value at the current time. According to the conversion relationship between the noise value and the fan speed, the updated noise value at the current time is converted into the speed of the fan, and the fan speed to be adjusted is calculated. The calculated adjusted fan speed is converted into a PWM (pulse width modulation) signal or other control instruction, and is sent to the fan controller to execute speed adjustment. It should be noted that the conversion relationship between the noise value and the fan speed can refer to the description in the above embodiment, which will not be described here.
[0088] The updated real-time noise value at the current time can be expressed as:
[0089] dB(t) = dB(t-1) + ΔdB(t);
[0090] Wherein, the dB(t) is the updated real-time noise value at the current time; the dB(t-1) is the real-time noise value at the last time; and the ΔdB(t) is the noise change amount at the continuous time.
[0091] Optionally, the noise change amount at the continuous time is calculated by comparing the real-time noise value difference at the continuous time and using a PID control method, including: calculating a first difference value of the real-time noise value at the current time and the real-time noise value at the previous time, and determining a product of the first difference value and a proportional coefficient as a proportional adjustment term; calculating a second difference value of the real-time noise value at the current time and the noise reference value, and determining a product of the second difference value and an integral coefficient as an integral adjustment term; calculating a third difference value of the real-time noise value at the previous time and the real-time noise value at the target time, calculating a fourth difference value of the first difference value and the third difference value, and determining a product of the fourth difference value and a differential coefficient as a differential adjustment term; the target time is the time before the previous time; and adding the proportional adjustment term, the integral adjustment term and the differential adjustment term to obtain the noise change amount at the continuous time.
[0092] Specifically, the PID (proportional-integral-differential) control is a feedback control algorithm that dynamically calculates an adjustment amount by comparing the deviation of the target value and the actual value to achieve system stability. In the embodiment, the role of the PID control is to accurately calculate the adjustment amount of the fan speed according to the deviation of the noise reference value and the real-time noise value, so that the noise value quickly approaches and stabilizes around the reference value. The proportional adjustment term is used to quickly respond to the current noise change trend. If the current noise rises rapidly (the first difference value is positive), the proportional adjustment term will generate a larger negative adjustment amount to promote the fan to speed up cooling, and vice versa. The integral adjustment term is used to eliminate long-term steady-state error. If the noise value deviates from the reference value, the integral adjustment term will continuously accumulate the deviation and generate a larger adjustment amount until the noise value approaches the reference value. The differential adjustment term is used to predict future noise changes and suppress fluctuations in advance. If the noise rising speed is slowing down (the first difference value is less than the third difference value), the differential adjustment term will generate a positive adjustment amount to avoid excessive fan acceleration leading to noise overshoot.
[0093] It should be noted that the target time is the time before the previous time. For example, the current time is t, the previous time is t-1, and the target time is t-2.
[0094] In a specific implementation, a difference value of the real-time noise values at the current time and the previous time is calculated to obtain a first difference value. The first difference value is multiplied by a preset proportional coefficient to obtain a proportional adjustment term. A difference value of the real-time noise value at the current time and the noise reference value is calculated to obtain a second difference value, and the second difference value is multiplied by a preset integral coefficient to obtain an integral adjustment term. A difference value of the real-time noise values at the previous time and the time before the previous time is calculated to obtain a third difference value, and a difference value of the first difference value and the third difference value is calculated to obtain a fourth difference value. The fourth difference value is multiplied by a preset differential coefficient to obtain a differential adjustment term. The proportional adjustment term, the integral adjustment term and the differential adjustment term are added to obtain the final noise change amount.
[0095] The calculation formula of the noise variation can be expressed as:
[0096] ΔdB(t) =Kp*[dB(t)-dB(t-1)] + Ki*[dB(t)-A]*dt + Kd*{[dB(t)-dB(t-1)]-[dB(t-1)-dB(t-2)]} / dt; dt = 1;
[0097] Among them, ΔdB(t) is the noise change; Kp is the proportional coefficient; dB(t) is the real-time noise value at the current moment; dB(t-1) is the real-time noise value at the previous moment; dB(t-2) is the real-time noise value at the target moment; Ki is the integral coefficient; A is the noise baseline value; Kd is the differential adjustment item; and dt is the time interval.
[0098] The method provided in this embodiment uses PID control logic to decompose the dynamic adjustment of noise at the physical level into multi-dimensional synergy in the noise change calculation process: first, the proportional adjustment term calculates the first difference of the noise values at adjacent moments and multiplies it by the proportional coefficient. In essence, it quantifies the "instantaneous rate of change" of the noise, and can make rapid adjustments to the speed of sudden increase or decrease of the noise, ensuring immediate response to the current noise fluctuation; secondly, the integral adjustment term is based on the second difference between the current noise and the reference value and the integral coefficient. In essence, it continuously tracks the "accumulated noise deviation", which can eliminate the steady-state error caused by the long-term noise deviation from the reference value, so that the noise gradually returns to the target value over a long period of time; thirdly, the differential adjustment term calculates the difference between the previous moment and the target value. The third difference of the noise value at the moment (the previous moment) is compared with the first difference to obtain the fourth difference and multiplied by the differential coefficient. This corresponds to the capture of the "acceleration" of the noise change, which can perceive the acceleration or deceleration trend of the noise fluctuation in advance, and avoid noise oscillation caused by over-response during the adjustment process; finally, the noise change amount obtained by the superposition of the three not only realizes the "instant force control" of the current noise fluctuation, but also completes the "continuous cumulative correction" of historical deviations, and also adds "predictive adjustment" of future fluctuation trends, so that the fan speed adjustment forms a closed-loop control of "quick response-deviation elimination-trend prediction" at the physical level, ensuring that the noise stably approaches the baseline value in dynamic changes, and balancing the actual application scenarios of heat dissipation requirements and noise control.
[0099] The method provided in this embodiment first determines server type based on whether the server is equipped with a noise sensor. For servers equipped with noise sensors, the sensor installed on the baseboard management unit (BMC) directly collects real-time noise values, ensuring that the speed control strategy is based on actual noise data. For servers without sensors, the current noise value is calculated using the fan speed, maximum speed, and maximum noise value. Logarithmic addition and inverse transformation are then used to obtain the real-time noise value, indirectly assessing cooling requirements. This differentiated processing method avoids speed control strategy failures caused by hardware differences, enabling servers with different configurations to achieve intelligent fan speed control through a closed-loop "load-feedback-speed control" logic loop.
[0100] On the second aspect, this application has constructed a dual control system of "initial noise screening-feedback fine-tuning". The first screening compares the real-time noise value with the threshold to determine the low, medium and high noise ranges, and quickly identifies the noise level to provide a basic direction for speed regulation. For example, in the low noise range, energy saving is prioritized to reduce the speed, and in the high noise range, heat dissipation is prioritized to increase the speed; the second screening is based on the matching of feedback value and feedback range, and the load scenario is further refined. In the first noise range, the speed is indirectly controlled by adjusting the temperature PID set value to ensure heat dissipation safety in high-temperature scenes. In the second noise range, the noise value is directly used as the target for adjustment, taking into account the low-load and quiet requirements. This hierarchical and progressive screening method avoids the deviation of single indicator adjustment and achieves a balance between heat dissipation efficiency and user experience. For example, when the server is highly loaded and noisy, the speed is prioritized to ensure hardware safety, and when the load is low and the noise is low, the speed is automatically reduced to reduce energy consumption.
[0101] Third, in the speed regulation method for the second noise range, a noise baseline is obtained by determining the target feedback range corresponding to the feedback value. Using this baseline as the target, a PID control method is used to calculate the noise change. The proportional control term quickly responds to current noise trends, the integral control term eliminates long-term steady-state errors, and the differential control term predicts future noise changes and suppresses fluctuations in advance. The three terms are summed to obtain the noise change, which is then used to update the real-time noise value. The adjusted speed is then calculated by combining the fan's maximum speed and maximum noise value. This speed regulation method, through the synergistic effect of the three PID control terms, ensures that the noise change includes immediate response to current fluctuations, continuous correction of historical deviations, and predictive adjustment of future trends. This achieves a closed-loop control mechanism for fan speed regulation: "rapid response—deviation elimination—trend prediction." This ensures that noise remains stable near the baseline during dynamic changes, balancing heat dissipation requirements with noise control. For example, when noise suddenly increases, a counter-regulation is immediately generated to suppress the increase in speed. When noise deviates continuously, the regulation is gradually increased until it returns to normal. When noise slows, the regulation is reduced in advance to avoid overshoot, ultimately achieving precise noise control and dynamic balance.
[0102] Corresponding to the foregoing embodiment of the server fan speed regulation method based on the BMC, the application further provides an embodiment of a server fan speed regulation device based on the BMC.
[0103] Figure 2 A structural schematic diagram of a server fan speed regulation device based on the BMC is provided for the second embodiment of the application. Figure 2 The device provided in the embodiment comprises a determination module 210, an acquisition module 220, a calculation module 230 and a speed regulation module 240.
[0104] The determination module 210 is configured to determine the server type based on whether the server is equipped with a noise sensor; the server type comprises a first server and a second server, the first server is not equipped with a noise sensor, and the second server is equipped with a noise sensor, and the noise sensor is installed on the BMC of the server.
[0105] The determination module 210 is further configured to match a corresponding noise determination method based on the server type, and determine a real-time noise value based on the noise determination method; the real-time noise value comprises noise values of all fans on the server.
[0106] The determination module 210 is further configured to compare the real-time noise value with a noise threshold value, and determine a corresponding noise interval.
[0107] The acquisition module 220 is configured to acquire the CPU usage and the GPU usage of the server.
[0108] The calculation module 230 is configured to calculate a feedback value based on the CPU usage and the GPU usage.
[0109] The speed regulation module 240 is configured to determine a corresponding speed regulation method based on a matching relationship between the feedback value and a plurality of feedback intervals in the noise interval, and regulate the speed of the fans on the server based on the speed regulation method; wherein in a first noise interval, a temperature PID set value of a target sensor is adjusted based on a feedback interval in which the feedback value is located, and the fan speed is adjusted based on the adjusted temperature PID set value; and in a second noise interval, a noise value is adjusted based on a feedback interval in which the feedback value is located, and the fan speed is adjusted based on the adjusted noise value.
[0110] The device of the embodiment can be used to execute the steps of the method embodiment shown in the drawing, and the specific implementation principle and implementation process are similar, which will not be described here again. Figure 1 The implementation process of the functions and roles of each unit in the device is specifically described in the implementation process of the corresponding steps in the above method, which will not be described here again.
[0111] The implementation process of the functions and roles of each unit in the device is specifically described in the implementation process of the corresponding steps in the above method, which will not be described here again.
[0112] For the device embodiment, since it basically corresponds to the method embodiment, the relevant part can be seen from the part of the method embodiment. The device embodiment described above is only illustrative, wherein the units described as separate components can or can not be physically separated, and the components displayed as units can or can not be physical units, i.e., can be located in one place or distributed to multiple network units. Part or all of the modules can be selected to achieve the purpose of the application according to actual needs. Those skilled in the art can understand and implement without creative labor.
[0113] The above only describes the preferred embodiments of the present application and is not used to limit the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A server fan speed adjustment method based on BMC, characterized in that: The method comprises: Determining a server type based on whether a noise sensor is provided on the server; the server type includes a first server and a second server, the first server is not provided with a noise sensor, the second server is provided with a noise sensor, and the noise sensor is installed on a BMC of the server; Based on the noise determination method corresponding to the server type, a real-time noise value is determined based on the noise determination method; the real-time noise value includes the noise values of all fans on the server; Comparing the real-time noise value with a noise threshold to determine a corresponding noise interval; Obtain the CPU usage and GPU usage of the server; Calculating a feedback value based on the CPU usage rate and the GPU usage rate; In the noise interval, based on the matching relationship between the feedback value and multiple feedback intervals, a corresponding speed regulation method is determined, and the speed of the fan on the server is regulated based on the speed regulation method; wherein, in the first noise interval, the temperature PID setting value of the target sensor is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted temperature PID setting value; in the second noise interval, the noise value is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted noise value.
2. The method according to claim 1, characterized in that In the noise range, determining a corresponding speed regulation method based on a matching relationship between the feedback value and a plurality of feedback ranges, and regulating the speed of the fan on the server based on the speed regulation method, including: Based on the feedback value, determining a target feedback interval corresponding to the feedback value; Determining a noise baseline value based on the target feedback interval; the noise baseline value is a benchmark for adjusting fan noise; Taking the noise baseline value as a target, by comparing the real-time noise value differences at consecutive moments, the noise variation at consecutive moments is calculated using the PID control method; Based on the noise variation at the consecutive moments and the real-time noise value at the previous moment, updating the real-time noise value at the current moment; An adjusted fan speed is obtained based on the updated real-time noise value at the current moment, the maximum speed of the fan, and the maximum noise value of the fan at the maximum speed.
3. The method according to claim 2, characterized in that The method of calculating the noise variation at consecutive moments by comparing the real-time noise value differences at consecutive moments with the noise baseline value as the target includes: Calculating a first difference between a real-time noise value at a current moment and a real-time noise value at a previous moment, and determining a product of the first difference and a proportional coefficient as a proportional adjustment item; Calculating a second difference between the current real-time noise value and the noise reference value, and determining a product of the second difference and an integral coefficient as an integral adjustment item; calculating a third difference between a real-time noise value at a previous moment and a real-time noise value at a target moment, calculating a fourth difference between the first difference and the third difference, and determining a product of a differential coefficient and the fourth difference as a differential adjustment item; the target moment being the moment before the previous moment; The proportional adjustment term, the integral adjustment term and the differential adjustment term are added together to obtain the noise variation at consecutive moments.
4. The method according to claim 1, wherein When the server type is a first server, determining the real-time noise value based on the noise determination method includes: For each fan on the server, calculate a current noise value of the fan based on a current rotation speed of the fan, a maximum rotation speed of the fan, and a maximum noise value of the fan at the maximum rotation speed; Based on the current noise value of the fan and the number of fans on the server, a real-time noise value is obtained by logarithmic addition and inverse transformation.
5. The method according to claim 4, characterized in that Calculating a current noise value of the fan based on a current rotation speed of the fan, a maximum rotation speed of the fan, and a maximum noise value of the fan at the maximum rotation speed includes: Calculating a quotient between the current rotation speed of the fan and the maximum rotation speed; performing a logarithmic operation on the quotient to obtain a logarithmic value; The sum of the maximum noise value of the fan at the highest rotation speed and the logarithmic value is determined as the current noise value of the fan.
6. The method according to claim 4, characterized in that The step of calculating the real-time noise value based on the current noise value of the fan and the number of fans on the server by logarithmic addition and inverse transformation includes: Converting the current noise value of each fan into a logarithmic form, and calculating the sum of the noise values of all fans based on a logarithmic addition formula and the number of fans on the server; Perform an inverse transformation on the noise value sum to obtain a real-time noise value.
7. The method according to claim 1, characterized in that The method for determining the feedback interval includes: Traverse all components on the server and identify components whose power exceeds a preset threshold as target components; In each calculation, any two components are selected from the target components, and the usage rates of the two components are obtained; Calculate feedback values based on the utilization rates of the two selected components, and arrange the calculated feedback values in descending order; The occurrence probabilities of different feedback values are counted, a probability distribution curve is generated based on the occurrence probabilities, a target interval with an occurrence probability greater than a preset probability threshold and a mutation point with a difference in occurrence probability between adjacent intervals greater than a preset difference threshold are determined based on the probability distribution curve, interval endpoints are determined based on the target interval and the mutation point, combined with feedback values corresponding to noise thresholds under different target component combinations, and the feedback value is divided into multiple feedback intervals.
8. The method according to claim 1, characterized in that The noise sensor is provided with foam, and the foam compensates for the noise attenuation degree at different distances by adjusting the thickness; the foam thickness is nonlinearly correlated with the distance from the noise sensor to the fan wall, and the foam thickness changes in a negative correlation with the distance.
9. The method according to claim 1, characterized in that The calculating of the feedback value based on the CPU usage rate and the GPU usage rate includes: Calculating the square root of the product of the CPU usage rate and the GPU usage rate; A sum of the square root of the product, the CPU usage rate, and the GPU usage rate is determined as a feedback value.
10. A server fan speed control device based on BMC, characterized in that: The device includes a determination module, an acquisition module, a calculation module and a speed regulation module; The determining module is configured to determine a server type based on whether a noise sensor is provided on the server; the server type includes a first server and a second server, the first server is not provided with a noise sensor, the second server is provided with a noise sensor, and the noise sensor is installed on a BMC of the server; The determination module is further configured to match a corresponding noise determination method based on the server type and determine a real-time noise value based on the noise determination method; the real-time noise value includes noise values of all fans on the server; The determination module is further configured to compare the real-time noise value with a noise threshold to determine a corresponding noise interval; The acquisition module is used to obtain the CPU usage and GPU usage of the server; The calculation module is used to calculate a feedback value based on the CPU usage rate and the GPU usage rate; The speed regulation module is used to determine a corresponding speed regulation method based on a matching relationship between the feedback value and multiple feedback intervals in the noise interval, and regulate the speed of the fan on the server based on the speed regulation method; wherein, in a first noise interval, the temperature PID set value of the target sensor is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted temperature PID set value; in a second noise interval, the noise value is adjusted based on the feedback interval where the feedback value is located, and the fan speed is adjusted based on the adjusted noise value.
Citation Information
Patent Citations
Temperature control method and device, electronic equipment and storage medium
CN120255670A
Fan speed control for high tonality avoidance
US20240188257A1