Fan rotation speed control method, apparatus and device

The method optimizes fan rotation speed in network devices using PID, Greedy, and DDPG algorithms to balance cooling, noise, and power consumption, addressing the inefficiencies of existing fan control methods.

JP7769119B2Active Publication Date: 2025-11-12NEW H3C AI TECH CO LTD
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
JP2024534220
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-09-06
Publication Date
2025-11-12
Estimated Expiration
2042-09-06

AI Technical Summary

Technical Problem

Existing methods fail to effectively control fan rotation speed in network devices to balance cooling effectiveness, noise, and power consumption, leading to potential overheating and energy waste.

Method used

A method and device that adjust fan duty cycles using a combination of PID, Greedy, and DDPG algorithms to optimize fan rotation speed based on reward parameters, ensuring low noise and power consumption while preventing overheating.

Benefits of technology

Effectively controls fan rotation speed to reduce power consumption and noise, preventing overheating and ensuring energy savings and noise reduction in network devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007769119000001
    Figure 0007769119000001
  • Figure 0007769119000002
    Figure 0007769119000002
  • Figure 0007769119000003
    Figure 0007769119000003
Patent Text Reader

Abstract

The present invention provides a method, apparatus and device for controlling the rotation speed of a fan, the method including the steps of: determining an initial fan duty cycle currently adopted by each fan; sequentially traversing each fan as a candidate fan according to a target sequence of a plurality of fans; adjusting the initial fan duty cycle corresponding to the candidate fan multiple times to obtain a plurality of different candidate fan duty cycles; for each candidate fan duty cycle, obtaining reward data of a network device at the candidate fan duty cycle and determining a reward parameter value corresponding to the candidate fan duty cycle according to the reward data; selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; and after obtaining the target fan duty cycle corresponding to each fan, controlling the fan according to the rotation speed corresponding to the target fan duty cycle corresponding to each fan. The technical solution of the present invention effectively controls the rotation speed of each fan, reducing the power consumption and noise of the fans.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to the field of communications technology, and more particularly to a method, apparatus and device for controlling the rotation speed of a fan. [Background technology]

[0002] A network device (e.g., a router, a switch, etc.) may include multiple boards (e.g., a master control board, an interface board, a service board, etc.), and during the operation of these boards, the power consumption of different boards varies greatly. For example, the power consumption of one board may be as low as 100 W, while the power consumption of another board may exceed 600 W. If multiple boards all operate at high power consumption, the temperature of the network device will rise, making the network device more susceptible to failure.

[0003] To cool a network device, multiple fans are typically installed in the network device. The faster the fan speed, the better the cooling effect of the network device; the slower the fan speed, the worse the cooling effect of the network device. The faster the fan speed, the louder the fan noise and the greater the fan power consumption, resulting in energy waste. The slower the fan speed, the quieter the fan noise and the lower the fan power consumption, resulting in less energy waste.

[0004] As can be seen from the above, the higher the fan rotation speed, the better the cooling effect of the network device, but the higher the fan noise and power consumption. Conversely, the lower the fan rotation speed, the worse the cooling effect of the network device, but the lower the fan noise and power consumption. Therefore, it is necessary to control the fan rotation speed to avoid the network device from overheating, while ensuring low fan noise and low fan power consumption, thereby achieving the goals of energy saving and noise reduction.

[0005] However, there is no effective implementation method in the related art for how to control the rotation speed of the fan to ensure low fan noise and low power consumption while preventing the network device from overheating. Summary of the Invention

[0006] The present invention provides a fan rotation speed control method applicable to a network device including multiple fans, comprising the steps of: determining an initial fan duty cycle currently being employed by each fan; traversing each fan as a candidate fan in sequence based on a target order of the plurality of fans; adjusting an initial fan duty cycle corresponding to the candidate fan a plurality of times to obtain a plurality of different candidate fan duty cycles; obtaining, for each candidate fan duty cycle, reward data for the network device at the candidate fan duty cycle; determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data; selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles; and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; and after obtaining a target fan duty cycle corresponding to each fan, when the network device is in a stable state, controlling the fan based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan.

[0007] The present invention provides a fan rotation speed control device that is applied to a network device including multiple fans, and when the network device is in a state that requires adjustment, a determination module for determining an initial fan duty cycle currently employed by each fan; a processing module for sequentially traversing each fan as a candidate fan based on a target order of the plurality of fans, adjusting an initial fan duty cycle corresponding to the candidate fan a plurality of times to obtain a plurality of different candidate fan duty cycles, obtaining, for each candidate fan duty cycle, reward data of the network device at the candidate fan duty cycle, determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data, selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; and a control module for, after obtaining a target fan duty cycle corresponding to each fan, controlling the fan based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan when the network device is in a stable state.

[0008] The present invention provides a network device including a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the above-mentioned fan rotation speed control method.

[0009] As can be seen from the above technical solution, in an embodiment of the present invention, the initial fan duty cycle corresponding to each fan is adjusted multiple times to obtain a plurality of different candidate fan duty cycles, an optimal reward parameter value is selected from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and the candidate fan duty cycle corresponding to the optimal reward parameter value is determined as the target fan duty cycle for each fan, thereby obtaining a target fan duty cycle for each fan. By determining the rotation speed of each fan based on the target fan duty cycle corresponding to each fan, the rotation speed of each fan can be effectively controlled, reducing the power consumption and noise of the fans, preventing the network device from overheating, while ensuring low fan noise and low fan power consumption, thereby achieving the goals of energy saving and noise reduction, meeting the energy saving and noise reduction requirements of network devices, reducing noise pollution, reducing the absorption of airborne harmful substances such as dust, and benefiting the reduction of corrosion to network devices. [Brief explanation of the drawings]

[0010] In order to more clearly describe the technical solutions in the embodiments of the present invention or the prior art, the following will briefly describe the drawings that need to be used in the description of the embodiments of the present invention or the prior art. Obviously, the drawings in the following description are only some embodiments described in the present invention, and those skilled in the art can also obtain other drawings based on these drawings of the embodiments of the present invention. [Figure 1] 1 is a schematic diagram showing a flow of a fan rotation speed control method according to an embodiment of the present invention; [Figure 2] FIG. 4 is a schematic diagram illustrating control of the rotation speed of a fan according to an embodiment of the present invention. [Figure 3] FIG. 1 is a schematic diagram illustrating a DDPG algorithm model according to an embodiment of the present invention. [Figure 4] 1 is a schematic diagram illustrating the structure of a fan rotation speed control device according to an embodiment of the present invention; [Figure 5]FIG. 2 is a diagram illustrating a hardware structure of a network device according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0011] The terms used in the embodiments of the present invention are merely for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the present invention and in the claims, the singular forms "a," "the," and "the" are intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present invention means to include any and all possible combinations of one or more of the associated listed items.

[0012] In embodiments of the present invention, terms such as first, second, and third may be used to describe various pieces of information, but it should be understood that these terms are not limited to these terms. These terms are used only to distinguish between the same type of information. For example, first information may be referred to as second information, and similarly, second information may be referred to as first information, without departing from the scope of the present invention. Depending on the context, the word "if..." may be interpreted as "with...," "when...," or "in response to a determination."

[0013] An embodiment of the present invention provides a fan rotation speed control method applicable to a network device (e.g., a router, a switch, etc.), where the network device may include multiple fans. FIG. 1 is a schematic diagram showing the flow of the fan rotation speed control method, where the fan rotation speed control method may include the following steps:

[0014] In step 101, when the network device is in a state where adjustment is required, the initial fan duty cycle currently adopted by each fan is determined. For example, if the fan is currently controlled at a rotation speed corresponding to a certain fan duty cycle, the fan duty cycle may be determined as the initial fan duty cycle currently adopted by the fan.

[0015] In step 102, based on the target order of the multiple fans, each fan is traversed in turn as a candidate fan.

[0016] In step 103, the initial fan duty cycle corresponding to the currently traversed candidate fan is adjusted multiple times to obtain multiple different candidate fan duty cycles, and for each candidate fan duty cycle, reward data of the network device at the candidate fan duty cycle is obtained, a reward parameter value corresponding to the candidate fan duty cycle is determined based on the reward data, an optimal reward parameter value is selected from the reward parameter values ​​corresponding to the multiple candidate fan duty cycles, and the candidate fan duty cycle corresponding to the optimal reward parameter value is determined as the target fan duty cycle corresponding to the candidate fan.

[0017] Exemplarily, determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data may include, but is not limited to, determining a system total power and a fan duty cycle maximum value based on the reward data, wherein the reward data includes a fan duty cycle corresponding to each fan, the fan duty cycle maximum value being the maximum value among all of the fan duty cycles, and determining the system total power based on the power supply power if the reward data includes a power corresponding to each board and a power corresponding to each fan; determining a target noise value based on the fan duty cycle maximum value; and determining the reward parameter value based on the system total power, a first weighting factor corresponding to the system total power, the target noise value, and a second weighting factor corresponding to the target noise value.

[0018] For example, the sum of the first weighting factor and the second weighting factor may be a fixed value (e.g., 1), and if the importance of energy saving is greater than the importance of noise reduction, the first weighting factor may be greater than the second weighting factor, and if the importance of noise reduction is greater than the importance of energy saving, the first weighting factor may be less than the second weighting factor.

[0019] In step 104, after obtaining the target fan duty cycle corresponding to each fan, when the network device is in a stable state, the fan is controlled based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan.

[0020] In one possible embodiment, after obtaining the target fan duty cycle corresponding to each fan, if the network device is still in a state to be adjusted, the initial fan duty cycle corresponding to each fan may be updated with the target fan duty cycle corresponding to the fan, and the process may return to performing the step of sequentially traversing each fan as a candidate fan based on the target order of the multiple fans, i.e., returning to performing step 102. When re-performing step 102, the target order of the multiple fans may be changed, or the target order of the multiple fans may not be changed.

[0021] For example, if the total number of fans satisfying the target condition is equal to or greater than a predetermined threshold (which may be set based on experience, e.g., the number of all fans * a%, where a may be 100, 90, etc.), it may be determined that the network device is in a stable state; otherwise, if the total number of fans satisfying the target condition is less than the predetermined threshold, it may be determined that the network device is in a state that requires adjustment. Here, for each fan, if the target fan duty cycle corresponding to the fan and the initial fan duty cycle corresponding to the fan are the same, the fan satisfies the target condition (i.e., the fan has been adjusted to a locally-optimal state); otherwise, if the target fan duty cycle corresponding to the fan and the initial fan duty cycle corresponding to the fan are not the same, the fan does not satisfy the target condition.

