Method and apparatus for controlling heat dissipation devices of server, storage medium and electronic device
By detecting the slot location of the network card device on the server host and filtering the cooling device, and adjusting the cooling strategy in real time, the problem of low control efficiency of the server cooling device is solved, ensuring the normal operation of the server and business continuity.
Patent Information
- Application Number
- PCT/CN2024/122123
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-28
- Filing Date
- 2024-09-29
- Publication Date
- 2025-09-04
AI Technical Summary
In the prior art, the control efficiency of server cooling equipment is low. Especially when the I2C link is faulty or the I2C link is not deployed, the cooling policy cannot be adjusted dynamically in real time, resulting in overtemperature of the entire server system, which may lead to downtime or shutdown, affecting business continuity.
By detecting the slot deployment location of the target network card device on the server host, filtering out the corresponding cooling devices, and controlling them to operate according to the target operating parameters, real-time adjustment of the cooling strategy is achieved to avoid physical I2C link monitoring.
It improves the control efficiency of server cooling equipment, ensures the normal operation of network card equipment during the server startup process, avoids overtemperature problems, and ensures business continuity.
Smart Images

Figure CN2024122123_04092025_PF_FP_ABST
Abstract
Description
Control method, device, storage medium and electronic device for server heat dissipation equipment
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to a Chinese patent application filed with the Patent Office of China on February 28, 2024, with application number 202410223197.9 and entitled “Control method, device, storage medium and electronic device for server heat dissipation equipment,” the entire contents of which are incorporated herein by reference. Technical Field
[0003] The embodiments of the present application relate to the field of computers, and more specifically, to a control method, apparatus, non-volatile readable storage medium, and electronic device for server heat dissipation equipment. Background Art
[0004] Currently, network card devices are widely used in various architecture servers in data centers. Due to the high power consumption of network card devices, if the heat dissipation of the server is not adjusted in time, the server system will overheat, causing the internal components or other core components of the server to crash or shut down due to overheating. Once a crash or shutdown occurs, it will cause fatal damage to the business.
[0005] Traditional cooling strategies monitor the temperature of network card devices through physical I2C (Inter-Integrated Circuit) links to adjust the cooling strategy of the entire server. However, if the I2C link fails or the server is not equipped with an I2C link, the cooling strategy of the entire server cannot be adjusted dynamically in real time, causing the entire server system to overheat.
[0006] In view of the problems in related technologies such as low control efficiency of server cooling equipment, no effective solutions have been proposed yet.
[0007] Summary of the Invention
[0008] Embodiments of the present application provide a control method, apparatus, non-volatile readable storage medium, and electronic device for a server heat dissipation device, to at least address the problem of low control efficiency of server heat dissipation devices in related technologies.
[0009] According to an embodiment of the present application, a method for controlling a server heat dissipation device is provided. The server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment positions of the network card slots in the network card slot array correspond to the device deployment positions of the heat dissipation devices in the heat dissipation device array. The network card slots are configured to connect to network card devices, and the heat dissipation devices are configured to dissipate heat for the network card devices connected to the corresponding network card slots. The method is applied to the server controller and includes:
[0010] When it is detected that the server host is started, detecting a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted;
[0011] Filtering out a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array;
[0012] The first heat dissipation device is controlled to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, which is a state that allows the target network card device to continue operating after the server host is started.
[0013] In an exemplary embodiment, detecting a target slot deployment position of a target network card slot into which a target network card device connected to a server host is inserted includes: receiving a target slot deployment position sent by the server host, wherein the target slot deployment position is detected by the server host during the network card device enumeration phase during the startup process.
[0014] In an exemplary embodiment, receiving the target slot deployment location sent by the server host includes: receiving the target slot deployment location sent by a basic input / output system deployed on the server host to the server controller after completing the network card device enumeration phase.
[0015] In an exemplary embodiment, receiving a target slot deployment position sent by a server host includes: detecting the startup progress of a basic input / output system deployed on the server host in starting the server host; sending a target request to the basic input / output system when the startup progress indicates that the basic input / output system has completed the network card device enumeration phase, wherein the target request is used to request to obtain the slot deployment position of a network card slot into which a network card device connected to the server host is inserted; and receiving the target slot deployment position sent by the basic input / output system deployed on the server host to the server controller in response to the target request.
[0016] In an exemplary embodiment, a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position is screened out from a heat dissipation device array, including: searching for a device deployment position corresponding to the target slot deployment position as the target device deployment position from slot deployment positions and device deployment positions having a corresponding relationship; and determining the heat dissipation device located at the target device deployment position in the heat dissipation device array as the first heat dissipation device.
[0017] In an exemplary embodiment, a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position is screened out from a heat dissipation device array, including: searching for the first device deployment position corresponding to the target slot deployment position from slot deployment positions and device deployment positions having a corresponding relationship; obtaining a second device deployment position whose distance from the first device deployment position falls within a target distance range; determining the first device deployment position and the second device deployment position as target device deployment positions; and determining the heat dissipation device located at the target device deployment position in the heat dissipation device array as the first heat dissipation device.
[0018] In an exemplary embodiment, controlling the first heat dissipation device to operate according to target operating parameters includes: determining the target operating parameters based on distribution information of the first heat dissipation device, wherein the distribution information is used to indicate the distribution of the first heat dissipation device on the server host; and controlling the first heat dissipation device to operate according to the target operating parameters.
[0019] In an exemplary embodiment, a target operating parameter is determined based on distribution information of a first heat dissipation device, including: when the distribution information is used to indicate that the first heat dissipation device is a heat dissipation device whose device deployment position in a heat dissipation device array has a corresponding relationship with the target slot deployment position, obtaining the highest operating parameter of the first heat dissipation device; and determining the highest operating parameter as the target operating parameter.
[0020] In an exemplary embodiment, target operating parameters are determined based on distribution information of a first heat dissipation device, including: in a case where the distribution information is used to indicate that the target slot deployment position of the first heat dissipation device includes a first device deployment position and a second device deployment position, operating parameters are allocated to the heat dissipation devices in the first heat dissipation device based on the highest operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, wherein the first device deployment position is a device deployment position corresponding to the target slot deployment position found from slot deployment positions and device deployment positions with corresponding relationships, and the second device deployment position is a device deployment position whose distance from the first device deployment position falls within a target distance range; the heat dissipation device and operating parameters with corresponding relationships are determined as target operating parameters.
[0021] In an exemplary embodiment, operating parameters are assigned to the heat dissipation devices in the first heat dissipation device based on the maximum operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, including: determining a first operating parameter for the heat dissipation device at the first device deployment position based on the maximum operating parameter of the first heat dissipation device, wherein the first operating parameter is less than or equal to the maximum operating parameter; determining a second operating parameter for the heat dissipation device at the second device deployment position based on the first operating parameter and the distance between the second device deployment position and the first device deployment position, wherein the distance is inversely proportional to the second operating parameter.
[0022] In an exemplary embodiment, operating parameters are assigned to heat dissipation devices in the first heat dissipation device based on the maximum operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, including: assigning a first operating parameter to the heat dissipation device at the first device deployment position, and assigning a second operating parameter to the heat dissipation device at the second device deployment position, wherein the first operating parameter is less than or equal to the maximum operating parameter, and the second operating parameter is less than or equal to the first operating parameter.
[0023] In an exemplary embodiment, before detecting the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, the method further includes: when detecting that the server host is powered on, detecting the current power-on information of the server host, wherein the current power-on information is used to indicate the power-on status of the server host being powered on this time; determining the presence information of the network card slots in the network card slot array based on the current power-on information, wherein the presence information is used to indicate the presence status of the network card device on the corresponding network card slot; screening out a second heat dissipation device from the heat dissipation device array based on the presence information, and controlling the second heat dissipation device to operate according to reference operating parameters, wherein the reference operating parameters are used to dissipate heat from the network card slot array to a reference operating state, and the reference operating state is the operating state of the network card slot array when the server host is allowed to start.
[0024] In an exemplary embodiment, the presence information of a network card slot in a network card slot array is determined based on current power-on information, including: when the current power-on information is used to indicate that a server host is powered on for the first time, determining that the presence information is used to indicate that there is a network card slot connected to a network card device on the network card slot array; screening out a second heat dissipation device from the heat dissipation device array based on the presence information, and controlling the second heat dissipation device to operate according to reference operating parameters, including: determining all heat dissipation devices in the heat dissipation device array as second heat dissipation devices; assigning operating parameters to the second heat dissipation device according to the device deployment position of the heat dissipation device in the heat dissipation device array to obtain reference operating parameters; and controlling the second heat dissipation device to operate according to the reference operating parameters.
[0025] In an exemplary embodiment, the presence information of a network card slot in a network card slot array is determined based on current power-on information, including: when the current power-on information is used to indicate that the server host has not been started, determining that the presence information is used to indicate that a network card device is connected to a default network card slot on the network card slot array; and selecting a second heat dissipation device from a heat dissipation device array based on the presence information, including: determining a heat dissipation device in the heat dissipation device array whose device deployment position corresponds to the slot deployment position of the default network card slot as the second heat dissipation device.
[0026] In an exemplary embodiment, the presence information of a network card slot in a network card slot array is determined based on current power-on information, including: when the current power-on information is used to indicate that a server host has been started, determining the presence information of the network card slot in the network card slot array based on a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted, as detected during a historical startup process of the server host; and screening out a second heat dissipation device from a heat dissipation device array based on the presence information, including: determining a heat dissipation device in the heat dissipation device array that corresponds to the slot deployment position of the network card slot of the network card device connected to the server host, as detected during a historical startup process of the server host, as the second heat dissipation device.
[0027] In an exemplary embodiment, the presence information of a network card slot in a network card slot array is determined based on current power-on information, including: when the current power-on information is used to indicate that the server host is not powered on for the first time, determining that the presence information is used to indicate that the network card device connected when the server host was last shut down is in place; screening out a second heat dissipation device from the heat dissipation device array based on the presence information, including: obtaining a candidate slot deployment position of the network card slot where the network card device connected when the server host was last shut down is located; searching for a candidate device deployment position corresponding to the candidate slot deployment position from slot deployment positions and device deployment positions having a corresponding relationship; and determining the heat dissipation device at the candidate device deployment position as the second heat dissipation device.
[0028] According to an embodiment of the present application, a control device for a server heat dissipation device is provided. The server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment positions of the network card slots in the network card slot array correspond to the device deployment positions of the heat dissipation devices in the heat dissipation device array. The network card slots are configured to connect to network card devices, and the heat dissipation devices are configured to dissipate heat for the network card devices connected to the corresponding network card slots. The device is applied to the server controller and includes:
[0029] The first detection module is configured to detect a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted when detecting that the server host is started;
[0030] A first screening module is configured to screen out a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array;
[0031] The control module is configured to control the first heat dissipation device to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, and the target operating state is a state that allows the target network card device to continue to operate after the server host is started.
[0032] According to an embodiment of the present application, a computer non-volatile readable storage medium is further provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.
[0033] According to an embodiment of the present application, an electronic device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any of the above method embodiments.
[0034] According to an embodiment of the present application, a computer program product is further provided, including a computer program, which implements the steps of any of the above method embodiments when executed by a processor.
[0035] Through the present application, since the server controller detects the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted; and selects the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array, the heat dissipation devices in the heat dissipation device array can also adjust the first heat dissipation device in real time to operate according to the target operating parameters when there is no physical I2C link to monitor the temperature of the network card device and thus adjust the heat dissipation strategy of the entire server. Therefore, the problem of low control efficiency of the server heat dissipation device can be solved, thereby achieving the effect of improving the control efficiency of the server heat dissipation device. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] FIG1 is a hardware structure block diagram of a server device according to a method for controlling a server heat dissipation device according to an embodiment of the present application;
[0037] FIG2 is a flow chart of a method for controlling a server heat dissipation device according to an embodiment of the present application;
[0038] FIG3 is a schematic diagram of a server according to an embodiment of the present application;
[0039] FIG4 is a schematic diagram of a server motherboard according to an embodiment of the present application;
[0040] FIG5 is a schematic diagram of a fan rotation speed according to an embodiment of the present application;
[0041] FIG6 is a flow chart of a working process of a server controller according to an embodiment of the present application;
[0042] FIG7 is a swim-lane diagram of a control process of a server heat dissipation device according to an embodiment of the present application;
[0043] FIG8 is a structural block diagram of a control device for a server heat dissipation device according to an embodiment of the present application;
[0044] FIG9 is a structural block diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0045] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0046] It should be noted that the terms "first", "second", etc. in the description and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0047] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking operation on a server device as an example, FIG1 is a hardware structure block diagram of a server device of a control method for a server heat dissipation device in an embodiment of the present application. As shown in FIG1 , the server device may include one or more (only one is shown in FIG1 ) processors 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU (Microcontroller Unit) or a programmable logic device FPGA (Field Programmable Gate Array)) and a memory 104 configured to store data, wherein the above-mentioned server device may also include a transmission device 106 and an input and output device 108 for communication functions. It can be understood by those skilled in the art that the structure shown in FIG1 is only for illustration, and it does not limit the structure of the above-mentioned server device. For example, the server device may also include more or fewer components than those shown in FIG1 , or have a configuration different from that shown in FIG1 .
[0048] The memory 104 can be configured to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the control method of the server heat dissipation device in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, implementing the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may include a memory remotely located relative to the processor 102, and these remote memories may be connected to the server device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0049] The transmission device 106 is configured to receive or transmit data via a network. A specific example of the aforementioned network may include a wireless network provided by a communication provider of the server device. In one embodiment, the transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to enable communication with the Internet. In another embodiment, the transmission device 106 may be a radio frequency (RF) module configured to communicate with the Internet wirelessly.
[0050] In an embodiment of the present application, a method for controlling a server heat dissipation device is provided. The server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment positions of the network card slots in the network card slot array correspond to the device deployment positions of the heat dissipation devices in the heat dissipation device array. The network card slots are configured to connect to network card devices, and the heat dissipation devices are configured to dissipate heat for the network card devices connected to the corresponding network card slots. The method is applied to the server controller. FIG2 is a flow chart of the method for controlling a server heat dissipation device according to an embodiment of the present application. As shown in FIG2 , the process includes the following steps:
[0051] Step S202: When it is detected that the server host is started, detecting the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted;
[0052] Step S204, selecting a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array;
[0053] Step S206 , controlling the first heat dissipation device to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, which is a state that allows the target network card device to continue operating after the server host is started.
[0054] Through the above steps, since the server controller detects the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted; and selects the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array, the heat dissipation devices in the heat dissipation device array can adjust the first heat dissipation device in real time to operate according to the target operating parameters even when there is no physical I2C link to monitor the temperature of the network card device and thus adjust the heat dissipation strategy of the entire server. Therefore, the problem of low control efficiency of the server heat dissipation device can be solved, thereby achieving the effect of improving the control efficiency of the server heat dissipation device.
[0055] Optionally, in an embodiment of the present application, the control method of the server heat dissipation device proposed in the present application is applied to a server controller deployed on the server. The above-mentioned server controller can be but is not limited to a BMC (Baseboard Management Controller) or other devices with server management functions.
[0056] Optionally, in an embodiment of the present application, the server host deploys a network card slot array consisting of multiple network card slots, and the network card slots are configured to connect network card devices. The network card slots can be arranged in a variety of ways, but are not limited to, to obtain a network card slot array, such as: parallel arrangement, vertical arrangement, mixed arrangement including parallel arrangement and vertical arrangement, etc.
[0057] Optionally, in an embodiment of the present application, the above-mentioned network card device may include, but is not limited to, a basic function network card, an SNIC (Smart Network Interface Card) and a DPU (Data Processing unit) smart network card, as well as other devices with computing capabilities that can undertake data processing functions related to networking, security, and storage that are not suitable for CPU (Central Processing Unit), reduce CPU consumption, enable the server to run key applications and operating systems more efficiently, and optimize the overall efficiency of business data processing.
[0058] It should be noted that in the relevant technology, a DPU is a dedicated processor that provides data center infrastructure virtualization services such as networking, storage, security, and management around data processing. It is a computing architecture composed of a CPU based on an architecture such as ARM (Advanced RISC Machine) / X86 and a dedicated hardware acceleration engine such as an ASIC (Application Specific Integrated Circuit) / NP (Network Processor) / FPGA (Field Programmable Gate Array), forming an entity that provides virtualization functions. DPUs can be used in servers of various architectures in data centers, including but not limited to X86 and ARM architectures. Because DPUs consume a lot of power, if the heat dissipation control of the entire server is not adjusted in a timely manner, the entire server system will overheat, causing the internal components or other core components of the machine to become unusable due to overheating, resulting in a downtime or shutdown. Once a downtime or shutdown occurs without warning, it will cause fatal damage to the business. Therefore, regardless of the server architecture, a reasonable heat dissipation strategy needs to be formulated.
[0059] Optionally, in an embodiment of the present application, the server host further deploys a heat dissipation device array consisting of multiple heat dissipation devices. Each heat dissipation device is a device that provides heat dissipation for a network interface card (NIC) device connected to a corresponding NIC slot, such as a fan, heat sink, heat pipe, or heat dissipation channel. The heat dissipation devices may be arranged in various ways, including, but not limited to, parallel, vertical, or mixed arrangements.
[0060] Optionally, in an embodiment of the present application, a network card device can be connected to one or more network card slots in the network card slot array, but is not limited to, and the corresponding one or more heat dissipation devices can be controlled to dissipate heat for the network card device.
[0061] In the technical solution provided in the above step S202, the target network card slot connected to the network card device can be determined by detecting the connection status of the network card slot on the server host, thereby obtaining the target slot deployment position of the target network card slot.
[0062] Optionally, in an embodiment of the present application, the connection status of the network card slot on the server host can be detected by, but is not limited to, a device with hardware detection and identification functions, such as: BIOS (Basic Input Output System), UEFI (Unified Extensible Firmware Interface), etc.
[0063] In an exemplary embodiment, the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted can be detected in the following manner but is not limited to: receiving the target slot deployment position sent by the server host, wherein the target slot deployment position is detected by the server host during the network card device enumeration phase during the startup process.
[0064] Optionally, in an embodiment of the present application, during the startup of the server host, the target network card slot connected to the target network card device can be detected but is not limited to the network card device enumeration phase. The above-mentioned network card device enumeration phase can be configured but is not limited to allocating a bus number and allocating a BAR (Base Address Register) space. The allocated bus number is used to access the configuration space, and the BAR space is configured to interact with PCIe (Peripheral Component Interconnect express) devices for data.
[0065] Optionally, in an embodiment of the present application, when the server host is started, the server host may be configured, but not limited to, to send the target slot deployment location of the target network card slot connected to the target network card device to the server controller. The server host may, but not limited to, immediately send the target slot deployment location to the server controller when the server host is started. The server host may also send the target slot deployment location to the server controller in response to a request from the server controller when the server host is already started. Alternatively, the server host may trigger the operation of sending the target slot deployment location to the server controller in response to other set trigger conditions.
[0066] Optionally, in an embodiment of the present application, the server host may, but is not limited to, transmit the target slot deployment of the target network card slot to the server controller via an IPMI (Intelligent Platform Management Interface) command or other transmission protocols supported by the server controller.
[0067] In an exemplary embodiment, the target slot deployment location sent by the server host may be received in the following manner but is not limited to: receiving the target slot deployment location sent by the basic input and output system deployed on the server host to the server controller after completing the network card device enumeration phase.
[0068] Optionally, in an embodiment of the present application, during the startup of the server host, the basic input and output system deployed on the server host can be, but is not limited to, configured to detect the target network card slot connected to the target network card device through the network card device enumeration phase, and actively send the target slot deployment location to the server controller after completing the network card device enumeration phase.
[0069] Optionally, in an embodiment of the present application, when the basic input / output system completes the network card device enumeration phase, the basic input / output system may, but is not limited to, transmit the target slot deployment of the target network card slot to the server controller via IPMI commands or other transmission protocols supported by the server controller.
[0070] In an exemplary embodiment, the target slot deployment position sent by the server host can be received in the following manner, but is not limited to: detecting the startup progress of the basic input and output system deployed on the server host to start the server host; when the startup progress is used to indicate that the basic input and output system has completed the network card device enumeration phase, sending a target request to the basic input and output system, wherein the target request is used to request to obtain the slot deployment position of the network card slot into which the network card device connected to the server host is inserted; receiving the target slot deployment position sent by the basic input and output system deployed on the server host to the server controller in response to the target request.
[0071] Optionally, in an embodiment of the present application, the server host can, but is not limited to, perform a startup operation through the boot of a basic input / output system. During the process of the basic input / output system booting the server host, it can, but is not limited to, obtaining the slot deployment position of the network card slot into which the network card device on the server host is inserted through the network card device enumeration phase. When the basic input / output system has completed the network card device enumeration phase, the server controller sends a target request to the basic input / output system to request to obtain the slot deployment position of the network card slot into which the network card device connected to the server host is inserted, and receives the target slot deployment position sent by the basic input / output system deployed on the server host in response to the target request.
[0072] Optionally, in an embodiment of the present application, the basic input / output system and the server controller may interact through, but not limited to, IPMI commands or other transmission protocols supported by the server controller.
[0073] In an exemplary embodiment, before detecting the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, the operation of the heat dissipation device can be controlled in the following manner, but is not limited to: when it is detected that the server host is powered on, the current power-on information of the server host is detected, wherein the current power-on information is used to indicate the power-on status of the server host being powered on this time; the presence information of the network card slots in the network card slot array is determined based on the current power-on information, wherein the presence information is used to indicate the presence status of the network card device on the corresponding network card slot; a second heat dissipation device is selected from the heat dissipation device array based on the presence information, and the second heat dissipation device is controlled to operate according to reference operating parameters, wherein the reference operating parameters are used to dissipate the heat of the network card slot array to a reference operating state, and the reference operating state is the operating state of the network card slot array when the server host is allowed to start.
[0074] Optionally, in an embodiment of the present application, the server host may be powered on but not started, so that the server host is in a powered-on but not started state, and whether the server host is powered on for the first time, that is, whether the server host has been started before, is detected as the current power-on information of the server host. The current power-on information of the server host may include, but is not limited to: whether the server is powered on for the first time, that is, the server host has not been started before; or whether the server is not powered on for the first time, that is, the server host has been started before.
[0075] Optionally, in an embodiment of the present application, when the server host is started, the server host may be, but is not limited to, configured to detect the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted. Therefore, the presence information of the network card slots in the network card slot array may be determined based on, but is not limited to, the current power-on information of the server host. For example, when the current power-on information of the server host indicates that the server host has not been started, the presence information of the network card slots in the unknown network card slot array is determined. Alternatively, when the current power-on information of the server host indicates that the server host has been started, the presence information of the network card slots in the network card slot array is determined based on the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, which was detected during the historical server host startup process.
[0076] Optionally, when the current power-on information of the server host indicates that the server host has not been started, due to the presence information of the network card slot in the unknown network card slot array, in order to protect the server host from overheating problems due to the network card device during the current startup process, it is possible but not limited to setting the default network card device in place, and performing cooling operations on the cooling device corresponding to the slot deployment position of the network card slot of the default network card device, to dissipate heat for the network card devices connected to all network card slots, so as to ensure that no matter which network card device is currently deployed in any network card slot, the normal startup process of the server host will not have overheating problems.
[0077] Optionally, in an embodiment of the present application, the heat dissipation device corresponding to the network card device in place on the network card slot can be determined as the second heat dissipation device, for example: when the current power-on information of the server host indicates that the server host has been started, the heat dissipation device in the heat dissipation device array corresponding to the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, which is detected during the historical server host startup process, is determined as the second heat dissipation device.
[0078] Alternatively, if the current power-on information of the server host indicates that the server host has not been started, due to the presence information of the network card slots in the unknown network card slot array, but to protect the server host from overheating due to the network card devices during the current startup process, the network card devices in place are set to include all but the first and last network card devices, and the second heat dissipation device includes the heat dissipation device corresponding to the network card devices in place. Alternatively, if the current power-on information of the server host indicates that the server host has not been started, due to the presence information of the network card slots in the unknown network card slot array, but to protect the server host from overheating due to the network card devices during the current startup process, all network card devices are set to be in place, and the second heat dissipation device includes all heat dissipation devices, etc.
[0079] It should be noted that, when the current power-on information of the server host indicates that the server host has not been started, due to the in-place information of the network card slot in the unknown network card slot array, the default in-place network card device can be set adaptively according to, but not limited to, the network card slot array deployed on the server host, so that during the current server host startup process, no matter which network card device is deployed in which network card slot, the normal startup of the server host can be guaranteed, that is, there will be no overheating problem.
[0080] Optionally, in an embodiment of the present application, the reference operating parameters are used to dissipate heat from the network card slot array to a state that allows the server host to start up. The reference operating parameters of the second heat dissipation device can be determined based on, but not limited to, the temperature conditions for the normal startup of the server host and the heat generated during the startup of the server host.
[0081] Optionally, the reference operating parameters of the second heat dissipation device can be calculated in a variety of ways, including but not limited to, based on the temperature conditions for the normal startup of the server host and the heat generated during the startup of the server host. For example, a deep learning model can be trained so that the model can calculate the reference operating parameters of the second heat dissipation device, or the reference operating parameters of the second heat dissipation device can be calculated through an algorithm.
[0082] Optionally, in an embodiment of the present application, the operating parameters of the heat dissipation device can be determined based on, but not limited to, parameters such as the rotational speed and air volume of the heat dissipation device.
[0083] In an exemplary embodiment, the following method can be used but is not limited to determine the presence information of a network card slot in a network card slot array based on the current power-on information: when the current power-on information is used to indicate that the server host is powered on for the first time, determine that the presence information is used to indicate that there is a network card slot connected to a network card device on the network card slot array; the following method can be used but is not limited to screen out a second heat dissipation device from the heat dissipation device array based on the presence information, and control the second heat dissipation device to operate according to reference operating parameters: determine all heat dissipation devices in the heat dissipation device array as second heat dissipation devices; assign operating parameters to the second heat dissipation device according to the device deployment position of the heat dissipation device in the heat dissipation device array to obtain reference operating parameters; and control the second heat dissipation device to operate according to the reference operating parameters.
[0084] Optionally, in an embodiment of the present application, when the current power-on information indicates that the server host is powered on for the first time, it is determined that there is a network card slot connected to a network card device on the network card slot array, and all heat dissipation devices in the heat dissipation device array are determined as second heat dissipation devices. Operating parameters are assigned to the second heat dissipation device according to the device deployment position of the heat dissipation device in the heat dissipation device array, reference operating parameters are obtained, and the second heat dissipation device is controlled to operate according to the reference operating parameters.
[0085] Optionally, in an embodiment of the present application, taking the heat dissipation devices arranged in parallel to form a heat dissipation device array, where the heat dissipation device array includes heat dissipation device 1, heat dissipation device 2, heat dissipation device 3, heat dissipation device 4, and heat dissipation device 5 as an example, all heat dissipation devices in the heat dissipation device array are determined as second heat dissipation devices, and operating parameters can be assigned to the second heat dissipation devices according to the device deployment positions of the heat dissipation devices in the following manner, but not limited to, to obtain reference operating parameters:
[0086] Since heat dissipation device 2 and heat dissipation device 4 can realize heat dissipation for corresponding network card device 1, network card device 2, network card device 3, network card device 4 and network card device 5, it is possible but not limited to assigning a higher operating parameter of 80% to heat dissipation device 2 and heat dissipation device 4, and assigning a lower operating parameter of 30% to heat dissipation device 1, heat dissipation device 3 and heat dissipation device 5;
[0087] Alternatively, since heat dissipation device 2, heat dissipation device 3, and heat dissipation device 4 can also provide heat dissipation for network card device 1, network card device 2, network card device 3, network card device 4, and network card device 5, it is possible, but not limited to, to allocate 75% of the operating parameters to heat dissipation device 2, heat dissipation device 3, and heat dissipation device 4, and allocate 30% of the operating parameters to heat dissipation device 1 and heat dissipation device 5;
[0088] Alternatively, 75% of the operating parameters are allocated to heat dissipation devices 3, 4, and 5, and 30% of the operating parameters are allocated to heat dissipation devices 1 and 2;
[0089] Alternatively, 30% of the operating parameters are allocated to heat dissipation device 1, heat dissipation device 2, heat dissipation device 3, heat dissipation device 4, and heat dissipation device 5, and so on.
[0090] Since the deployed server hosts are different, the network card slot arrays and heat dissipation device arrays deployed on the server hosts are also different. Therefore, the operating parameters of the second heat dissipation device can be adaptively adjusted according to, but not limited to, the network card slot arrays and heat dissipation device arrays deployed on the server hosts, so that the heat dissipation device operates according to the operating parameters to ensure the normal startup of the server host.
[0091] In an exemplary embodiment, the presence information of the network card slot in the network card slot array can be determined based on the current power-on information, but is not limited to the following method: when the current power-on information is used to indicate that the server host is not powered on for the first time, the presence information is determined to indicate that the network card device connected when the server host was last shut down is in place; the second heat dissipation device can be filtered out from the heat dissipation device array based on the presence information, but is not limited to the following method: obtain the candidate slot deployment position of the network card slot where the network card device connected when the server host was last shut down is located; search for the candidate device deployment position corresponding to the candidate slot deployment position from the slot deployment positions and device deployment positions with a corresponding relationship; and determine the heat dissipation device at the candidate device deployment position as the second heat dissipation device.
[0092] Optionally, in an embodiment of the present application, when the current power-on information indicates that the server host is not powered on for the first time, it is determined that the network card device connected to the server host when it was last shut down is in place, and the candidate slot deployment position of the network card slot where the network card device connected to the server host when it was last shut down is located is obtained, and the candidate device deployment position corresponding to the candidate slot deployment position is searched from the slot deployment positions and device deployment positions with corresponding relationships; the heat dissipation device at the candidate device deployment position is determined as the second heat dissipation device.
[0093] Optionally, in an embodiment of the present application, when the current power-on information indicates that the server host is not powered on for the first time, the corresponding reference operating parameters can be assigned to the second heat dissipation device, and the second heat dissipation device can be controlled to operate according to the reference operating parameters. The second heat dissipation device can include, but is not limited to, one or more heat dissipation devices, and the reference operating parameters of the second heat dissipation device can be adaptively adjusted to ensure that the heat dissipation device operates according to the operating parameters to ensure the normal startup of the server host.
[0094] In an exemplary embodiment, an example of a server machine is provided. FIG3 is a schematic diagram of a server machine according to an embodiment of the present application. As shown in FIG3 , the server machine includes a server motherboard and a heat dissipation device array. The server controller is a BMC deployed on the server motherboard. The heat dissipation device array includes fan 1, fan 2, fan 3, and fan 4. The network card slot array includes slot 1, slot 2, slot 3, and slot 4. CPU1 and CPU2 are also deployed on the server motherboard. CPU1 and CPU2 communicate via UPI (Ultra Path Interconnect, Ultra Path Interconnect Protocol). The slots in the network card slot array can, but are not limited to, communicate with the CPU via PCI (Peripheral Component Interconnect, defining a local bus standard). The fans in the heat dissipation device array communicate with the BMC and the CPU via I2C. When the server host is powered on, the BMC can, but is not limited to, work in the following manner:
[0095] The BMC obtains whether the server host is powered on for the first time.
[0096] When the server host is powered on for the first time, it is determined that there is a network card slot connected to a network card device on the network card slot array. The BMC can, but is not limited to, screen out the second heat dissipation devices including fan 1, fan 2, fan 3, and fan 4, and assign reference operating parameters to them, including assigning a speed of fan 3 and fan 4 to 73% and a speed of fan 1 and fan 2 to 30%.
[0097] When the server host is not powered on for the first time, obtain the candidate slot deployment position of the network card slot where the network card device connected when it was last shut down is located. Taking the candidate slot deployment position as slot 2 as an example, it can be but not limited to finding the second cooling device corresponding to slot 2 as fan 2, and assigning operating parameters to fan 2 including a speed of 30%.
[0098] When the server host is not powered on for the first time, the candidate slot deployment position of the network card slot where the network card device connected when it was last shut down is located can be, but is not limited to, detected by the BIOS during the network card device enumeration phase and transmitted to the BMC through the SPI (Serial Peripheral Interface) or LPC (Low Pin Count).
[0099] In one exemplary embodiment, an example of a server motherboard is provided. FIG4 is a schematic diagram of a server motherboard according to an embodiment of the present application. As shown in FIG4 , taking a network card device as a DPU as an example, in a server, the DPU is connected to a PCI slot and powered via a gold finger. The PCI slot interacts with the CPU via a PCI bus.
[0100] In the technical solution provided in the above step S204, it is possible but not limited to screening out the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array based on the correspondence between the slot deployment position of the network card slot in the network card slot array and the device deployment position of the heat dissipation device in the heat dissipation device array.
[0101] Optionally, in an embodiment of the present application, the correspondence between the slot deployment positions of the network card slots in the network card slot array and the device deployment positions of the heat dissipation devices in the heat dissipation device array may be, but is not limited to, a one-to-one correspondence, or may be a many-to-many correspondence, so the first heat dissipation device may be, but is not limited to, the same number of heat dissipation devices as the target slot deployment positions, or may be a different number of heat dissipation devices.
[0102] In an exemplary embodiment, the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position can be filtered out from the heat dissipation device array in the following manner, but is not limited to: searching for the device deployment position corresponding to the target slot deployment position from the slot deployment positions and device deployment positions with a corresponding relationship as the target device deployment position; and determining the heat dissipation device located at the target device deployment position in the heat dissipation device array as the first heat dissipation device.
[0103] Optionally, in an embodiment of the present application, it is possible but not limited to searching, based on the target slot deployment position, for a device deployment position corresponding to the target slot deployment position from the slot deployment positions and device deployment positions having a corresponding relationship as the target device deployment position, and determining the heat dissipation device located at the target device deployment position in the heat dissipation device array as the first heat dissipation device.
[0104] In an exemplary embodiment, the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position can be filtered out from the heat dissipation device array in the following manner, but is not limited to: searching for the first device deployment position corresponding to the target slot deployment position from the slot deployment positions and device deployment positions having a corresponding relationship; obtaining a second device deployment position whose distance from the first device deployment position falls within a target distance range; determining the first device deployment position and the second device deployment position as the target device deployment position; and determining the heat dissipation device located at the target device deployment position in the heat dissipation device array as the first heat dissipation device.
[0105] Optionally, in embodiments of the present application, the target distance range may be determined based on, but not limited to, the network card slot array. For example, if the network card slot array is arranged in parallel, a certain horizontal distance may be determined as the target distance range; if the network card slot array is arranged in vertical arrangement, a certain vertical distance may be determined as the target distance range; if the network card slot array is a mixed arrangement of parallel and vertical arrangements, a distance within a certain radius may be determined as the target distance range. The certain distance may be determined based on, but not limited to, the number of network card slots in the network card slot array, such as 1 / 2 or 1 / 4 of the number of network card slots.
[0106] Optionally, in an embodiment of the present application, the target device deployment position includes a first device deployment position corresponding to the target slot deployment position and a second device deployment position whose distance from the first device deployment position falls within a target distance range. The heat dissipation device located at the target device deployment position in the heat dissipation device array can be determined as the first heat dissipation device, but is not limited to being determined.
[0107] In the technical solution provided in the above step S206, the target network card device can be enabled to continue to operate after the server host is started by controlling the first heat dissipation device to operate according to the target operating parameters, but is not limited to.
[0108] Optionally, in an embodiment of the present application, the operating parameters of the heat dissipation device can be determined based on, but not limited to, parameters such as the rotational speed and air volume of the heat dissipation device.
[0109] In an exemplary embodiment, the first heat dissipation device can be controlled to operate according to target operating parameters in the following manner, but is not limited to: determining the target operating parameters based on distribution information of the first heat dissipation device, wherein the distribution information is used to indicate the distribution of the first heat dissipation device on the server host; and controlling the first heat dissipation device to operate according to the target operating parameters.
[0110] Optionally, in an embodiment of the present application, the first heat dissipation device may be, but is not limited to, one or more heat dissipation devices on a server host, and the target operating parameters of the first heat dissipation device may be determined based on, but is not limited to, the distribution of the first heat dissipation device in the heat dissipation device array. For example, if the first heat dissipation device is a heat dissipation device corresponding to the slot deployment position of the network card slot of the network card device in place, a higher operating parameter may be assigned to the first heat dissipation device. Alternatively, if the first heat dissipation device is not a heat dissipation device corresponding to the slot deployment position of the network card slot of the network card device in place, the operating parameter may be assigned to the first heat dissipation device based on the distance between the first heat dissipation device and the heat dissipation device corresponding to the slot deployment position of the network card slot of the network card device in place, with the distance being inversely proportional to the operating parameter.
[0111] In an exemplary embodiment, the target operating parameter can be determined based on the distribution information of the first heat dissipation device in the following manner, but is not limited to: when the distribution information is used to indicate that the first heat dissipation device is a heat dissipation device whose device deployment position in the heat dissipation device array corresponds to the target slot deployment position, the highest operating parameter of the first heat dissipation device is obtained; and the highest operating parameter is determined as the target operating parameter.
[0112] Optionally, in an embodiment of the present application, when the first heat dissipation device is a heat dissipation device whose device deployment position in the heat dissipation device array corresponds to the target slot deployment position, the first heat dissipation device can be set to operate according to the highest operating parameters but is not limited to being set.
[0113] In an exemplary embodiment, the target operating parameters can be determined based on the distribution information of the first heat dissipation device in the following manner, but is not limited to: when the distribution information is used to indicate that the target slot deployment position of the first heat dissipation device includes a first device deployment position and a second device deployment position, the operating parameters are assigned to the heat dissipation devices in the first heat dissipation device according to the highest operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, wherein the first device deployment position is the device deployment position corresponding to the target slot deployment position found from the slot deployment positions and device deployment positions with a corresponding relationship, and the second device deployment position is the device deployment position whose distance from the first device deployment position falls within the target distance range; the heat dissipation device and the operating parameters with a corresponding relationship are determined as the target operating parameters.
[0114] Optionally, in an embodiment of the present application, when the target slot deployment position of the first heat dissipation device includes a first device deployment position and a second device deployment position, operating parameters may be assigned to the heat dissipation devices in the first heat dissipation device based on, but not limited to, the highest operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device. For example, a first operating parameter is assigned to the heat dissipation device at the first device deployment position, and a second operating parameter is assigned to the heat dissipation device at the second device deployment position, where the second operating parameter is less than or equal to the first operating parameter. When multiple second device deployment positions are included, the second operating parameter may be assigned based on, but not limited to, the distance between the second device deployment position and the first device deployment position, with the second operating parameter decreasing in descending order as the distance increases.
[0115] In an exemplary embodiment, operating parameters can be assigned to the heat dissipation devices in the first heat dissipation device according to the maximum operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device in the following manner, but is not limited to: determining a first operating parameter for the heat dissipation device at the first device deployment position according to the maximum operating parameter of the first heat dissipation device, wherein the first operating parameter is less than or equal to the maximum operating parameter; determining a second operating parameter for the heat dissipation device at the second device deployment position according to the first operating parameter and the distance between the second device deployment position and the first device deployment position, wherein the distance is inversely proportional to the second operating parameter.
[0116] Optionally, in this embodiment of the present application, the maximum operating parameter of the first heat dissipation device may be determined as, but is not limited to, the first operating parameter of the heat dissipation device at the first device deployment location. Alternatively, a value less than the maximum operating parameter of the first heat dissipation device may be obtained as the first operating parameter of the heat dissipation device at the first device deployment location.
[0117] Optionally, in an embodiment of the present application, the second operating parameter allocated to the heat dissipation device at the second device deployment location can be, but is not limited to, based on the first operating parameter and the distance between the second device deployment location and the first device deployment location. For example, the longer the distance, the lower the second operating parameter allocated to the heat dissipation device at the second device deployment location.
[0118] In an exemplary embodiment, an example of fan speed is provided. FIG5 is a schematic diagram of a fan speed according to an embodiment of the present application. As shown in FIG5 , taking a heat dissipation device as a fan and an operating parameter of the heat dissipation device as the fan speed as an example, the server controller can adjust the fan speed to adjust the operating parameter of the heat dissipation device in the following manner, but is not limited to:
[0119] When the server is running, the fan at the device deployment position corresponding to the slot deployment position of the network card slot connected to the network card device is kept running at 100% speed, so that the fan maintains high power to cool the smart network card.
[0120] When the server is not started, the fan at the device deployment position corresponding to the slot deployment position of the network card slot connected to the network card device maintains a rotational speed of 73%, and the fan at the device deployment position corresponding to the slot deployment position of the network card slot not connected to the network card device maintains a rotational speed of 30%. This operation mode can ensure that when the server is started, even if the connection position of the network card device changes, the server temperature can be kept within a normal range to avoid server overheating and malfunction.
[0121] Optionally, in an embodiment of the present application, in order to better understand the working process of the above-mentioned server controller in the control method of the server heat dissipation device proposed in this application, the above-mentioned process is described in combination with an optional embodiment below, but it is not used to limit the technical solution of the embodiment of the present application.
[0122] In an exemplary embodiment, an example of the operation process of a server controller is provided. FIG6 is a flow chart of the operation process of a server controller according to an embodiment of the present application. As shown in FIG6 , taking the network card device as a DPU and the heat dissipation device including fans 1, 2, 3, and 4 as an example, the server controller can operate in, but is not limited to, the following manner:
[0123] When the server host is powered on, determine whether it is the first time the server host is powered on;
[0124] When the server is powered on for the first time, the DPU is in place by default. Set the speeds of Fans 2 and 3 to 73%, and Fans 0 and 1 to 30%. Start the server. When the server is started, obtain the DPU location information through the IPMI protocol and control the speed of the fan directly in front of the DPU to 100%.
[0125] When the server host is not powered on for the first time, the speed of the fan directly in front of the DPU position information of the DPU that was in place before the last shutdown is controlled to be 30%.
[0126] In an exemplary embodiment, an example of a control process for a server cooling device is provided. FIG7 is a swim-lane diagram of a control process for a server cooling device according to an embodiment of the present application. As shown in FIG7 , taking a server controller as a BMC, a basic input / output system as a BIOS, a network card device as a DPU, and cooling devices including fans 1, 2, 3, and 4 as an example, the server cooling device can be controlled to perform cooling operations for the server in the following manner, but is not limited to:
[0127] When the server is powered on and no boot operation has been performed within the historical period, the BMC cannot determine whether the DPU is in place, and the auxiliary firmware CPLD (Complex Programmable Logic Device) cannot detect whether the DPU is in place. As a result, the BMC cannot accurately detect the DPU's location. Therefore, the BMC assumes that the DPU is in place (condition 1).
[0128] If the server is powered on and has been booted in the past, obtain the DPU location information obtained during the PCI enumeration portion of the last boot (condition 2).
[0129] Under condition 1, the BMC controls the operation of all cooling devices. For example, the speed of fans 2 and 3 is set to 73% of the maximum speed, and the speed of fans 0 and 1 is set to 30% of the maximum speed.
[0130] Under condition 2, the BMC controls the operation of the cooling device corresponding to the obtained DPU location information, for example, setting the fan speed corresponding to the DPU location information to 30% of the maximum speed.
[0131] When the server starts, the BIOS will confirm the location of the DPU card by identifying the PCI devices during the PCI enumeration process at the startup stage;
[0132] The BIOS transmits the identified DPU card location information to the BMC through the IPMI protocol or other protocols that interact with the BMC.
[0133] The BMC confirms the location of the DPU card based on the location information transmitted by the BIOS and sets the speed of the fan directly in front of the DPU card to the maximum speed to reduce the power consumption and temperature of the entire server.
[0134] It is worth noting that in the solution proposed in this application, in order to solve the technical problem that the physical link connection design of the motherboard server hardware cannot support the server controller to read the temperature register of the network card device through the I2C protocol to control the server cooling device to reduce the temperature of the server during operation and shutdown, this application determines whether the server where the network card device is located has been powered on after power-on. If no power-on has been performed after power-on, the server controller assumes that the network card device exists and adaptively controls the cooling device to work; when the server is powered on, the PCI enumeration part started by the basic input and output system enumerates the PCI slot information where the network card device is located and transmits the location information of the network card device to the server controller through the communication protocol with the server controller. The server controller controls the cooling device corresponding to the network card device to operate according to the location information of the network card device to reduce the overall temperature of the server, and when the server is shut down, the server controller reduces the power of the cooling device corresponding to the network card device because it already knows the location information of the network card device; or, when the server has been started once and is in the shutdown state, the cooling device corresponding to the network card device can be turned on because the location information of the historically deployed network card device is known. In the solution proposed in this application, you only need to pay attention to whether it is the first time the server is started after power-on and the location where the network card device is deployed, and you can adjust the working mode of the corresponding cooling device for servers running at different stages to achieve cooling of the network card device and the entire server.
[0135] The control method for a server heat dissipation device proposed in this application combines the server hardware design to enable interaction between the basic input / output system (BIOS) and the server controller firmware through a communication protocol. Specifically, the location information of the network card device identified by the BIOS is transmitted to the server controller, and the server controller controls the corresponding heat dissipation device to operate according to the location information of the network card device transmitted by the BIOS. At the same time, a method is provided for determining and adjusting the working mode of the corresponding heat dissipation device for servers running at different stages by judging whether the server is powered on for the first time. If the location information of the network card device cannot be accurately determined, the server controller can still adaptively adjust the working condition of the heat dissipation device to reduce the overall temperature and power consumption of the server, thereby ensuring the normal RAS (Reliability, Availability, and Serviceability) function of the server.
[0136] Furthermore, the server cooling device control method proposed in this application can meet the actual business needs of data centers and supports servers of any architecture, with strong versatility and high applicability. This further improves the safety of server operation and ensures that servers and network card devices will not malfunction due to overheating under various circumstances.
[0137] According to the present application, a server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment position of the network card slot in the network card slot array corresponds to the device deployment position of the heat dissipation device in the heat dissipation device array. The network card slot is configured to connect the network card device, and the heat dissipation device is configured to dissipate heat for the network card device connected to the corresponding network card slot. When it is detected that the server host is started, the server controller detects the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted; selects a first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array; and controls the first heat dissipation device to operate according to target operating parameters, wherein the target operating parameters are used to dissipate the heat of the target network card device to a target operating state, and the target operating state is a state that allows the target network card device to continue to operate after the server host is started. Since the server controller detects the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, and selects the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array, the heat dissipation devices in the heat dissipation device array can adjust the first heat dissipation device to operate according to the target operating parameters in real time even when there is no physical I2C link to monitor the temperature of the network card device and thus adjust the heat dissipation strategy of the entire server. Therefore, the problem of low control efficiency of the server heat dissipation device can be solved, thereby achieving the effect of improving the control efficiency of the server heat dissipation device.
[0138] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a non-volatile readable storage medium (such as ROM / RAM, magnetic disk, optical disk), including a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of each embodiment of the present application.
[0139] In an embodiment of the present application, a control device for a server heat dissipation device is also provided. The server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment position of the network card slot in the network card slot array corresponds to the device deployment position of the heat dissipation device in the heat dissipation device array. The network card slot is configured to connect a network card device, and the heat dissipation device is configured to dissipate heat for the network card device connected to the corresponding network card slot. The device is applied to the server controller. The device is used to implement the above-mentioned embodiments and optional implementation methods. Those that have been explained will not be repeated here. As used below, the term "module" can implement a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and conceived.
[0140] FIG8 is a structural block diagram of a control device for a server heat dissipation device according to an embodiment of the present application. As shown in FIG8 , the device includes:
[0141] The first detection module 82 is configured to detect the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted when detecting that the server host is started;
[0142] A first screening module 84 is configured to screen out a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array;
[0143] The control module 86 is configured to control the first heat dissipation device to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, which is a state that allows the target network card device to continue operating after the server host is started.
[0144] Through the above-mentioned device, since the server controller detects the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted; and selects the first heat dissipation device at the target device deployment position corresponding to the target slot deployment position from the heat dissipation device array, the heat dissipation devices in the heat dissipation device array can also adjust the first heat dissipation device in real time to operate according to the target operating parameters when there is no physical I2C link to monitor the temperature of the network card device and thus adjust the heat dissipation strategy of the entire server. Therefore, the problem of low control efficiency of the server heat dissipation device can be solved, thereby achieving the effect of improving the control efficiency of the server heat dissipation device.
[0145] In an exemplary embodiment, the first detection module includes:
[0146] The receiving unit is configured to receive the target slot deployment position sent by the server host, wherein the target slot deployment position is detected by the server host during the network card device enumeration phase during the startup process.
[0147] In an exemplary embodiment, the receiving unit is further configured to receive the target slot deployment location sent by the basic input and output system deployed on the server host to the server controller after completing the network card device enumeration phase.
[0148] In an exemplary embodiment, the receiving unit is further configured to: detect the startup progress of the basic input / output system deployed on the server host to start the server host; when the startup progress is used to indicate that the basic input / output system has completed the network card device enumeration phase, send a target request to the basic input / output system, wherein the target request is used to request to obtain the slot deployment position of the network card slot into which the network card device connected to the server host is inserted; receive the target slot deployment position sent by the basic input / output system deployed on the server host to the server controller in response to the target request.
[0149] In an exemplary embodiment, the first screening module includes:
[0150] The first searching unit is configured to search for a device deployment position corresponding to a target slot deployment position from slot deployment positions and device deployment positions having a corresponding relationship as a target device deployment position;
[0151] The first determining unit is configured to determine a heat dissipation device located at a target device deployment position in the heat dissipation device array as a first heat dissipation device.
[0152] In an exemplary embodiment, the first screening module includes:
[0153] A second searching unit is configured to search for a first device deployment position corresponding to the target slot deployment position from the slot deployment positions and device deployment positions having a corresponding relationship;
[0154] An acquiring unit configured to acquire a second device deployment position whose distance from the first device deployment position falls within a target distance range;
[0155] a second determining unit configured to determine the first device deployment location and the second device deployment location as target device deployment locations;
[0156] The third determining unit is configured to determine a heat dissipation device located at the target device deployment position in the heat dissipation device array as a first heat dissipation device.
[0157] In an exemplary embodiment, a control module includes:
[0158] a fourth determining unit configured to determine a target operating parameter according to distribution information of the first heat dissipation device, wherein the distribution information is used to indicate a distribution status of the first heat dissipation device on the server host;
[0159] The control unit is configured to control the first heat dissipation device to operate according to target operating parameters.
[0160] In an exemplary embodiment, the fourth determination unit is further configured to: obtain the highest operating parameter of the first heat dissipation device when the distribution information is used to indicate that the first heat dissipation device is a heat dissipation device whose device deployment position in the heat dissipation device array has a corresponding relationship with the target slot deployment position; and determine the highest operating parameter as the target operating parameter.
[0161] In an exemplary embodiment, the fourth determination unit is further configured to: in a case where the distribution information is used to indicate that the target slot deployment position of the first heat dissipation device includes a first device deployment position and a second device deployment position, allocate operating parameters to the heat dissipation devices in the first heat dissipation device according to the highest operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, wherein the first device deployment position is the device deployment position corresponding to the target slot deployment position found from the slot deployment positions and device deployment positions with a corresponding relationship, and the second device deployment position is the device deployment position whose distance from the first device deployment position falls within the target distance range; the heat dissipation device and operating parameter with a corresponding relationship are determined as the target operating parameters.
[0162] In an exemplary embodiment, the fourth determination unit is further configured to: determine a first operating parameter for the heat dissipation device at the first device deployment position based on the maximum operating parameter of the first heat dissipation device, wherein the first operating parameter is less than or equal to the maximum operating parameter; determine a second operating parameter for the heat dissipation device at the second device deployment position based on the first operating parameter and the distance between the second device deployment position and the first device deployment position, wherein the distance is inversely proportional to the second operating parameter.
[0163] In an exemplary embodiment, the apparatus further comprises:
[0164] The second detection module is configured to detect current power-on information of the server host when detecting that the server host is powered on, wherein the current power-on information is used to indicate the power-on status of the server host being powered on this time;
[0165] a determination module configured to determine presence information of a network card slot in the network card slot array according to current power-on information, wherein the presence information is used to indicate a presence status of a network card device in the corresponding network card slot;
[0166] The second screening module is configured to screen out a second heat dissipation device from the heat dissipation device array based on the in-place information, and control the second heat dissipation device to operate according to reference operating parameters, wherein the reference operating parameters are used to dissipate heat from the network card slot array to a reference operating state, and the reference operating state is the operating state of the network card slot array when the server host is allowed to start.
[0167] In an exemplary embodiment, the determination module includes: a fifth determination unit, configured to, when the current power-on information is used to indicate that the server host is powered on for the first time, determine that the in-position information is used to indicate that there is a network card slot connected to a network card device on the network card slot array; the second screening module is further configured to: determine all heat dissipation devices in the heat dissipation device array as second heat dissipation devices; assign operating parameters to the second heat dissipation device according to the device deployment position of the heat dissipation device in the heat dissipation device array to obtain reference operating parameters; and control the second heat dissipation device to operate according to the reference operating parameters.
[0168] In an exemplary embodiment, the determination module includes: a sixth determination unit, configured to, when the current power-on information is used to indicate that the server host is not powered on for the first time, determine that the in-place information is used to indicate that the network card device connected when the server host was last shut down is in place; the second screening module is also configured to: obtain a candidate slot deployment position of the network card slot where the network card device connected when the server host was last shut down is located; search for a candidate device deployment position corresponding to the candidate slot deployment position from the slot deployment positions and device deployment positions with a corresponding relationship; and determine the heat dissipation device at the candidate device deployment position as the second heat dissipation device.
[0169] It should be noted that the above modules can be implemented through software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.
[0170] An embodiment of the present application further provides a computer non-volatile readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.
[0171] In an exemplary embodiment, the above-mentioned computer non-volatile readable storage medium may include but is not limited to: a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, and other non-volatile readable storage media that can store computer programs.
[0172] An embodiment of the present application also provides an electronic device. Figure 9 is a structural block diagram of an electronic device according to an embodiment of the present application. As shown in Figure 9, the above-mentioned electronic device includes a memory and a processor. The memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any of the above-mentioned method embodiments.
[0173] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0174] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0175] For specific examples in the embodiments of the present application, reference can be made to the examples described in the above embodiments and exemplary implementations, and the embodiments of the present application will not be described in detail here.
[0176] Obviously, those skilled in the art should understand that the modules or steps of the present application described above can be implemented using a general-purpose computing device, they can be concentrated on a single computing device, or distributed across a network composed of multiple computing devices, they can be implemented using program code executable by the computing device, and thus, they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be performed in a different order than herein, or they can be fabricated into separate integrated circuit modules, or multiple modules or steps can be fabricated into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.
[0177] The above description is merely an optional embodiment of the present application and is not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. made within the principles of the present application shall be included within the scope of protection of the present application.
Claims
1. A method for controlling a server heat dissipation device, characterized in that: A server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment positions of the network card slots in the network card slot array correspond to the device deployment positions of the heat dissipation devices in the heat dissipation device array. The network card slots are configured to connect to network card devices, and the heat dissipation devices are configured to dissipate heat for the network card devices connected to the corresponding network card slots. The method is applied to the server controller and includes: In the case of detecting that the server host is started, detecting a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted; Filtering out a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array; The first heat dissipation device is controlled to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, and the target operating state is a state that allows the target network card device to continue to operate after the server host is started.
2. The method according to claim 1, characterized in that The detecting the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted comprises: The target slot deployment position sent by the server host is received, wherein the target slot deployment position is detected by the server host during a network card device enumeration phase during a startup process.
3. The method according to claim 2, characterized in that The receiving the target slot deployment location sent by the server host includes: The target slot deployment position is received, which is sent by the basic input / output system deployed on the server host to the server controller after completing the network card device enumeration phase.
4. The method according to claim 2, characterized in that The receiving the target slot deployment location sent by the server host includes: detecting a startup progress of a basic input / output system deployed on the server host to start the server host; When the startup progress indicates that the basic input / output system has completed the network card device enumeration phase, sending a target request to the basic input / output system, wherein the target request is used to request to obtain a slot deployment position of a network card slot into which the network card device connected to the server host is inserted; The target slot deployment position is received, which is sent by the basic input / output system deployed on the server host to the server controller in response to the target request.
5. The method according to claim 1, wherein The step of selecting a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array includes: Searching for a device deployment position corresponding to the target slot deployment position from slot deployment positions and device deployment positions having a corresponding relationship as the target device deployment position; A heat dissipation device in the heat dissipation device array located at the target device deployment position is determined as the first heat dissipation device.
6. The method according to claim 1, characterized in that The step of selecting a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array includes: Searching for a first device deployment position corresponding to the target slot deployment position from slot deployment positions and device deployment positions having a corresponding relationship; Acquire a second device deployment position whose distance from the first device deployment position falls within a target distance range; Determining the first device deployment position and the second device deployment position as the target device deployment positions; A heat dissipation device in the heat dissipation device array located at the target device deployment position is determined as the first heat dissipation device.
7. The method according to claim 1, characterized in that The controlling the first heat dissipation device to operate according to target operating parameters includes: determining the target operating parameter according to distribution information of the first heat dissipation device, wherein the distribution information is used to indicate a distribution condition of the first heat dissipation device on the server host; Control the first heat dissipation device to operate according to the target operating parameters.
8. The method according to claim 7, characterized in that The determining the target operating parameter according to the distribution information of the first heat dissipation device includes: When the distribution information indicates that the first heat dissipation device is a heat dissipation device having a device deployment position in the heat dissipation device array corresponding to the target slot deployment position, obtaining a maximum operating parameter of the first heat dissipation device; The highest operating parameter is determined as the target operating parameter.
9. The method according to claim 7, characterized in that The determining the target operating parameter according to the distribution information of the first heat dissipation device includes: In a case where the distribution information is used to indicate that the target slot deployment position of the first heat dissipation device includes a first device deployment position and a second device deployment position, operating parameters are allocated to the heat dissipation devices in the first heat dissipation device according to the highest operating parameter of the first heat dissipation device and the distance between the heat dissipation devices in the first heat dissipation device, wherein the first device deployment position is a device deployment position corresponding to the target slot deployment position found from the slot deployment positions and device deployment positions having a corresponding relationship, and the second device deployment position is a device deployment position whose distance from the first device deployment position falls within a target distance range; The heat dissipation device and the operating parameters having a corresponding relationship are determined as the target operating parameters.
10. The method according to claim 9, characterized in that The allocating operating parameters to the heat dissipation devices in the first heat dissipation devices according to the highest operating parameter of the first heat dissipation device and the distances between the heat dissipation devices in the first heat dissipation devices includes: determining a first operating parameter for the heat dissipation device at the first device deployment location according to the maximum operating parameter of the first heat dissipation device, wherein the first operating parameter is less than or equal to the maximum operating parameter; A second operating parameter is determined for the heat dissipation device at the second device deployment location based on the first operating parameter and the distance between the second device deployment location and the first device deployment location, wherein the distance is inversely proportional to the second operating parameter.
11. The method according to claim 9, characterized in that The allocating operating parameters to the heat dissipation devices in the first heat dissipation devices according to the highest operating parameter of the first heat dissipation device and the distances between the heat dissipation devices in the first heat dissipation devices includes: A first operating parameter is assigned to the heat dissipation device at the first device deployment location, and a second operating parameter is assigned to the heat dissipation device at the second device deployment location, wherein the first operating parameter is less than or equal to the maximum operating parameter, and the second operating parameter is less than or equal to the first operating parameter.
12. The method according to claim 1, characterized in that Before detecting the target slot deployment position of the target network card slot into which the target network card device connected to the server host is inserted, the method further includes: In the case of detecting that the server host is powered on, detecting current power-on information of the server host, wherein the current power-on information is used to indicate the power-on status of the server host being powered on this time; Determining presence information of a network card slot in the network card slot array according to the current power-on information, wherein the presence information is used to indicate a presence status of a network card device in the corresponding network card slot; A second heat dissipation device is selected from the heat dissipation device array according to the in-place information, and the second heat dissipation device is controlled to operate according to reference operating parameters, wherein the reference operating parameters are used to dissipate heat from the network card slot array to a reference operating state, and the reference operating state is the operating state of the network card slot array when the server host is allowed to start.
13. The method according to claim 12, characterized in that Determining the presence information of the network card slots in the network card slot array according to the current power-on information includes: when the current power-on information indicates that the server host is powered on for the first time, determining that the presence information indicates that there is a network card slot connected to a network card device on the network card slot array; The selecting a second heat dissipation device from the heat dissipation device array according to the in-position information and controlling the second heat dissipation device to operate according to reference operating parameters includes: determining all heat dissipation devices in the heat dissipation device array as the second heat dissipation devices; assigning operating parameters to the second heat dissipation devices according to the device deployment positions of the heat dissipation devices in the heat dissipation device array to obtain the reference operating parameters; and controlling the second heat dissipation device to operate according to the reference operating parameters.
14. The method according to claim 12, characterized in that The determining, based on the current power-on information, the in-position information of the network card slot in the network card slot array includes: when the current power-on information indicates that the server host has not been started, determining that the in-position information indicates that a default network card slot on the network card slot array is connected to a network card device; The selecting a second heat dissipation device from the heat dissipation device array according to the in-position information includes: determining a heat dissipation device in the heat dissipation device array whose device deployment position corresponds to the slot deployment position of the default network card slot as the second heat dissipation device.
15. The method according to claim 12, characterized in that The determining the in-position information of the network card slots in the network card slot array according to the current power-on information includes: when the current power-on information indicates that the server host has been started, determining the in-position information of the network card slots in the network card slot array according to a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted, detected during a historical startup process of the server host; The selecting a second heat dissipation device from the heat dissipation device array according to the in-position information includes: determining a heat dissipation device in the heat dissipation device array corresponding to a slot deployment position of a network card slot of a network card device connected to the server host detected during a historical startup process of the server host as the second heat dissipation device.
16. The method according to claim 12, characterized in that Determining the presence information of the network card slots in the network card slot array according to the current power-on information includes: when the current power-on information indicates that the server host is not powered on for the first time, determining that the presence information indicates that the network card device connected when the server host was last powered off is in place; The method of selecting a second heat dissipation device from the heat dissipation device array according to the in-position information includes: obtaining a A candidate slot deployment position of the network card slot where the network card device connected during the second shutdown is located; searching for a candidate device deployment position corresponding to the candidate slot deployment position from the slot deployment positions and device deployment positions having a corresponding relationship; and determining the heat dissipation device at the candidate device deployment position as the second heat dissipation device.
17. A control device for a server heat dissipation device, characterized in that: The server includes a server host and a server controller. A network card slot array and a heat dissipation device array are deployed on the server host. The slot deployment positions of the network card slots in the network card slot array correspond to the device deployment positions of the heat dissipation devices in the heat dissipation device array. The network card slots are configured to connect to network card devices, and the heat dissipation devices are configured to dissipate heat for the network card devices connected to the corresponding network card slots. The device is applied to the server controller and includes: A first detection module is configured to detect a target slot deployment position of a target network card slot into which a target network card device connected to the server host is inserted when detecting that the server host is started; A first screening module is configured to screen out a first heat dissipation device at a target device deployment position corresponding to a target slot deployment position from the heat dissipation device array; The control module is configured to control the first heat dissipation device to operate according to target operating parameters, wherein the target operating parameters are used to dissipate heat from the target network card device to a target operating state, and the target operating state is a state that allows the target network card device to continue to operate after the server host is started.
18. A computer-readable non-volatile storage medium, characterized in that: The computer non-volatile readable storage medium stores a computer program, wherein the computer program implements the steps of the method described in any one of claims 1 to 16 when executed by a processor.
19. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 16 are implemented.
20. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 16 are implemented.
Citation Information
Patent Citations
Method and system for testing interference of fan noise in hard disk and related components
CN113886156A
Hard disk heat dissipation coordination control method, system and equipment, medium and storage server
CN116088652A
Heat dissipation method and server
CN116225183A
Server heat dissipation control method, circuit and equipment
CN116909372A
Temperature control assembly
CN117590917A