[0022] In one possible embodiment, after the network device is powered on and started up or after the network device issues a temperature alarm, a fan duty cycle to be adjusted for each fan may be determined based on the temperature value of each board of the network device, and when the fan is controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan, the absolute value of the difference between the temperature value of each board and the target temperature value may be less than the temperature threshold. If the absolute value of the difference between the temperature value of each board and the target temperature value is less than the temperature threshold, it may be determined that the network device is in a state that requires adjustment, and the initial fan duty cycle corresponding to each fan may be updated with the fan duty cycle to be adjusted for each fan, and the fan may be controlled based on the rotation speed corresponding to the initial fan duty cycle for each fan.

[0023] In one possible embodiment, when the network device is in a stable state, detected state data corresponding to the network device may be obtained, and the detected state data may be input into the trained target operation model to obtain an output fan duty cycle corresponding to each fan, where the output fan duty cycles corresponding to different fans are the same or different. A first reward parameter value corresponding to the output fan duty cycle is determined based on the network device's reward data at the output fan duty cycle corresponding to each fan, and a second reward parameter value corresponding to the target fan duty cycle is determined based on the network device's reward data at the target fan duty cycle corresponding to each fan. If the first reward parameter value is better than the second reward parameter value, the network device is determined to be in a state that should be adjusted, the initial fan duty cycle corresponding to each fan is updated with the output fan duty cycle corresponding to the fan, and the process returns to executing step 102 of sequentially traversing each fan as a candidate fan based on the target order of the multiple fans.

[0024] By way of example, the detected status data corresponding to the network device may include, but is not limited to, sensor data corresponding to each board in the network device, system data corresponding to the network device, and a target fan duty cycle corresponding to each fan. The sensor data corresponding to each board includes at least one of junction temperature data corresponding to a chip in the board, a maximum temperature corresponding to each temperature measurement point in the board, and a power corresponding to the board, and the system data includes at least one of an ambient temperature, a power supply power, and a power corresponding to each fan.

[0025] Exemplarily, before inputting the detected state data into the target operational model, the target operational model may be trained, and the training process of the target operational model may include the steps of: obtaining sample state data corresponding to the network device when the network device is in a stable state; inputting the sample state data into an initial operational model to obtain a sample fan duty cycle corresponding to each fan; inputting the sample state data and the sample fan duty cycle corresponding to each fan into an initial evaluation model to obtain a state operational value corresponding to the sample state data; determining a reward parameter value corresponding to the state operational value based on the sample state data; and training the initial operational model and the initial evaluation model based on the reward parameter value and the state operational value to obtain a trained target operational model and a target evaluation model.

[0026] Exemplarily, the step of training an initial operating model and an initial evaluation model based on a reward parameter value and a state operating value to obtain a trained target operating model and a target evaluation model may include, but is not limited to, the steps of: determining a first error value corresponding to the initial operating model based on the state operating value; adjusting network parameters of the initial operating model based on the first error value to obtain an adjusted operating model; determining a second error value corresponding to the initial evaluation model based on the reward parameter value and the state operating value; adjusting network parameters of the initial evaluation model based on the second error value to obtain an adjusted evaluation model; if the adjusted operating model and the adjusted evaluation model have converged, determining the adjusted operating model as the target operating model and determining the adjusted evaluation model as the target evaluation model; and if the adjusted operating model and / or the adjusted evaluation model have not converged, determining the adjusted operating model as the initial operating model and determining the adjusted evaluation model as the initial evaluation model, and returning to execution of the step of inputting sample state data into the initial operating model.

[0027] Illustratively, determining a first error value corresponding to an initial operating model based on the state operating values ​​includes: v Determining the second error value corresponding to the initial evaluation model based on the reward parameter values ​​and the state operation values ​​may include, but is not limited to, determining the first error value based on the formula L(Θ)=-critic(s,a). u )=1 / 2(r'-critic(s,a)) 2 The method may include, but is not limited to, determining the second error value based on the following formula: v ) represents the first error value, and L(Θ u ) represents the second error value, s represents the sample state data, a represents the sample fan duty cycle, critic(s,a) represents the state operating value, and r' represents the reward parameter value.

[0028] As can be seen from the above technical solution, in an embodiment of the present invention, the initial fan duty cycle corresponding to each fan is adjusted multiple times to obtain a plurality of different candidate fan duty cycles, an optimal reward parameter value is selected from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and the candidate fan duty cycle corresponding to the optimal reward parameter value is determined as the target fan duty cycle for each fan, thereby obtaining a target fan duty cycle for each fan. By determining the rotation speed of each fan based on the target fan duty cycle corresponding to each fan, the rotation speed of each fan can be effectively controlled, reducing the power consumption and noise of the fans, preventing the network device from overheating, while ensuring low fan noise and low fan power consumption, thereby achieving the goals of energy saving and noise reduction, meeting the energy saving and noise reduction requirements of network devices, reducing noise pollution, reducing the absorption of airborne harmful substances such as dust, and benefiting the reduction of corrosion to network devices.

[0029] The following describes the technical solutions of the embodiments of the present invention in combination with specific application scenarios.

[0030] A network device (e.g., a router, a switch, etc., where the switch may be a chassis switch) may include multiple boards (e.g., a master control board, an interface board, a service board, etc.) and multiple fans. During the operation of these boards, the temperature of the network device will rise. The fans cool the network device to prevent the network device from overheating and thus prevent the network device from failing. Obviously, the higher the fan rotation speed, the better the cooling effect of the network device; the lower the fan rotation speed, the worse the cooling effect of the network device. However, the higher the fan rotation speed, the louder the fan noise and the greater the fan power consumption, resulting in energy waste. The lower the fan rotation speed, the quieter the fan noise and the lower the fan power consumption, resulting in reduced energy waste.

[0031] As can be seen from the above, the higher the fan rotation speed, the better the cooling effect of the network device, but the higher the fan noise and power consumption. Conversely, the lower the fan rotation speed, the worse the cooling effect of the network device, but the lower the fan noise and power consumption. Therefore, it is necessary to control the fan rotation speed to avoid the network device from overheating, while ensuring low fan noise and low fan power consumption, thereby achieving the goals of energy saving and noise reduction.

[0032] However, there is no effective implementation method in the related art for how to control the rotation speed of the fan to ensure low fan noise and low power consumption while preventing the network device from overheating.

[0033] For example, by reducing the fan rotation speed as much as possible, the fan noise and the fan power consumption can be reduced, but if the fan rotation speed is too low, the temperature of the network device will rise, and in the case of a high-power chip inside the network device, as the temperature of the network device rises, the power of the high-power chip will increase with the temperature, that is, the power consumption of the entire network device will be greater, that is, if the fan rotation speed is reduced, the overall power consumption will be greater.

[0034] For example, an experienced temperature can be set, and if the temperature of the network device is higher than the experienced temperature, the fan speed can be increased, and if the temperature of the network device is lower than the experienced temperature, the fan speed can be decreased. However, it is difficult to accurately set the experienced temperature, and if the experienced temperature is inappropriate, the fan speed will be repeatedly adjusted, causing the temperature of the network device to fluctuate. For example, if the fan speed is increased, the temperature of the network device will be lower than the experienced temperature, so the fan speed will be decreased. If the fan speed is decreased, the temperature of the network device will be higher than the experienced temperature, so the fan speed will be increased, resulting in fluctuations in the adjustment of the fan speed.

[0035] Based on the above findings, in order to meet the requirements of energy saving and noise reduction of network devices, an embodiment of the present invention provides a fan rotation speed control method that combines a PID (Proportion Integral Differential) algorithm, a Greedy algorithm, and a DDPG (Deep Deterministic Policy Gradient) algorithm to achieve fan rotation speed control, thereby effectively controlling the rotation speed of each fan, reducing fan power consumption and noise, and preventing network devices from overheating.

[0036] As shown in Figure 2, after the network device is powered on and started up, it is determined that the network device is in a power-on startup state. When the network device is in a power-on startup state, the PID algorithm is used to control the fan rotation speed until the absolute value of the difference between the temperature value of each board and the target temperature value is smaller than the temperature threshold, and it is determined that the network device is in a state that needs to be regulated. When the network device is in a state that needs to be regulated, the greedy algorithm is used to control the fan rotation speed until a local optimum solution for each fan (i.e., a locally optimum fan duty cycle, referred to as the fan target fan duty cycle) is found, and the fan rotation speed is controlled using the target fan duty cycle for each fan. It is determined that the network device is in a stable state, i.e., it is determined that the network device has reached a locally optimum stable state.

[0037] The data collected in the Greedy algorithm process can be used to train the DDPG model, and when the network device is in a stable state, the DDPG model can be used to determine whether the Greedy algorithm needs to be restarted. For example, if it is determined based on the DDPG model that the environment and power in the stable state have changed, the Greedy algorithm is triggered to find the next local optimum again, that is, it re-determines that the network device is in a state that needs to be adjusted, and uses the Greedy algorithm to control the fan rotation speed until it finds the target fan duty cycle for each fan, and uses the target fan duty cycle for each fan to control the fan rotation speed, and determines that the network device is in a stable state.

[0038] Based on the above technical idea, the technical solution of the embodiment of the present invention relates to the following process.

[0039] First, after the network device is powered on and started up, the fan duty cycle to be adjusted for each fan is determined based on the temperature value of each board of the network device, and the fan is controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan (e.g., Fan 1 is controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for Fan 1, and Fan 2 is controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for Fan 2). When the fans are controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan, the fan duty cycle to be adjusted for each fan can be continuously adjusted so that the absolute value of the difference between the temperature value of each board and the target temperature value is smaller than the temperature threshold (which may be set empirically). That is, if the absolute value of the difference is greater than the temperature threshold, the fan duty cycle to be adjusted for each fan can be increased to reduce the temperature value of the board; and if the absolute value of the difference is smaller than the temperature threshold, the fan duty cycle to be adjusted for each fan can be decreased to increase the temperature value of the board. Obviously, by repeatedly adjusting the fan duty cycle to be adjusted for each fan, the absolute value of the difference between the temperature value of each board and the target temperature value can eventually be made smaller than the temperature threshold.

[0040] In one possible embodiment, the fan duty cycle to be adjusted corresponding to each fan is determined using a PID algorithm based on the temperature value of each board of the network device, and the fan duty cycle to be adjusted corresponding to each fan is continuously adjusted based on the PID algorithm so that the absolute value of the difference between the temperature value of each board and the target temperature value is less than the temperature threshold value, and the process of determining the fan duty cycle to be adjusted using the PID algorithm is not limited in this embodiment.

[0041] To summarize, in this embodiment, after the network device is powered on and started up, the temperature, power consumption, etc. change quickly. Therefore, in order to ensure the safety of the network device, a PID algorithm can first be used to continuously adjust the fan duty cycle to be adjusted corresponding to each fan, so that the temperature value of each board reaches a stable value. The temperature value of the board reaching a stable value means that the absolute value of the difference between the temperature value of the board and the target temperature value is smaller than the temperature threshold, that is, the temperature value of the board is close to the target temperature value and fluctuates slightly around the target temperature value.

[0042] For example, if the absolute value of the difference between the temperature value of each board and the target temperature value is less than the temperature threshold, i.e., if the temperature value of each board reaches a stable value, it may be determined that the network device is in a state where it needs to be regulated. If the network device is in a state where it needs to be regulated, the fan rotation speed may be controlled using a greedy algorithm instead of a PID algorithm, and the control process will be described in the following examples.

[0043] When the network device is in a state to be adjusted, update the initial fan duty cycle corresponding to each fan with the fan duty cycle to be adjusted corresponding to the fan, and control the fans based on the rotation speed corresponding to the initial fan duty cycle corresponding to each fan, for example, control fan 1 based on the rotation speed corresponding to the initial fan duty cycle corresponding to fan 1, control fan 2 based on the rotation speed corresponding to the initial fan duty cycle corresponding to fan 2, etc.

[0044] In one possible embodiment, after a network device is started, if the artificial intelligence fan speed adjustment algorithm is not enabled in the network device, the algorithm of this embodiment does not need to be adopted to realize fan speed control; after the artificial intelligence fan speed adjustment algorithm is enabled in the network device, the PID algorithm is used to realize fan speed control.

[0045] Second, when the network device is in a state where it needs to be adjusted, the fan rotation speed is controlled using a greedy algorithm until the target fan duty cycle of each fan is found, and the fan rotation speed is controlled using the target fan duty cycle of each fan. For example, the target fan duty cycle of each fan may be obtained using the following steps:

[0046] Step S11 (not shown) , determine the initial fan duty cycle currently employed by each fan.

[0047] Step S12 (not shown) In the above, based on the target order of the multiple fans, each fan is traversed in order as a candidate fan.

[0048] For example, suppose a plurality of fans are randomly sorted, the random order is the target order of the plurality of fans, and the target order is Fan 1, Fan 2, Fan 3. First, Fan 1 is traversed as a candidate fan, then Fan 2 is traversed as a candidate fan, and then Fan 3 is traversed as a candidate fan.

[0049] Step S13 (not shown) and determining a target fan duty cycle corresponding to the candidate fan by adjusting an initial fan duty cycle corresponding to the candidate fan multiple times to obtain a plurality of different candidate fan duty cycles. For each candidate fan duty cycle, obtaining reward data for a network device at the candidate fan duty cycle, determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data. Selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan.

[0050] For example, assume that Fan 1 corresponds to initial fan duty cycle 1, Fan 2 corresponds to initial fan duty cycle 2, and Fan 3 corresponds to initial fan duty cycle 3. When Fan 1 is traversed as a candidate fan, initial fan duty cycle 1 corresponding to Fan 1 is adjusted multiple times to obtain candidate fan duty cycle 1-1, candidate fan duty cycle 1-2, etc. Compensation data is obtained based on candidate fan duty cycle 1-1, initial fan duty cycle 2, and initial fan duty cycle 3, and a compensation parameter value corresponding to candidate fan duty cycle 1-1 is determined based on the compensation data. Compensation data is obtained based on candidate fan duty cycle 1-2, initial fan duty cycle 2, and initial fan duty cycle 3, and a compensation parameter value corresponding to candidate fan duty cycle 1-2 is determined based on the compensation data. If it is assumed that the compensation parameter value corresponding to candidate fan duty cycle 1-2 is the optimal compensation parameter value, candidate fan duty cycle 1-2 is set as the target fan duty cycle corresponding to Fan 1, and is denoted as target fan duty cycle 1-2.

[0051] When Fan 2 is traversed as a candidate fan, the initial fan duty cycle 2 corresponding to Fan 2 is adjusted multiple times to obtain candidate fan duty cycle 2-1, candidate fan duty cycle 2-2, etc. Compensation data is obtained based on target fan duty cycle 1-2 (initial fan duty cycle 1 of Fan 1 has already been adjusted to target fan duty cycle 1-2), candidate fan duty cycle 2-1, and initial fan duty cycle 3, and a compensation parameter value corresponding to candidate fan duty cycle 2-1 is determined based on the compensation data. In this manner, compensation parameter values ​​corresponding to each candidate fan duty cycle can be obtained. Assuming that the compensation parameter value corresponding to candidate fan duty cycle 2-1 is the optimal compensation parameter value, candidate fan duty cycle 2-1 is set as the target fan duty cycle corresponding to Fan 2. In this manner, the target fan duty cycles corresponding to each fan can be obtained.

[0052] For example, obtaining compensation data based on candidate fan duty cycle 1-1, initial fan duty cycle 2, and initial fan duty cycle 3 means controlling the rotation speed of fan 1 using candidate fan duty cycle 1-1 (initial fan duty cycle), controlling the rotation speed of fan 2 using initial fan duty cycle 2, and controlling the rotation speed of fan 3 using initial fan duty cycle 3, and then obtaining compensation data corresponding to the network device.

[0053] For example, adjusting initial fan duty cycle 1 multiple times to obtain multiple candidate fan duty cycles may involve first adjusting initial fan duty cycle 1 higher (or lower) during the first adjustment to obtain candidate fan duty cycle 1-1. During the second adjustment, if the reward parameter value corresponding to initial fan duty cycle 1 is better than the reward parameter value corresponding to candidate fan duty cycle 1-1, indicating that adjusting it higher will result in a worse reward parameter value, initial fan duty cycle 1 is adjusted lower to obtain candidate fan duty cycle 1-2. If the reward parameter value corresponding to candidate fan duty cycle 1-1 is better than the reward parameter value corresponding to initial fan duty cycle 1, indicating that adjusting it higher will result in a better reward parameter value, initial fan duty cycle 1 is then adjusted higher again to obtain candidate fan duty cycle 1-2. In this way, the fan duty cycle is adjusted in a direction that improves the reward parameter value with each adjustment, ultimately obtaining a locally optimal solution, i.e., a target fan duty cycle.

[0054] Exemplarily, the compensation data corresponding to the network devices may include, but is not limited to, a fan duty cycle corresponding to each fan (i.e., a currently employed fan duty cycle; if the initial fan duty cycle corresponding to the fan is adjusted to a candidate fan duty cycle, the candidate fan duty cycle is the compensation data; if the initial fan duty cycle corresponding to the fan is adjusted to a target fan duty cycle, the target fan duty cycle is the compensation data; if the initial fan duty cycle corresponding to the fan is not adjusted, the initial fan duty cycle is the compensation data), power supply power, power corresponding to all boards, and power corresponding to all fans.

[0055] For example, a total system power and a maximum fan duty cycle may be determined based on the reward data. Here, the reward data may include a fan duty cycle corresponding to each fan, and the maximum fan duty cycle may be the maximum value among all fan duty cycles. If the reward data includes power supply power, the total system power may be determined based on the power supply power. If the reward data includes power corresponding to each board and each fan, the total system power may be determined based on power corresponding to all boards and all fans. Then, a target noise value is determined based on the maximum fan duty cycle, and the reward parameter value is determined based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value.

[0056] For example, the reward parameter value may be determined based on, but not limited to, the following formula: r=ω1×E+ω2×N(S)

[0057] In the above equation, r represents the reward parameter value, ω1 represents the first weighting coefficient corresponding to the total system power E, and E represents the total system power. The total system power E may be determined based on the power supply power, that is, the total system power E is the power supply power. The total system power E may also be determined based on the power corresponding to all the boards and the power corresponding to all the fans, that is, the total system power E is the sum of the power corresponding to all the boards and the power corresponding to all the fans.

[0058] In the above equation, ω2 represents a second weighting factor corresponding to the target noise value N(S), S represents the maximum fan duty cycle, i.e., the maximum value of the fan duty cycles corresponding to all fans, i.e., the maximum fan duty cycle. N(S) represents the target noise value, N represents a preset function, and the preset function N is not limited and can be set based on experience. The preset function N represents the functional relationship between the maximum fan duty cycle and the target noise value. That is, the input of the preset function N is the maximum fan duty cycle, and the output of the preset function N is the target noise value. Therefore, the target noise value can be obtained by substituting the maximum fan duty cycle into the preset function N.

[0059] As can be seen from the above equation, the reward parameter value may be determined based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value.

[0060] In one possible embodiment, based on the user's requirements for energy saving and noise reduction, a first weighting factor ω1 corresponding to the total system power and a second weighting factor ω2 corresponding to the target noise value may be adjusted, where the first weighting factor ω1 represents the magnitude of the weight of the energy saving performance and the second weighting factor ω2 represents the magnitude of the weight of the noise reduction performance.

[0061] For example, the sum of the first weighting factor and the second weighting factor may be a fixed value (e.g., 1, i.e., ω1+ω2=1). The first weighting factor ω1 and the second weighting factor ω2 are adjusted based on a user's requirements for energy saving and noise reduction. For example, if the importance of energy saving is greater than the importance of noise reduction, the first weighting factor ω1 may be greater than the second weighting factor ω2, and if the importance of noise reduction is greater than the importance of energy saving, the first weighting factor ω1 may be smaller than the second weighting factor ω2. The values ​​of the first weighting factor ω1 and the second weighting factor ω2 are not limited in this embodiment, and the first weighting factor ω1 and the second weighting factor ω2 may be set based on experience.

[0062] In summary, each time an initial fan duty cycle corresponding to a candidate fan is adjusted to obtain a candidate fan duty cycle, reward data for the candidate fan duty cycle is collected, and a reward parameter value corresponding to the candidate fan duty cycle is obtained, thereby obtaining reward parameter values ​​corresponding to the multiple candidate fan duty cycles. An optimal reward parameter value, for example, the minimum reward parameter value, is selected from the reward parameter values ​​corresponding to the multiple candidate fan duty cycles, and the candidate fan duty cycle corresponding to the optimal reward parameter value is set as the target fan duty cycle to obtain a target fan duty cycle for each fan.

[0063] Step S14 (not shown) In the above, after obtaining the target fan duty cycle corresponding to each fan, the total number of fans among all the fans that meet the target condition is counted, and the fans that meet the target condition are fans whose fan duty cycles have not changed, that is, the target fan duty cycles of these fans are already locally optimal, and there is no need to adjust the target fan duty cycles of these fans.

[0064] For example, for each fan, if the target fan duty cycle corresponding to the fan is the same as the initial fan duty cycle corresponding to the fan, the fan satisfies the target condition, and if the target fan duty cycle corresponding to the fan is not the same as the initial fan duty cycle corresponding to the fan, the fan does not satisfy the target condition. After performing the above process for each fan, the total number of fans that satisfy the target condition can be obtained.

[0065] Step S15 (not shown) In step S10, it is determined whether the total number of fans who satisfy the target conditions is equal to or greater than a predetermined threshold (for example, the number of all fans * a%, where a may be 100, 90, etc.), and if so, step S16 is executed; if not, step S17 is executed. Step S16 (not shown) In step 100, the network device determines that it is in a steady state, i.e., obtains a target fan duty cycle corresponding to each fan, and controls the fan based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan.

[0066] Illustratively, when the total number of fans that meet the target condition is equal to or greater than a predetermined threshold, it indicates that the target fan duty cycles and the initial fan duty cycles corresponding to all or most of the fans are the same, i.e., the fan duty cycles have not changed, so the target fan duty cycles of these fans are already a local optimum solution, and since the optimal reward parameter value has been found, there is no need to continue adjusting the fan duty cycles, and the network device is considered to have reached a stable state, so the fan duty cycles are not adjusted.

[0067] In summary, a target fan duty cycle corresponding to each fan is obtained, and thus, the fan can be controlled based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan; this process will not be described here.

[0068] Step S17 (not shown) In step S12, it determines that the network device is in a state to be adjusted (i.e., the state has not changed), updates the initial fan duty cycle corresponding to each fan with the target fan duty cycle corresponding to that fan, and returns to execution at step S12.

[0069] Illustratively, if the total number of fans meeting the target condition is less than a predetermined threshold, it indicates that the target fan duty cycles corresponding to the majority of fans are not the same as the initial fan duty cycles, i.e., the fan duty cycles have changed, so the target fan duty cycles of these fans are not the local optimum, the optimal compensation parameter value has not yet been found, and the fan duty cycles need to be continuously adjusted.

[0070] When the fan duty cycles are subsequently adjusted, the initial fan duty cycles corresponding to each fan may be updated with the target fan duty cycles corresponding to the fan, and based on these initial fan duty cycles, step S12 (not shown) Step S12 may be executed again. (not shown) When re-executing, the target order (i.e., random order) of the multiple fans may be redetermined, the target order of the multiple fans may be changed, or the target order of the multiple fans may not be changed.

[0071] To summarize the above, step S12 (not shown) ~Step S17 (not shown) may be repeatedly performed to adjust the initial fan duty cycle corresponding to each fan multiple times until the total number of fans that satisfy the target condition is equal to or greater than a predetermined threshold and the network device is deemed to have reached a stable state, and a target fan duty cycle corresponding to each fan is output.

[0072] Third, to ensure the safety of the network device during operation, temperature detection may be performed on each temperature control point of the network device. If the temperature value of the temperature control point is greater than a predetermined temperature threshold, it indicates that the network device is in a dangerous high temperature state, i.e., the network device issues a temperature alarm. When the network device issues a temperature alarm, a PID algorithm may be used to determine the fan duty cycle to be adjusted for each fan based on the temperature value of each board of the network device, and the fan may be controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan, so that the absolute value of the difference between the temperature value of each board and the target temperature value is less than the temperature threshold, thereby ensuring the safety of the network device. For specific processes, see Section 1 and no further description is provided here.

[0073] Fourth, when the network device is in a stable state, the operating environment of the network device may be periodically detected. When the operating environment of the network device changes, the network device may be adjusted from the stable state to a state that needs to be adjusted. When the network device is in a state that needs to be adjusted, the greedy algorithm is again used to control the fan rotation speed until the target fan duty cycle of each fan is found, and the target fan duty cycle of each fan is used to control the fan rotation speed. The specific process of the greedy algorithm can be referred to in Section 2, and will not be described here.

[0074] If a board in the network device is removed or inserted, it is determined that the operating environment of the network device has changed. Alternatively, if the environmental temperature of the network device has changed significantly, it is determined that the operating environment of the network device has changed. Alternatively, if the transfer flow of the network device has increased significantly, it is determined that the operating environment of the network device has changed. Alternatively, if the transfer flow of the network device has decreased significantly, it is determined that the operating environment of the network device has changed. Of course, the above are only a few examples and are not limited thereto.

[0075] Because the operating environment of the network device is highly stable and not prone to change, the network device can maintain a stable state for a long time without repeatedly adjusting the target fan duty cycle of each fan.

[0076] For example, referring to step S16, when the network device is in a stable state, reward data of the network device at the target fan duty cycle (i.e., the reward data includes the target fan duty cycle of each fan) may be obtained, and a reward parameter value corresponding to the target fan duty cycle is determined based on the reward data, and is denoted as reward parameter value X1.

[0077] When the network device is in a stable state, reward data corresponding to the network device may be periodically obtained (the fan duty cycle among the reward data does not change, but the power supply power, the power corresponding to the board, and the power corresponding to the fan may change), and the reward parameter value X2 may be determined based on the reward data.

[0078] If the reward parameter value X2 is superior to the reward parameter value X1 and the difference between the reward parameter value X1 and the reward parameter value X2 is relatively large (for example, greater than a certain threshold), that is, if the reward parameter value changes significantly, the network device may be adjusted from a stable state to a state that needs to be adjusted. If the network device is in a state that needs to be adjusted, the greedy algorithm is again used to realize control of the fan rotation speed until the target fan duty cycle of each fan is found.

[0079] If reward parameter value X1 is superior to reward parameter value X2, or if reward parameter value X2 is superior to reward parameter value X1 but the difference between reward parameter value X1 and reward parameter value X2 is relatively small, the network device may be maintained in a stable state and there is no need to adjust the target fan duty cycle of each fan.

[0080] Fifth, obtain sample state data corresponding to the network device, and obtain a target behavior model and a target evaluation model by training based on the sample state data, where the sample state data may include sample state data when the network device is in a state to be adjusted and / or sample state data when the network device is in a stable state.

[0081] For example, the target motion model and the target evaluation model may be trained using the following steps.

[0082] In step S21, sample state data corresponding to the network device is obtained.

[0083] Exemplary sample state data corresponding to a network device may include, but is not limited to, at least one of sensor data corresponding to each board in the network device, system data corresponding to the network device, and a fan duty cycle corresponding to each fan (i.e., the currently operating fan duty cycle of the fan), where the sensor data corresponding to each board may include, but is not limited to, at least one of junction temperature data corresponding to a chip in the board, a maximum temperature corresponding to each temperature measurement point in the board, and a power corresponding to the board, and the system data may include, but is not limited to, at least one of an ambient temperature, a power supply power, and a power corresponding to each fan.

[0084] For example, when a network device is in a state to be adjusted or in a stable state, sample state data of the network device may be obtained at each collection period, and the interval between two adjacent collection periods may be set arbitrarily, for example, the interval may be 3 seconds, 5 seconds, 8 seconds, etc., and is not limited thereto.

[0085] For each board, if the board contains at least one chip among a MAC chip, a CPU (Central Processing Unit) chip, an FPGA (Field Programmable Gate Array) chip, an AI (Artificial Intelligent) chip, and an optical module chip, the junction temperature data (i.e., actual operating temperature) of these chips may be collected and used as sample state data corresponding to the network device.

[0086] For each board, if the board includes at least one temperature measurement point, temperature values ​​corresponding to each temperature measurement point within the board may be collected, and the maximum value among these temperature values ​​may be selected as the maximum temperature corresponding to each temperature measurement point within the board, and the maximum temperature may be used as sample status data corresponding to the network device.

[0087] For each board, the power corresponding to the board, ie, the power currently being used by the board, may be collected, and the power corresponding to the board may be taken as sample status data corresponding to the network device.

[0088] For a network device, the environmental temperature and power supply of the network device may be collected, and the environmental temperature and power supply of the network device may be used as sample status data corresponding to the network device.

[0089] For each fan, the power corresponding to the fan, i.e., the power currently being used by the fan, may be collected, and the power corresponding to the fan may be taken as sample status data corresponding to the network device.

[0090] For each fan, a fan duty cycle corresponding to the fan, i.e., a currently operating fan duty cycle, may be collected, indicating that the fan is rotating at a rotation speed corresponding to the fan duty cycle. Exemplarily, the fan duty cycle is used to indicate the rotation speed of the fan, and the fan duty cycle may be an integer value between the minimum fan duty cycle and the maximum fan duty cycle. For example, if the minimum fan duty cycle is 20 and the maximum fan duty cycle is 100, the fan duty cycle may be an integer value between 20 and 100, such as 20, 25, 50, 100, etc. Given that the maximum rotation speed of the fan is k (i.e., the maximum rotation speed supported by the fan) and the fan duty cycle is m, the fan rotation speed may be m%*k, which means that the fan rotation speed is m% of the maximum rotation speed k. For example, if the fan duty cycle is 20, it indicates that the fan rotation speed is 20% of the maximum rotation speed k.

[0091] In step S22, the set initial operation model and the set initial evaluation model are acquired.

[0092] In this embodiment, an initial operation model may be preset, and the input data of the initial operation model is the sample state data corresponding to the network device, and the output data of the initial operation model is the fan duty cycle corresponding to all the fans (for ease of distinction, the fan duty cycle is referred to as the sample fan duty cycle), that is, the sample fan duty cycle corresponding to all the fans of the network device as a whole is used as the output data of the initial operation model.

[0093] For example, the initial operating model may be a deep learning model or a neural network model, and the structure of the initial operating model is not limited, and may be set arbitrarily as long as the initial operating model can convert sample state data corresponding to network devices into sample fan duty cycles corresponding to all fans.

[0094] In this embodiment, an initial assessment model may be preset, and input data of the initial assessment model may be sample state data corresponding to the network device and sample fan duty cycles corresponding to all the fans (i.e., output data of the initial operation model), and output data of the initial assessment model may be a state operation value, where the state operation value is used to reflect the value of a state and an action, where the state may be the sample state data and the action may be the sample fan duty cycles corresponding to all the fans, i.e., the state operation value is used to reflect the value of the sample state data and the sample fan duty cycles corresponding to all the fans.

[0095] For example, the initial assessment model may be a deep learning model or a neural network model, and the structure of this initial assessment model is not limited, and may be set arbitrarily as long as the initial assessment model can convert sample state data and sample fan duty cycles corresponding to all fans into state operating values.

[0096] In one possible embodiment, the initial operating model and the initial evaluation model may be a network model based on the DDPG (Deep Deterministic Policy Gradient) algorithm, or may be a network model based on other algorithms, and are not limited thereto. For convenience of explanation, this embodiment takes the initial operating model and the initial evaluation model based on the DDPG algorithm as an example.

[0097] For example, Figure 3 shows examples of an initial operating model and an initial evaluation model based on the DDPG algorithm. The actor network is the initial operating model, and the critic network is the initial evaluation model. S is input data for the initial operating model, and S is also input data for the initial evaluation model. In this embodiment, S represents sample state data corresponding to a network device. A is output data for the initial operating model, and A is also input data for the initial evaluation model. In this embodiment, A represents sample fan duty cycles (i.e., actions of the actor network) corresponding to all fans. Q is output data for the initial evaluation model. In this embodiment, Q represents a state operation value.

[0098] The DDPG algorithm is a deep deterministic policy gradient algorithm proposed for controlling continuous actions. Because the action space targeted by the DDPG algorithm is not discrete, it solves the problem of discrete actions. The deterministic policy of the DDPG algorithm is for stochastic policies. The action set can include continuous values ​​and high-dimensional discrete values, making the action space highly dimensional. The DDPG algorithm simplifies this problem by using a deterministic policy. In the DDPG algorithm, determinism means that continuous actions output a single specific value. When actions are discrete, the output is the magnitude of the probability of each action occurring based on the goal of maximizing long-term profit. When actions are continuous, the output is only a single specific value representing a specific action, resulting in a deterministic policy.

[0099] Based on the above principles of the DDPG algorithm, in this embodiment, an initial operating model and an initial evaluation model may be implemented based on the DDPG algorithm. The DDPG algorithm is based on an actor-critic architecture and processes a continuous operating space based on the actor-critic architecture. Therefore, an actor network may be used as the initial operating model and a critic network may be used as the initial evaluation model. In this embodiment, the continuous operating space refers to sample fan duty cycles corresponding to all fans. For each sample fan duty cycle, the sample fan duty cycle may be a continuous integer value between the minimum and maximum fan duty cycles, rather than a discrete integer value between the minimum and maximum fan duty cycles. For example, the sample fan duty cycle may be a continuous integer value between 20, 21, 22, ..., 100, rather than a discrete integer value between 20, 25, 30, 35, ..., 100.

[0100] In step S23, the sample state data is input into an initial operation model to obtain a sample fan duty cycle corresponding to each fan (i.e., an Action of the initial operation model), and the sample state data and the sample fan duty cycle corresponding to each fan are input into an initial evaluation model to obtain a state operation value corresponding to the sample state data.

[0101] For example, sample state data S corresponding to a network device is used as input data for an initial operation model, the sample state data S is processed by the initial operation model to obtain a sample fan duty cycle A corresponding to each fan, and the sample fan duty cycle A corresponding to all fans is the Action of the initial operation model.

[0102] The sample state data S corresponding to the network device and the sample fan duty cycle A corresponding to each fan are used as input data of the initial evaluation model, and the initial evaluation model performs processing based on the sample state data S and the sample fan duty cycle A corresponding to each fan to obtain a state operation value Q corresponding to the sample state data S, which may also be called a function value Q and is the output data of the initial evaluation model.

[0103] In step S24, a reward parameter value corresponding to the state action value is determined based on the sample state data.

[0104] For example, a total system power and a maximum fan duty cycle may be determined based on the sampled state data. Here, the sampled state data may include a fan duty cycle corresponding to each fan, and the maximum fan duty cycle may be the maximum value of all fan duty cycles. If the sampled state data includes a power supply power, the total system power may be determined based on the power supply power. If the sampled state data includes a power corresponding to each board and each fan, the total system power may be determined based on the power corresponding to all boards and all fans. Then, a target noise value may be determined based on the maximum fan duty cycle. Then, a reward parameter value corresponding to the state operating value may be determined based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value. For the process of determining the reward parameter value based on the total system power and the maximum fan duty cycle, please refer to step S13 and will not be repeated here.

[0105] In step S25, a first error value corresponding to the initial operating model is determined based on the state operating value, the network parameters of the initial operating model are adjusted based on the first error value to obtain an adjusted operating model, a second error value corresponding to the initial evaluation model is determined based on the reward parameter value and the state operating value, the network parameters of the initial evaluation model are adjusted based on the second error value to obtain an adjusted evaluation model.

[0106] For example, an error function (i.e., a loss function) corresponding to the initial operation model may be set. The error function may be set based on experience. There is no limitation on the error function. For example, an example of the error function is: L(Θ v )=-critic(s, a), and of course, the above equation is only an example of the error function, and there is no limitation on this error function as long as the error function is related to the state action value.

[0107] Based on this, L(Θ v The first error value may be determined based on the formula: L(Θ) = -critic(s,a), where L(Θ v ) represents the first error value, s represents sample state data, a represents the sample fan duty cycle, and critic(s, a) represents the state operating value. In summary, by inputting the sample state data s into the initial operating model, a sample fan duty cycle a corresponding to each fan can be obtained. Then, by inputting the sample state data s and the sample fan duty cycle a corresponding to each fan into the initial evaluation model, the state operating value critic(s, a) is obtained. After the state operating value critic(s, a) is obtained, the state operating value critic(s, a) is substituted into the above equation to obtain the first error value L(Θ v ) can be obtained. Obviously, the larger the state action value critic(s, a), the larger the first error value L(Θ v ) becomes smaller, and the smaller the state action value critic(s, a), the smaller the first error value L(Θ v ) becomes larger.

[0108] The first error value L(Θ v), the first error value L(Θ v ), the network parameters of the initial operating model can be adjusted based on the first error value L(Θ v ) is made smaller and smaller, that is, the first error value L(Θ v ) to obtain the adjusted operating model.

[0109] For example, an error function (i.e., loss function) corresponding to the initial evaluation model may be set. The error function may be set based on experience. There is no limitation on the error function. For example, an example of the error function is: L(Θ u )=1 / 2(r'-critic(s,a)) 2 Of course, the above equation is merely an example of the error function, and any error function may be used as long as it relates to the reward parameter value and the state operation value.

[0110] Based on this, L(Θ u )=1 / 2(r'-critic(s,a)) 2 The second error value is determined based on the formula: L(Θ u ) represents the second error value, s represents sample state data, a represents sample fan duty cycle, critic(s,a) represents the state operating value, and r' represents the reward parameter value. In summary, by inputting the sample state data s into the initial operating model, a sample fan duty cycle a corresponding to each fan can be obtained. Then, by inputting the sample state data s and the sample fan duty cycle a corresponding to each fan into the initial evaluation model, the state operating value critic(s,a) is obtained. After obtaining the state operating value critic(s,a), the state operating value critic(s,a) and the reward parameter value r' are substituted into the above equation to obtain the second error value L(Θ u ) can be obtained.

[0111] Obviously, the larger the state action value critic(s, a), the larger the second error value L(Θ u ) becomes smaller, and the smaller the state action value critic(s, a), the smaller the second error value L(Θu ) becomes larger. The larger the reward parameter value r', the larger the second error value L(Θ u ) becomes larger, and the smaller the reward parameter value r', the smaller the second error value L(Θ u ) becomes smaller.

[0112] The second error value L(Θ u ), the second error value L(Θ u ) can be adjusted based on the network parameters of the initial evaluation model, and there is no limitation on this adjustment process. The goal of the adjustment is to obtain the second error value L(Θ u ) is made smaller and smaller, that is, the second error value L(Θ u ) to obtain the adjusted valuation model.

[0113] For example, assume that sample state data a1 is acquired in the first collection cycle, sample state data a2 is acquired in the second collection cycle, and sample state data a3 is acquired in the third collection cycle. If sample state data a1 (i.e., the current state) is sample state data s, sample state data a2 (i.e., the next state) is sample state data s', and if sample state data a2 is sample state data s, sample state data a3 is sample state data s'. Based on the above formula r = ω1 × E + ω2 × N(S), a reward parameter value r corresponding to sample state data s is obtained, and a reward parameter value r' corresponding to sample state data s' is obtained. In summary, when determining the second error value, the reward parameter value r' is the reward parameter value corresponding to the state next to the current state.

[0114] In step S26, it is determined whether the adjusted operation model and the adjusted evaluation model have converged.

[0115] If the adjusted operation pattern and the adjusted evaluation pattern have converged, step S27 is executed.

[0116] If the adjusted operation model and / or the adjusted evaluation model have not converged, step S28 is executed.

[0117] For example, if the first error value satisfies a first convergence condition, it may be determined that the adjusted behavioral model has converged, and if the first error value does not satisfy the first convergence condition, it may be determined that the adjusted behavioral model has not converged. The first convergence condition may be set based on experience, and is not limited thereto. For example, if the first error value is within a certain predetermined value interval, the first error value satisfies the first convergence condition, and if not, the first error value does not satisfy the first convergence condition.

[0118] If the second error value satisfies the second convergence condition, it may be determined that the adjusted valuation model has converged, and if the second error value does not satisfy the second convergence condition, it may be determined that the adjusted valuation model has not converged. The second convergence condition may be set based on experience, and is not limited thereto, for example, if the second error value is within a certain predetermined value interval, the second error value satisfies the second convergence condition, and if not, the second error value does not satisfy the second convergence condition.

[0119] Furthermore, for example, if the number of repeated adjustments of the initial operation model reaches a first number threshold (which may be set based on experience and is not limited to this), it may be determined that the adjusted operation model has converged, and if the number of repeated adjustments of the initial operation model does not reach the first number threshold, it may be determined that the adjusted operation model has not converged.

[0120] If the number of repeated adjustments of the initial evaluation model reaches a second threshold number (which may be set based on experience and is not limited thereto), it may be determined that the adjusted evaluation model has converged, and if the number of repeated adjustments of the initial evaluation model does not reach the second threshold number, it may be determined that the adjusted evaluation model has not converged.

[0121] Furthermore, for example, if the repeated adjustment time length of the initial behavior model reaches a first time length threshold (which may be set based on experience and is not limited to this), it may be determined that the adjusted behavior model has converged, and if the repeated adjustment time length of the initial behavior model does not reach the first time length threshold, it may be determined that the adjusted behavior model has not converged.

[0122] If the length of time for repeated adjustment of the initial evaluation model reaches a second time length threshold (which may be set based on experience and is not limited thereto), it may be determined that the adjusted evaluation model has converged, and if the length of time for repeated adjustment of the initial evaluation model does not reach the second time length threshold, it may be determined that the adjusted evaluation model has not converged.

[0123] Of course, the above are merely a few examples of determining whether the adjusted operating model and the adjusted evaluation model have converged, and the determination method is not limited to this, and any determination method may be set according to actual needs.

[0124] In step S27, the adjusted motion model is determined as a target motion model, and the adjusted evaluation model is determined as a target evaluation model. Up to this point, the training process of the initial motion model and the initial evaluation model is completed, and a trained target motion model and a trained target evaluation model are obtained.

[0125] In step S28, the adjusted operation model is determined as the initial operation model, and the adjusted evaluation model is determined as the initial evaluation model, and the process returns to the execution of steps S23, S25 and S26.

[0126] Sixth, when the network device is in a stable state, the DDPG model (the target operation model and the target evaluation model) may be periodically used to determine whether the Greedy algorithm needs to be restarted. If necessary, the network device is adjusted from the stable state to a state requiring adjustment. When the network device is in a state requiring adjustment, the Greedy algorithm is again used to control the fan rotation speed until the target fan duty cycle for each fan is found. The target fan duty cycle for each fan is used to control the fan rotation speed. The specific process of the Greedy algorithm can be referred to in Section 2 and is not described here. If not necessary, the network device is maintained in a stable state, and there is no need to re-determine the target fan duty cycle for each fan. That is, the target fan duty cycle for each fan is maintained as is (i.e., the target fan duty cycle determined in Section 2 is maintained). Wait for the next detection period, and continue to use the DDPG model to determine whether the Greedy algorithm needs to be restarted. For example, the following steps may be used to determine whether to adjust the target fan duty cycle:

[0127] In step S31, if the network device is in a stable state, the detected state data corresponding to the network device is obtained.

[0128] Exemplary detected status data corresponding to a network device may include, but is not limited to, at least one of sensor data corresponding to each board in the network device, system data corresponding to the network device, and fan duty cycles corresponding to each fan (i.e., currently operating fan duty cycles, or target fan duty cycles). Here, the sensor data corresponding to each board may include, but is not limited to, at least one of junction temperature data corresponding to a chip in the board, a maximum temperature corresponding to each temperature measurement point in the board, and a power corresponding to the board, and the system data may include, but is not limited to, at least one of an ambient temperature, a power supply power, and a power corresponding to each fan.

[0129] For each board, if the board includes at least one of a MAC chip, a CPU chip, an FPGA chip, an AI chip, and an optical module chip, the junction temperature data (i.e., actual operating temperatures) of these chips are collected and used as the detected status data for the network device. If the board includes at least one temperature measurement point, the temperature values ​​corresponding to each temperature measurement point on the board may be collected, and the maximum of these temperature values ​​may be selected as the maximum temperature corresponding to each temperature measurement point on the board, and used as the detected status data for the network device. The power corresponding to the board, i.e., the power currently being used by the board, may be collected and used as the detected status data for the network device.

[0130] For a network device, the environmental temperature and power supply of the network device may be collected, and the environmental temperature and power supply of the network device may be used as detected status data corresponding to the network device.

[0131] For each fan, the power corresponding to the fan, i.e., the power currently being used by the fan, may be collected, and the power corresponding to the fan may be used as the detected status data corresponding to the network device.

[0132] For each fan, a fan duty cycle corresponding to the fan may be collected, indicating that the fan is rotating at a rotation speed corresponding to the fan duty cycle, and the fan duty cycle corresponding to the fan may be used as detected status data corresponding to the network device. Exemplarily, the fan duty cycle is used to indicate the rotation speed of the fan, and the fan duty cycle may be an integer value between a minimum fan duty cycle and a maximum fan duty cycle. Given that the maximum rotation speed of the fan is k and the fan duty cycle is m, the rotation speed of the fan may be m%*k, i.e., the rotation speed of the fan is m% of the maximum rotation speed k.

[0133] In step S32, the sensed state data is input into a trained target operating model to obtain an output fan duty cycle corresponding to each fan, where the output fan duty cycles corresponding to different fans are the same or different.

[0134] For example, the input data of the initial operational model is sample state data, and the output data of the initial operational model is sample fan duty cycles corresponding to all fans, i.e., the sample fan duty cycles corresponding to all fans of the network device are taken as the output data of the initial operational model. After training based on this, the input data of the target operational model is detected state data, and the output data of the target operational model is output fan duty cycles corresponding to all fans (for ease of distinction, the fan duty cycles output by the target operational model will be referred to as output fan duty cycles), i.e., the output fan duty cycles corresponding to all fans of the network device are taken as the output data of the target operational model.

[0135] In step S32, the detected state data corresponding to the network device may be input into a target operation model, and the detected state data may be processed by the target operation model. This processing process is not limited, and the output fan duty cycle corresponding to each fan is obtained, and the output fan duty cycles corresponding to different fans are the same or different.

[0136] For example, after inputting the detected state data into the target operation model, the output fan duty cycle corresponding to Fan 1, the output fan duty cycle corresponding to Fan 2, . . . can be obtained.

[0137] In step S33, a first reward parameter value corresponding to the output fan duty cycle is determined based on the reward data of the network device at the output fan duty cycle corresponding to each fan, and a second reward parameter value corresponding to the target fan duty cycle is determined based on the reward data of the network device at the target fan duty cycle corresponding to each fan.

[0138] Exemplarily, compensation data of the network device at the output fan duty cycle (i.e., the compensation data includes the output fan duty cycle corresponding to each fan, and the power supply power, the power corresponding to the board, and the power corresponding to the fan, etc. in the compensation data correspond to the output fan duty cycle) may be obtained, and a first compensation parameter value corresponding to the output fan duty cycle may be determined based on the compensation data. Compensation data of the network device at the target fan duty cycle (i.e., the compensation data includes the target fan duty cycle corresponding to each fan, and the power supply power, the power corresponding to the board, and the power corresponding to the fan, etc. in the compensation data correspond to the target fan duty cycle) may be obtained, and a second compensation parameter value corresponding to the target fan duty cycle may be determined based on the compensation data. For the process of determining the first compensation parameter value or the second compensation parameter value based on the compensation data, please refer to step S13 and will not be repeated here.

[0139] In step S34, it is determined whether the first reward parameter value is superior to the second reward parameter value.

[0140] If the first reward parameter value is better than the second reward parameter value, execute step S35.

[0141] If the first reward parameter value is not superior to the second reward parameter value, then execute step S36.

[0142] In step S35, it is determined that the network device is in a state where adjustment is required, and the initial fan duty cycle corresponding to each fan is updated with the output fan duty cycle corresponding to the fan, and the Greedy algorithm is again used to control the fan rotation speed until the target fan duty cycle for each fan is found, and the target fan duty cycle for each fan is used to control the fan rotation speed. The specific process of the Greedy algorithm can be referred to in Section 2 and will not be described here.

[0143] Illustratively, when the network device is in a stable state, an output fan duty cycle corresponding to each fan may be obtained based on a target operation model; when a first reward parameter value corresponding to the output fan duty cycle is better than a second reward parameter value corresponding to the target fan duty cycle, it indicates that the target fan duty cycle needs to be optimized, and the network device may be adjusted from the stable state to a state to be adjusted; when the network device is in a state to be adjusted, the greedy algorithm is again used to realize control of the fan rotation speed until the target fan duty cycle for each fan is found.

[0144] In step S36, it is determined that the network device is in a stable state, and the output fan duty cycle corresponding to each fan is restored to the target fan duty cycle corresponding to the fan, and the target fan duty cycle is subsequently used to realize control of the fan rotation speed.

[0145] Illustratively, when the network device is in a stable state, an output fan duty cycle corresponding to each fan may be obtained based on a target operation model; if a first reward parameter value corresponding to the output fan duty cycle is not better than a second reward parameter value corresponding to the target fan duty cycle, it indicates that there is no need to optimize the target fan duty cycle, and the network device is maintained in the stable state, and the output fan duty cycle corresponding to each fan is restored to the target fan duty cycle corresponding to the fan; and the target fan duty cycle corresponding to each fan is subsequently used to realize control of the fan rotation speed.

[0146] As can be seen from the above technical solution, the embodiment of the present invention effectively controls the rotation speed of each fan, reducing fan power consumption and noise, preventing the network device from overheating, while ensuring low fan noise and power consumption. This achieves the goals of energy saving and noise reduction, meeting the energy saving and noise reduction requirements of network devices, reducing noise pollution, reducing the intake of airborne harmful substances such as dust, and reducing corrosion to network devices. Based on the user's requirements for energy saving and noise reduction, the weighting coefficient is autonomously adjusted, an appropriate reward function is set, and a reward parameter value is obtained. To ensure the safety of network devices, the temperature control points of each network device can be detected, and if a high temperature danger state is detected, the PID algorithm is forcibly switched to ensure the safety of the network device. A locally optimal stable state can be found using a Greedy algorithm, or a DDPG algorithm can be used to introduce new disturbances into the network device, which is beneficial for finding a global optimal solution for the network device.

[0147] Based on the same idea as the above method, an embodiment of the present invention provides a fan rotation speed control device applied to a network device including multiple fans, and FIG. 4 is a schematic diagram showing the structure of the device, and when the network device is in a state to be adjusted, the device: a determination module 41 for determining an initial fan duty cycle currently being employed by each fan; a processing module (42) for sequentially traversing each fan as a candidate fan based on a target order of the plurality of fans, adjusting an initial fan duty cycle corresponding to the candidate fan a plurality of times to obtain a plurality of different candidate fan duty cycles, obtaining, for each candidate fan duty cycle, reward data of the network device at the candidate fan duty cycle, determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data, selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; and a control module 43 for, after obtaining the target fan duty cycle corresponding to each fan, controlling the fan based on the rotation speed corresponding to the target fan duty cycle corresponding to each fan when the network device is in a stable state.

[0148] Illustratively, after the processing module 42 obtains the target fan duty cycle corresponding to each fan, if the network device is in a state to be adjusted, it is further used to update the initial fan duty cycle corresponding to each fan with the target fan duty cycle corresponding to the fan, and return to executing sequentially traversing each fan as a candidate fan based on the target order of the multiple fans, and if the total number of fans that satisfy the target condition is equal to or greater than a predetermined threshold, the network device is in a stable state; otherwise, the network device is in a state to be adjusted, and for each fan, if the target fan duty cycle corresponding to the fan and the initial fan duty cycle corresponding to the fan are the same, the fan satisfies the target condition; otherwise, the fan does not satisfy the target condition.

[0149] Exemplarily, when the processing module 42 determines a reward parameter value corresponding to the candidate fan duty cycle based on the reward data, it specifically determines a total system power and a maximum fan duty cycle based on the reward data, determines a target noise value based on the maximum fan duty cycle, and determines the reward parameter value based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value, wherein the reward data includes a fan duty cycle corresponding to each fan, and the maximum fan duty cycle is the maximum value among all fan duty cycles. If the reward data includes power supply power, it determines the total system power based on the power supply power. If the reward data includes power corresponding to each board and power corresponding to each fan, it determines the total system power based on the power corresponding to all boards and all fans.

[0150] For example, the sum of the first weighting factor and the second weighting factor is a fixed value, and when the importance of energy saving is greater than the importance of noise reduction, the first weighting factor is greater than the second weighting factor, and when the importance of noise reduction is greater than the importance of energy saving, the first weighting factor is less than the second weighting factor.

[0151] For example, after the network device is powered on and started up, or after the network device issues a temperature alarm, the determination module 41 is further used to determine the fan duty cycle to be adjusted corresponding to each fan based on the temperature value of each board of the network device, and when the fan is controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted corresponding to each fan, the absolute value of the difference between the temperature value of each board and the target temperature value can be made smaller than the temperature threshold value; the determination module 41 is further used to determine that the network device is in a state that needs to be adjusted if the absolute value of the difference between the temperature value of each board and the target temperature value is smaller than the temperature threshold value, and to update the initial fan duty cycle corresponding to each fan with the fan duty cycle to be adjusted corresponding to the fan; and the control module 43 is further used to control the fan based on the rotation speed corresponding to the initial fan duty cycle corresponding to each fan.

[0152] Illustratively, when the network device is in a stable state, the processing module 42 further acquires detected state data corresponding to the network device, inputs the detected state data into a trained target operation model to obtain an output fan duty cycle corresponding to each fan, determines a first reward parameter value corresponding to the output fan duty cycle based on the reward data of the network device at the output fan duty cycle corresponding to each fan, determines a second reward parameter value corresponding to the target fan duty cycle based on the reward data of the network device at the target fan duty cycle corresponding to each fan, and determines that the network device is in a state to be adjusted if the first reward parameter value is better than the second reward parameter value, updates the initial fan duty cycle corresponding to each fan with the output fan duty cycle corresponding to the fan, and returns to perform sequentially traversing each fan as a candidate fan based on the target order of the multiple fans, wherein the output fan duty cycles corresponding to different fans are the same or different.

[0153] Illustratively, the detected status data corresponding to the network device includes sensor data corresponding to each board in the network device, system data corresponding to the network device, and a target fan duty cycle corresponding to each fan, the sensor data corresponding to each board includes at least one of junction temperature data corresponding to a chip in the board, a maximum temperature corresponding to each temperature measurement point in the board, and a power corresponding to the board, and the system data includes at least one of an ambient temperature, a power supply power, and a power corresponding to each fan.

[0154] Exemplarily, the fan rotation speed control device further includes a training module for obtaining the target operating model through training. When the training module obtains the target operating model through training, specifically, when the network device is in a stable state, it acquires sample state data corresponding to the network device, inputs the sample state data into an initial operating model, obtains sample fan duty cycles corresponding to each fan, inputs the sample state data and the sample fan duty cycles corresponding to each fan into an initial evaluation model, obtains state operating values ​​corresponding to the sample state data, determines reward parameter values ​​corresponding to the state operating values ​​based on the sample state data, trains the initial operating model and the initial evaluation model based on the reward parameter values ​​and the state operating values, and obtains a trained target operating model and a target evaluation model.

[0155] Exemplarily, when the training module trains the initial operating model and the initial evaluation model based on the reward parameter value and the state operating value to obtain a trained target operating model and a target evaluation model, it specifically determines a first error value corresponding to the initial operating model based on the state operating value, adjusts network parameters of the initial operating model based on the first error value, obtains an adjusted operating model, determines a second error value corresponding to the initial evaluation model based on the reward parameter value and the state operating value, adjusts network parameters of the initial evaluation model based on the second error value, obtains an adjusted evaluation model, and if the adjusted operating model and the adjusted evaluation model have converged, determines the adjusted operating model as the target operating model and determines the adjusted evaluation model as the target evaluation model; and if the adjusted operating model and / or the adjusted evaluation model have not converged, determines the adjusted operating model as the initial operating model and determines the adjusted evaluation model as the initial evaluation model, and returns to executing the step of inputting the sample state data into the initial operating model.

[0156] Based on the same idea as the above method, an embodiment of the present invention provides a network device, and as shown in FIG. 5, the network device includes a processor 51 and a machine-readable storage medium 52, the machine-readable storage medium 52 stores machine-executable instructions executable by the processor 51, and the processor 51 is used to execute the machine-executable instructions to implement the fan rotation speed control method disclosed in the above embodiment of the present invention.

[0157] Based on the same idea as the above method, an embodiment of the present invention further provides a machine-readable storage medium, in which some computer instructions are stored, and when the computer instructions are executed by a processor, the fan rotation speed control method disclosed in the above example of the present invention can be implemented.

[0158] Here, the machine-readable storage medium may be an electronic, magnetic, optical, or other physical storage device that can store or remember information such as executable instructions, data, etc. For example, the machine-readable storage medium may be a RAM (Random Access Memory), a volatile memory, a non-volatile memory, a flash memory, a storage drive (e.g., a hard disk drive), a solid-state drive, any type of storage disk (e.g., an optical disk, a DVD, etc.), or a similar storage medium, or a combination thereof.

[0159] The systems, devices, modules, or units described in the above embodiments may be specifically realized by computer chips, entities, or products having certain functions. A typical realizing device is a computer, and the specific form of the computer may be a personal computer, a laptop computer, a mobile phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email sending / receiving device, a game console, a tablet, a wearable device, or any combination of these devices.

[0160] For ease of explanation, the above-described device will be described by dividing it into various units according to their functions. Of course, when implementing the present invention, the functions of each unit can be realized by the same or multiple pieces of software and / or hardware.

[0161] As will be appreciated by those skilled in the art, embodiments of the present invention may be provided as a method, a system, or a computer program product. Accordingly, the present invention may employ embodiments consisting entirely of hardware, entirely of software, or a combination of software and hardware. Furthermore, embodiments of the present invention may take the form of a computer program product embodied in one or more computer-usable storage media (including, but not limited to, magnetic disk memory, CD-ROM, optical memory, etc.) containing computer-usable program code.

[0162] The present invention will be described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and combinations of flows and / or blocks in the flowcharts and / or block diagrams, may be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, whereby the instructions, executed by the processor of the computer or other programmable data processing device, generate an apparatus for implementing the functions specified in one or more flows in the flowcharts and / or one or more blocks in the block diagrams.

[0163] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer-readable memory result in an article of manufacture that includes an instruction apparatus that implements the functions specified in one or more flows of the flowcharts and / or one or more blocks of the block diagrams.

[0164] These computer program instructions may be loaded into a computer or other programmable data processing device, whereby a series of operational steps are executed on the computer or other programmable device to generate a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more flows of the flowcharts and / or one or more blocks of the block diagrams.

[0165] The above is merely an example of the present invention and is not intended to limit the present invention. Those skilled in the art may make various modifications and changes to the present invention. Any modifications, equivalent replacements, improvements, etc. made without departing from the spirit and principles of the present invention should be included in the scope of the claims of the present invention.

Claims

1. 1. A method for controlling the rotation speed of a fan applied to a network device including multiple fans, comprising: determining an initial fan duty cycle currently being employed by each fan; traversing each fan as a candidate fan in sequence based on a target order of the plurality of fans; adjusting an initial fan duty cycle corresponding to the candidate fan a plurality of times to obtain a plurality of different candidate fan duty cycles; obtaining, for each candidate fan duty cycle, reward data for the network device at the candidate fan duty cycle; determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data; selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles; and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; and after obtaining a target fan duty cycle corresponding to each fan, when the network device is in a stable state, controlling the fan based on a rotation speed corresponding to the target fan duty cycle corresponding to each fan; determining a compensation parameter value corresponding to the candidate fan duty cycle based on the compensation data, determining a total system power and a maximum fan duty cycle based on the compensation data, wherein the compensation data includes a fan duty cycle corresponding to each fan, the maximum fan duty cycle being the maximum of all fan duty cycles, and when the compensation data includes a power source power, determining the total system power based on the power corresponding to all boards and all fans when the compensation data includes a power corresponding to each board and a power corresponding to each fan in the network device; determining a target noise value based on the maximum fan duty cycle; determining the reward parameter value based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value; A method for controlling the rotation speed of a fan.

2. After obtaining the target fan duty cycle corresponding to each fan, if the network device is in a state to be adjusted, further comprising: updating an initial fan duty cycle corresponding to each fan with the target fan duty cycle corresponding to the fan; and returning to the step of sequentially traversing each fan as a candidate fan based on the target order of the plurality of fans; If the total number of fans that meet the target condition is equal to or greater than a predetermined threshold, determine that the network device is in a stable state; otherwise, determine that the network device is in a state that requires adjustment; For each fan, if the target fan duty cycle corresponding to the fan and the initial fan duty cycle corresponding to the fan are the same, the fan is meeting the target condition; otherwise, the fan is not meeting the target condition.

2. The method of claim 1 .

3. the sum of the first weighting coefficient and the second weighting coefficient is a fixed value, If the importance of energy saving is greater than the importance of noise reduction, the first weighting factor is greater than the second weighting factor; When the importance of noise reduction is greater than the importance of energy conservation, the first weighting factor is less than the second weighting factor.

2. The method of claim 1 .

4. After the network device is powered on and started up, or after the network device issues a temperature alarm, determining a fan duty cycle to be adjusted for each fan based on the temperature value of each board of the network device, wherein controlling the fan based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan allows the absolute value of the difference between the temperature value of each board and a target temperature value to be smaller than a temperature threshold value; If the absolute value of the difference between the temperature value of each board and the target temperature value is less than the temperature threshold, determining that the network device is in a state to be adjusted, updating the initial fan duty cycle corresponding to each fan with the fan duty cycle to be adjusted corresponding to the fan, and controlling the fan based on the rotation speed corresponding to the initial fan duty cycle corresponding to each fan; 2. The method of claim 1 .

5. If the network device is in a stable state, obtaining detected status data corresponding to the network device; inputting the sensed condition data into a trained target operating model to obtain an output fan duty cycle corresponding to each fan, wherein the output fan duty cycles corresponding to different fans are the same or different; determining a first compensation parameter value corresponding to an output fan duty cycle based on compensation data of the network device at the output fan duty cycle corresponding to each fan, and determining a second compensation parameter value corresponding to a target fan duty cycle based on compensation data of the network device at the target fan duty cycle corresponding to each fan; if the first reward parameter value is superior to the second reward parameter value, determining that the network device is in a state to be adjusted, updating an initial fan duty cycle corresponding to each fan with an output fan duty cycle corresponding to the fan, and returning to performing the step of sequentially traversing each fan as a candidate fan based on a target order of the plurality of fans.

2. The method of claim 1 .

6. the detected status data corresponding to the network device includes sensor data corresponding to each board in the network device, system data corresponding to the network device, and a target fan duty cycle corresponding to each fan; the sensor data corresponding to each board includes at least one of junction temperature data corresponding to a chip in the board, a maximum temperature corresponding to each temperature measurement point in the board, and a power corresponding to the board, and the system data includes at least one of an environmental temperature, a power supply power, and a power corresponding to each fan; 6. The method of claim 5.

7. Before inputting the detected state data into a trained target motion model, the training process of the target motion model includes: If the network device is in a steady state, obtaining sample state data corresponding to the network device; inputting the sample state data into an initial operating model to obtain a sample fan duty cycle corresponding to each fan; inputting the sample state data and the sample fan duty cycle corresponding to each fan into an initial evaluation model to obtain a state operating value corresponding to the sample state data; determining a reward parameter value corresponding to the state performance value based on the sample state data; training the initial behavior model and the initial evaluation model based on the reward parameter value and the state behavior value to obtain a trained target behavior model and a target evaluation model; 6. The method of claim 5.

8. training the initial behavior model and the initial evaluation model based on the reward parameter value and the state behavior value to obtain a trained target behavior model and a target evaluation model, determining a first error value corresponding to an initial operating model based on the state operating value, adjusting a network parameter of the initial operating model based on the first error value, and obtaining an adjusted operating model; determining a second error value corresponding to an initial evaluation model based on the reward parameter value and the state operating value, and adjusting a network parameter of the initial evaluation model based on the second error value, and obtaining an adjusted evaluation model; When the adjusted operation model and the adjusted evaluation model have converged, determining the adjusted operation model as the target operation model and determining the adjusted evaluation model as the target evaluation model; If the adjusted operational model and / or the adjusted evaluation model have not converged, determining the adjusted operational model as the initial operational model, determining the adjusted evaluation model as the initial evaluation model, and returning to the step of inputting the sample state data into the initial operational model.

8. The method of claim 7.

9. A fan rotation speed control device applied to a network device including multiple fans, when the network device is in a state to be adjusted, a determination module for determining an initial fan duty cycle currently employed by each fan; a processing module for sequentially traversing each fan as a candidate fan based on a target order of the plurality of fans, adjusting an initial fan duty cycle corresponding to the candidate fan a plurality of times to obtain a plurality of different candidate fan duty cycles, obtaining, for each candidate fan duty cycle, reward data of the network device at the candidate fan duty cycle, determining a reward parameter value corresponding to the candidate fan duty cycle based on the reward data, selecting an optimal reward parameter value from the reward parameter values ​​corresponding to the plurality of candidate fan duty cycles, and determining the candidate fan duty cycle corresponding to the optimal reward parameter value as a target fan duty cycle corresponding to the candidate fan; a control module for, after obtaining a target fan duty cycle corresponding to each fan, controlling the fan based on a rotation speed corresponding to the target fan duty cycle corresponding to each fan when the network device is in a stable state; Specifically, when the processing module determines a compensation parameter value corresponding to the candidate fan duty cycle based on the compensation data, determining a total system power and fan duty cycle maximum based on the compensation data; determining a target noise value based on the maximum fan duty cycle; used to determine the reward parameter value based on the total system power, a first weighting factor corresponding to the total system power, the target noise value, and a second weighting factor corresponding to the target noise value; the compensation data includes a fan duty cycle corresponding to each fan, and the fan duty cycle maximum value is the maximum value among all fan duty cycles; if the compensation data includes power supply power, determining a total system power based on the power supply power; if the compensation data includes power corresponding to each board and power corresponding to each fan in the network device, determining a total system power based on power corresponding to all boards and power corresponding to all fans; A fan rotation speed control device characterized by:

10. After the processing module obtains the target fan duty cycle corresponding to each fan, if the network device is in a state to be adjusted, the processing module is further used to update the initial fan duty cycle corresponding to each fan with the target fan duty cycle corresponding to the fan, and return to executing the step of sequentially traversing each fan as a candidate fan based on the target order of the plurality of fans; If the total number of fans that meet the target condition is equal to or greater than a predetermined threshold, the network device is in a stable state; otherwise, the network device is in a state that requires adjustment; For each fan, if the target fan duty cycle corresponding to the fan and the initial fan duty cycle corresponding to the fan are the same, the fan is meeting the target condition; otherwise, the fan is not meeting the target condition.

10. The device of claim 9.

11. After the network device is powered on and started up, or after the network device issues a temperature alarm, the determination module is further used to determine a fan duty cycle to be adjusted for each fan based on the temperature value of each board of the network device, and when the fans are controlled based on the rotation speed corresponding to the fan duty cycle to be adjusted for each fan, the absolute value of the difference between the temperature value of each board and the target temperature value can be made smaller than a temperature threshold value; The determination module is further configured to determine that the network device is in a state where it should be adjusted when an absolute value of a difference between the temperature value of each board and a target temperature value is less than a temperature threshold, and to update an initial fan duty cycle corresponding to each fan with a fan duty cycle to be adjusted corresponding to the fan; the control module is further adapted to control the fans based on a rotational speed corresponding to an initial fan duty cycle corresponding to each fan.

10. The device of claim 9.

12. If the network device is in a stable state, the processing module further obtaining detected status data corresponding to the network device; inputting the sensed condition data into a trained target operating model to obtain an output fan duty cycle corresponding to each fan; determining a first compensation parameter value corresponding to an output fan duty cycle based on compensation data of the network device at the output fan duty cycle corresponding to each fan, and determining a second compensation parameter value corresponding to a target fan duty cycle based on compensation data of the network device at the target fan duty cycle corresponding to each fan; If the first reward parameter value is superior to the second reward parameter value, determining that the network device is in a state to be adjusted, updating an initial fan duty cycle corresponding to each fan with the output fan duty cycle corresponding to the fan, and returning to performing sequentially traversing each fan as a candidate fan based on a target order of the plurality of fans; The output fan duty cycles corresponding to different fans are the same or different; 10. The device of claim 9.

13. further comprising a training module for obtaining the target motion model by training; When the training module obtains the target motion model through training, specifically: If the network device is in a steady state, obtain sample state data corresponding to the network device; inputting the sample state data into an initial operating model to obtain a sample fan duty cycle corresponding to each fan; inputting the sample state data and the sample fan duty cycle corresponding to each fan into an initial evaluation model to obtain a state operating value corresponding to the sample state data; determining a reward parameter value corresponding to the state performance value based on the sample state data; training the initial motion model and the initial evaluation model based on the reward parameter values ​​and the state motion values ​​to obtain a trained target motion model and a target evaluation model; 13. The device of claim 12.

14. Specifically, when the training module trains the initial motion model and the initial evaluation model according to the reward parameter value and the state motion value to obtain a trained target motion model and a target evaluation model, determining a first error value corresponding to an initial operating model based on the state operating value; adjusting network parameters of the initial operating model based on the first error value to obtain an adjusted operating model; determining a second error value corresponding to an initial evaluation model based on the reward parameter value and the state operating value; adjusting network parameters of the initial evaluation model based on the second error value to obtain an adjusted evaluation model; When the adjusted operation model and the adjusted evaluation model have converged, the adjusted operation model is determined as the target operation model, and the adjusted evaluation model is determined as the target evaluation model; If the adjusted operational model and / or the adjusted evaluation model have not converged, the adjusted operational model is determined as the initial operational model, the adjusted evaluation model is determined as the initial evaluation model, and the sample state data is input into the initial operational model.

14. The device of claim 13.

15. A network device including a processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being used to execute the machine-executable instructions to perform the steps of the method of any one of claims 1 to 8. A network device comprising:

Citation Information

Patent Citations

  • Large-scale machine room energy consumption regulation and control method and device

    CN111935952A

  • Control method and device for electronic equipment cooling fan

    JP1994272694A

  • Cooling device

    JP2000346512A

  • Fan rotation control method, fan rotation control system, and fan rotation control program

    JP2008235696A

  • System and method for controlling duty cycle of CPU fan

    JP2011176290A