Server heat dissipation system and method and baseboard management controller
By using a high-response operating system to obtain temperature information and control the operation of the cooling fan during the server startup stage, the problem of cooling regulating during the server startup stage is solved, fast and effective heat management is achieved, noise and power consumption is reduced, and server performance is improved.
Patent Information
- Application Number
- CN202411824780.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-12
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-12-12
AI Technical Summary
During the server startup stage, it is difficult for the existing technology to effectively regulate heat dissipation, resulting in the inability to degrade heat in time, affecting the performance and stability of the server.
A server cooling system is adopted, including a substrate management controller, a temperature acquisition component and a cooling fan. By powering on the substrate management controller, the first high-response rate first operating system is first activated to obtain the temperature of the target monitoring component and the temperature acquisition component. and control the operation of the cooling fan according to this information, and then switch the bus control rights after the second operating system is started to continue to perform precise cooling control.
During the server startup stage, it realizes fast and comprehensive cooling control, reduces noise and power consumption, improves server startup performance, and avoids the negative impact of the full-speed operation of the cooling fan.
Smart Images

Figure CN119271023A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of servers, and in particular to a server heat dissipation system, method and baseboard management controller. Background Art
[0002] With the development of artificial intelligence technology, data centers are responsible for processing and storing massive amounts of data, and their stability and efficiency directly affect business performance and reliability. High-speed computing in data centers generates a lot of heat, and heat dissipation has become a key bottleneck restricting the performance improvement of data centers.
[0003] The baseboard management controller (BMC) is crucial in the heat dissipation control of the data center. It manages the heat dissipation system by intelligently monitoring and adjusting the temperature of the server. However, the non-real-time operating system running on the baseboard management controller takes a certain amount of time to start up. During this period, the server will also generate a lot of heat and cannot be effectively controlled, which seriously affects the server startup performance.
[0004] How to solve the heat dissipation regulation problem during the server startup phase is a technical problem that technical personnel in this field need to solve. Summary of the invention
[0005] The object of the present invention is to provide a server heat dissipation system, method and baseboard management controller, which are used to solve the heat dissipation regulation problem in the server startup phase.
[0006] In order to solve the above technical problems, the present invention provides a server heat dissipation system, including a baseboard management controller, a temperature collection component and a heat dissipation fan; The baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system; After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
[0007] On the one hand, the target monitoring component includes at least one of a host unit, a network card, an external card, a power supply unit, a security module and a satellite controller of the baseboard management controller.
[0008] On the other hand, the target monitoring component includes at least a host unit, and the first bus includes at least a first platform environment control interface bus for connecting the host unit.
[0009] On the other hand, the first operating system communicates with the host unit through the first platform environment control interface bus to obtain the host unit temperature information, including: The first operating system loads a platform environment control interface driver to call the first platform environment control interface bus to send a command to the host unit to obtain the host unit temperature information, and obtains the host unit temperature information in the response information fed back by the host unit through the first platform environment control interface bus.
[0010] On the other hand, the command to obtain the host unit temperature information includes address information of the target host unit monitoring component; The host unit feeds back response information through the first platform environment control interface bus, including: After monitoring the data packet on the first platform environment control interface bus, each central processor in the host unit compares the address information of the target host unit monitoring component recorded in the data packet with its own address information, and if the addresses match, obtains the temperature information of the target host unit monitoring component according to the type of the target host unit monitoring component, and writes the temperature information of the target host unit monitoring component into the response information fed back to the first operating system; Among them, the type of the target monitoring component includes at least one of the central processing unit and memory.
[0011] On the other hand, the target monitoring component includes at least a network card, and the first bus includes at least a first integrated circuit bus for connecting the network card.
[0012] On the other hand, the first operating system communicates with the network card through the first integrated circuit bus to obtain the network card temperature information, including: The first operating system loads a management component transmission protocol to call the first integrated circuit bus to send a command to the network card to obtain the temperature information of the network card, and obtains the temperature information of the network card in the response information fed back by the network card through the first integrated circuit bus.
[0013] On the other hand, the command for obtaining the temperature information of the network card includes address information of the target network card; The network card feeds back response information through the first integrated circuit bus, including: After monitoring the data packet on the first integrated circuit bus, the network card compares the address information of the target network card recorded in the data packet with its own address information. If the addresses match, the network card temperature information obtained locally is written into the response information fed back to the first operating system.
[0014] On the other hand, the target monitoring component includes at least a satellite controller of the baseboard management controller, and the first bus includes at least a second integrated circuit bus for connecting the satellite controller.
[0015] On the other hand, the first operating system communicates with the satellite controller through the second integrated circuit bus to obtain the satellite controller temperature information, including: The first operating system loads the intelligent platform management bus driver to call the second integrated circuit bus to send a command to obtain the temperature information of the satellite controller to the target satellite controller, and obtains the satellite controller temperature information in the response information fed back by the satellite controller through the second integrated circuit bus.
[0016] On the other hand, the command for acquiring the temperature information of the satellite controller includes the address information of the target satellite controller; The satellite controller feeds back response information through the second integrated circuit bus, including: After the satellite controller monitors the data packet on the second integrated circuit bus, it compares the address information of the target satellite controller recorded in the data packet with its own address information. If the addresses match, the satellite controller temperature information obtained locally is written into the response information fed back to the first operating system.
[0017] On the other hand, the temperature collection component includes: at least one of a server air duct temperature collection component and a server storage area temperature collection component.
[0018] On the other hand, the second operating system performs the bus control right switching task with the first operating system, including: The second operating system sends a control right switching request for the first bus, a control right switching request for the second bus, and a control right switching request for a third bus between the baseboard management controller and the cooling fan to the first operating system; The first operating system first releases the control right to the first bus and the control right to the second bus, and then releases the control right to the third bus; Before releasing control over the third bus, if control over the first bus has been released, the first operating system reads the first temperature information from a shared memory between the first operating system and the second operating system; if control over the second bus has been released, the first operating system reads the second temperature information from the shared memory.
[0019] On the other hand, the first operating system is also used to load the host computer communication interface driver to call the host computer communication interface of the baseboard management controller to establish a communication connection with the host computer, receive the heat dissipation configuration information sent by the host computer and write it into the shared memory between the first operating system and the second operating system.
[0020] On the other hand, controlling the operation of the cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; Identifying the type of the fan control value sending interface installed in the baseboard management controller; If the fan control value sending interface is a pulse width modulation interface, a first pulse width modulation signal is generated according to the target fan speed, and the first pulse width modulation signal is sent to a fan control unit, so that the fan control unit transparently transmits the first pulse width modulation signal to control the cooling fan to run at the target fan speed; If the fan control value sending interface is an integrated circuit bus interface, a first integrated circuit bus signal is generated according to the target fan speed, and the first integrated circuit bus signal is sent to the fan control unit, so that the fan control unit generates a second pulse width modulation signal according to the first integrated circuit bus signal to control the cooling fan to run at the target fan speed.
[0021] On the other hand, controlling the operation of the cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; generating a pulse width modulation signal corresponding to the target fan speed according to the model of the cooling fan; A pulse width modulation signal corresponding to the cooling fan is output to the cooling fan through a fan control pin corresponding to the cooling fan.
[0022] On the other hand, controlling the operation of the cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to each of the cooling fans according to the first temperature information, the second temperature information and the position of each of the cooling fans; The cooling fan is controlled to run at the corresponding target fan speed through a fan control pin corresponding to the cooling fan.
[0023] To solve the above technical problem, the present invention further provides a baseboard management controller, comprising a first operating system and a second operating system, wherein the response rate of the first operating system is higher than that of the second operating system; After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
[0024] To solve the above technical problems, the present invention further provides a server heat dissipation method, which is applied to a baseboard management controller, wherein the baseboard management controller includes a first operating system and a second operating system, wherein the response rate of the first operating system is higher than that of the second operating system; Server cooling methods include: After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
[0025] In order to solve the above technical problems, the present invention further provides a server heat dissipation device, comprising: Memory for storing computer programs; The processor is used to execute the computer program, and when the computer program is executed by the processor, the steps of the server heat dissipation method as described in any one of the above are implemented.
[0026] In order to solve the above technical problems, the present invention also provides a non-volatile storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the server heat dissipation method as described in any one of the above items are implemented.
[0027] In order to solve the above technical problems, the present invention also provides a computer program product, including a computer program, which implements the steps of any one of the above server heat dissipation methods when executed by a processor.
[0028] The server heat dissipation system provided by the present invention has the beneficial effect that after the baseboard management controller is powered on, the first operating system starts before the second operating system, and after starting, communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the heat dissipation fan according to the first temperature information and the second temperature information, so that the server heat dissipation control can be quickly entered in the server startup stage; after the second operating system of the baseboard management controller is started, the bus control right switching task between the baseboard management controller and the first operating system is executed, and after the switching is completed, the first temperature information is obtained through the first bus, and the second temperature information is obtained through the second bus, and the operation of the heat dissipation fan is controlled according to the first temperature information and the second temperature information. Therefore, the heat dissipation task can be quickly and comprehensively performed in the server startup stage, ensuring the accurate and effective control of the heat generated in the server startup stage, without having to run each heat dissipation fan at the maximum speed to ensure heat dissipation, reducing the noise when the server is started, saving power consumption, and improving the server startup performance.
[0029] The present invention also provides a server heat dissipation method, device, computer program product and baseboard management controller, which have the above-mentioned beneficial effects and are not described in detail here. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] In order to more clearly illustrate the embodiments of the present invention or the technical solutions of the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0031] Figure 1 A schematic diagram of the structure of a server heat dissipation system provided by an embodiment of the present invention; Figure 2A flow chart of a server heat dissipation method provided by an embodiment of the present invention; Figure 3 A flow chart of another server heat dissipation method provided by an embodiment of the present invention; Figure 4 A flow chart of a server cooling system startup phase provided by an embodiment of the present invention; Figure 5 A flowchart of an inter-core communication establishment phase provided by an embodiment of the present invention; Figure 6 A flow chart of a server cooling system in a normal operation phase provided by an embodiment of the present invention; Figure 7 A flow chart for updating heat dissipation configuration information provided by an embodiment of the present invention; Figure 8 A schematic diagram of the information format of heat dissipation configuration information provided by an embodiment of the present invention; Fig. 9 A schematic diagram of the structure of a server heat dissipation device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0032] The core of the present invention is to provide a server heat dissipation system, method and baseboard management controller, which are used to solve the heat dissipation regulation problem in the server startup phase.
[0033] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0034] In the embodiment of the present invention, a control scheme for the cooling fan in the heat dissipation of the server is mainly introduced.
[0035] According to the different operation stages of the server, it is necessary to formulate a server cooling solution adaptively. During the server startup phase, since the various components of the server will quickly heat up from room temperature to the operating temperature, and the server's system self-test (Power-On Self Test, POST) process may cause the hardware to generate more heat than normal operation, and at this time, the operating system of the baseboard management controller, which is the master controller of the server's heat dissipation control, has not yet started. In the current server cooling solution, during the server startup phase, the solution of controlling all cooling fans to run at full speed is often adopted. That is to say, during the server startup phase, the full load state of all cooling fans will last for a long time, resulting in increased energy consumption and noise and reduced stability. In addition, in order to avoid the risk of heat dissipation during the startup process, it is generally set to wait for the baseboard management controller's system startup to complete before starting the system self-test process, resulting in the server The time from powering on the power supply (usually Alternating Current, AC) to entering the operating system is lengthened.
[0036] In addition, in addition to the noise and energy consumption problems caused by the full rotation of the cooling fan during the startup process, in the event of a baseboard management controller operating system failure, since there is no reasonable mechanism to ensure the reliable takeover of the cooling fan, the cooling fan full rotation control scheme is usually adopted, which will again cause noise and energy consumption problems, affecting system stability and fan life.
[0037] To this end, the server heat dissipation system provided by the embodiment of the present invention includes a baseboard management controller, a temperature collection component and a heat dissipation fan; the baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system; after the baseboard management controller is powered on, the first operating system starts before the second operating system, and after starting, communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature collection component through the second bus to obtain the second temperature information, and controls the operation of the heat dissipation fan according to the first temperature information and the second temperature information; after the second operating system is started, it performs the task of switching the bus control right between the first operating system and the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the heat dissipation fan according to the first temperature information and the second temperature information. Therefore, the heat dissipation task can be quickly and comprehensively performed in the server startup stage, ensuring the accurate and effective control of the heat generated in the server startup stage, without having to run each heat dissipation fan at the maximum speed to ensure heat dissipation, reducing the noise when the server is started, saving power consumption, and improving the server startup performance.
[0038] The server heat dissipation system provided by the embodiment of the present invention is described in detail below with reference to the accompanying drawings.
[0039] Figure 1 A schematic diagram of the structure of a server heat dissipation system provided by an embodiment of the present invention.
[0040] It can be understood by those skilled in the art that Figure 1 The structure shown is for illustration only. The server cooling system and its peripheral connection relationship shown in the structure do not limit the server cooling system or the peripheral connection relationship of the server cooling system and the structure of the server installed therein. For example, the server cooling system may also include Figure 1 More or fewer components as shown, or with Figure 1 Different devices are shown.
[0041] like Figure 1 As shown, the server cooling system provided by the embodiment of the present invention includes: a baseboard management controller, a temperature acquisition component and a cooling fan. The baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system. After the baseboard management controller is powered on, the first operating system starts before the second operating system, and after starting, communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information. After the second operating system is started, it executes the task of switching the bus control right with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
[0042] In server cooling control, the baseboard management controller is responsible for collecting and organizing temperature information, determining the target fan speed (i.e., the target speed of the cooling fan that needs to be controlled) based on the temperature information, and generating output signals for controlling the cooling fan.
[0043] It should be noted that the "baseboard management controller" in the embodiment of the present invention may refer to a baseboard management controller board, which, in addition to the out-of-band monitoring master controller, also includes various bus controllers, logic programmable units, memories and other components. The "baseboard management controller" in the embodiment of the present invention may also refer to the out-of-band monitoring master controller on the baseboard management controller board, which may be a single-core processor or a multi-core processor. In the embodiment of the present invention, the baseboard management controller or the out-of-band monitoring master controller on the baseboard management controller board may use an ARM processor, on which the management system of the baseboard management controller runs.
[0044] As an independent system, the baseboard management controller needs to run an operating system that can provide complete operations, such as contiki, HeliOS, Linux, etc. This type of operating system generally uses a fair task scheduling algorithm. When the number of threads and processes increases, the processor time needs to be shared. Task debugging is uncertain and can be called a non-real-time operating system. For example, the Linux system is a multi-user, multi-tasking, multi-threaded and multi-CPU operating system based on the Portable Operating System Interface (POSIX). It is powerful and can support various tasks that the baseboard management controller needs to perform. However, the disadvantage of this type of non-real-time operating system is that it also takes a long time to start up during the server startup phase, which results in a long period of time during the server startup phase when the operating system cannot be used to perform server cooling control.
[0045] In the related art, a baseboard management controller equipped with a real-time operating system (RTOS) and a non-real-time operating system can temporarily perform server heat dissipation control by the real-time operating system during the server startup phase. Based on different control principles, the response rate of the real-time operating system is usually higher than that of the non-real-time operating system when running on the processor. But at the same time, the real-time operating system is not as comprehensive as the non-real-time operating system, and in the server heat dissipation control during the server startup phase, the real-time operating system can only collect limited temperature information. For example, it can usually only obtain the temperature data of the motherboard air inlet and outlet, which is far from meeting the comprehensive monitoring of the entire internal temperature field of the server, resulting in the failure to achieve good heat dissipation control effects.
[0046] In this regard, in an embodiment of the present invention, in a baseboard management controller including a first operating system and a second operating system, the first operating system that is started before the second operating system in the server startup phase collects the first temperature information of the target monitoring component through the first bus, and collects the second temperature information collected by the temperature collection component through the second bus, so as to obtain all the temperature information required for the server heat dissipation control, and perform fan regulation accordingly, so as to quickly enter the precise heat dissipation control state in the server startup phase. Then, after the second operating system is started, the bus control right switching task between the second operating system and the first operating system is executed, and after the switching is completed, the first temperature information is obtained through the first bus, and the second temperature information is obtained through the second bus, and the operation of the heat dissipation fan is controlled according to the first temperature information and the second temperature information. Therefore, the heat dissipation task can be quickly and comprehensively performed in the server startup phase, ensuring the precise and effective control of the heat generated in the server startup phase, without having to run each heat dissipation fan at the maximum speed to ensure heat dissipation, reducing the noise when the server is started, saving power consumption, and improving the server startup performance.
[0047] In the embodiment of the present invention, the first operating system and the second operating system in the embodiment of the present invention do not limit the type or priority of the operating system. The two only have different startup sequences due to different response rates after the baseboard management controller is powered on.
[0048] In some optional implementations of the embodiments of the present invention, the first operating system may be a program with real-time functions, may include a real-time operating system, or may include bare metal program code capable of implementing real-time functions. The type of real-time operating system may include, but is not limited to, FreeRTOS, RTLinux, or other real-time operating systems in embedded systems.
[0049] The second operating system may include but is not limited to contiki, HeliOS, and Linux.
[0050] In some optional implementations of the embodiments of the present invention, the first operating system and the second operating system may both run on the core processor of the baseboard management controller and communicate through inter-core communication. In some other optional implementations of the embodiments of the present invention, the first operating system and the second operating system may also run on the core processor of the baseboard management controller and the coprocessor of the baseboard management controller, for example, the first operating system runs on the coprocessor and the second operating system runs on the core processor.
[0051] In some optional implementations of the present invention, the baseboard management controller may run RTOS / Linux dual systems. In the case of a multi-core baseboard management controller, one of the core processors may run RTOS, and the remaining core processors may run Linux systems.
[0052] The "first" and "second" in the "first temperature information" and "second temperature information" in the embodiment of the present invention are only used to classify the temperature information required by the baseboard management controller into two categories according to the difference in the acquisition method, and do not limit the specific type or priority of the temperature information. The first temperature information refers to the temperature information that the baseboard management controller needs to communicate with the target monitoring component instead of directly accessing the temperature acquisition component to obtain. The second temperature information refers to the temperature information that the baseboard management controller can obtain by directly accessing the temperature acquisition component.
[0053] In order to enable the first operating system and the second operating system to achieve comprehensive server heat dissipation control, it is necessary to deploy bus drivers, communication protocols with target monitoring components, and server heat dissipation configuration information in both the first operating system and the second operating system. Among them, the bus driver may include but is not limited to the bus driver of the first bus, the bus driver of the second bus, and the bus driver of the third bus. Based on this, the first operating system and the second operating system can use other hardware resources in the server heat dissipation system in a time-sharing multiplexing manner. Specifically, after the server is turned on and the baseboard management controller is powered on, the first operating system is started before the second operating system. At this time, the first operating system occupies the bus control right and performs the server heat dissipation task; after the second operating system is started, the bus control right is handed over from the first operating system to the second operating system, and the second operating system performs the server heat dissipation task. The specific process will be introduced in the following embodiment of the present invention.
[0054] In the embodiment of the present invention, the target monitoring component refers to a component that needs to be temperature monitored in the heat dissipation control of the server, and the baseboard management controller needs to obtain the temperature information of the component by communicating with the component.
[0055] In the embodiment of the present invention, the target monitoring component may refer to an intelligent component in the server, which has the function of collecting its own temperature information, and the baseboard management controller needs to obtain the temperature information of the target monitoring component by communicating with the component.
[0056] In some optional implementations of the embodiments of the present invention, the target monitoring component may include at least one of a host unit, a network card, an external card, a power supply unit, a security module, and a satellite controller of a baseboard management controller. Depending on the type of server, the target monitoring component may not include the above components, or may also include other types of components.
[0057] like Figure 1 As shown, in an embodiment of the present invention, the "host unit" may be composed of one or more CPU modules. In addition to the core processor of the CPU, the CPU module may be provided with a CPU temperature acquisition component, a first bus controller corresponding to the first bus, and a memory (such as a dual in-line memory module, DIMM). When the target monitoring component is the host unit, the first temperature information may include the CPU temperature information and the memory temperature information. In the host unit, the CPU temperature information and the memory temperature information are usually recorded in the internal register of the CPU, which is used to describe the real-time temperature of the CPU and the real-time temperature of the memory.
[0058] In the case where the target monitoring component includes at least a host unit, the first bus includes at least a first platform environment control interface bus (Platform Environment Control Interface, PECI) for connecting the host unit. In addition, the first main line for connecting the host unit can also be an integrated circuit bus, such as a two-wire serial bus (Inter-Integrated Circuit, I2C) or an improved integrated circuit bus (Improved Inter Integrated Circuit, I3C).
[0059] The add-in card may include board components connected via a high-speed serial computer expansion bus (peripheral component interconnect express, PCIe), such as a graphics processing unit (GPU).
[0060] The security module may include but is not limited to a security management module, an encryption module, etc.
[0061] Except for the host unit, the first bus corresponding to the other target monitoring components is usually an integrated circuit bus, which can be a two-wire serial bus or an improved integrated circuit bus.
[0062] It should be noted that the "satellite controller" in the embodiment of the present invention refers to a management controller that is not incorporated into the board where the baseboard management controller is located. The satellite controller is usually connected to the baseboard management controller through an integrated circuit bus. Because the baseboard management controller is the main management controller in the server out-of-band management system, other management controllers are similar to "satellites" around the main controller, so they are called "satellite" controllers. The satellite controller is responsible for monitoring and managing specific hardware components in the server, such as temperature sensors, voltage sensors, fans, etc. They communicate with the baseboard management controller to centrally manage and monitor the health of the server. For example, the management engine (ME) in the platform controller (Platform Controller Hub, PCH) can be called a satellite controller of the baseboard management controller, which is mainly responsible for power and power consumption management. By interacting with the management engine, the baseboard management controller can obtain monitoring data of key components such as the central processing unit (CPU) and memory, such as temperature and power consumption, and then perform operations such as fault logging, CPU frequency reduction or shutdown according to the management strategy.
[0063] In the case where the target monitoring component is a host unit, the first operating system communicates with the host unit through the first platform environment control interface bus to obtain the temperature information of the host unit, which may include: the first operating system loads the platform environment control interface driver to call the first platform environment control interface bus to send a command to the host unit to obtain the temperature information of the host unit, and obtains the host unit temperature information in the response information fed back by the host unit through the first platform environment control interface bus.
[0064] The command for obtaining the temperature information of the host unit may include the address information of the target host unit monitoring component; the host unit feeds back response information through the first platform environment control interface bus, which may include: after each central processing unit in the host unit monitors the data packet on the first platform environment control interface bus, compares the address information of the target host unit monitoring component recorded in the data packet with its own address information; if the addresses match, the temperature information of the target host unit monitoring component is obtained according to the type of the target host unit monitoring component, and the temperature information of the target host unit monitoring component is written into the response information fed back to the first operating system; wherein the type of the target monitoring component includes at least one of a central processing unit and a memory.
[0065] That is, the first operating system communicates with the host unit by loading the bus driver and calling the first bus controller corresponding to the first bus, and the host unit feeds back the CPU temperature information and the memory temperature information to the baseboard management controller. In the process of collecting the first temperature information, the first bus controller in the server out-of-band management system serves as the master controller (System Host), and the first bus controller in the host unit serves as the slave controller (Client). For the host unit, the first bus controller can be a platform environment control interface controller, such as the first platform environment control interface controller described above, and the bus protocol used is the platform environment control interface protocol.
[0066] In the case where the target monitoring component is a network card, the first bus may at least include a first integrated circuit bus for connecting the network card, wherein the first integrated circuit bus may be a two-wire serial bus or an improved integrated circuit bus.
[0067] The first operating system communicates with the network card through the first integrated circuit bus to obtain the network card temperature information, which may include: the first operating system loads the Management Component Transport Protocol (MCTP) to call the first integrated circuit bus to send a command (MCTP Over I2C) to obtain the network card temperature information to the network card, and obtains the network card temperature information in the response information fed back by the network card through the first integrated circuit bus.
[0068] The command to obtain the network card temperature information may include the address information of the target network card; the network card feeds back the response information through the first integrated circuit bus, which may include: after the network card monitors the data packet on the first integrated circuit bus, the address information of the target network card recorded in the data packet is compared with its own address information, and if the addresses match, the locally obtained network card temperature information is written into the response information fed back to the first operating system. In this way, the first operating system can collect the network card temperature information of one or more network cards.
[0069] In the case where the target monitoring component is a satellite controller, the first bus may include at least a second integrated circuit bus for connecting to the satellite controller. The second integrated circuit bus may be a two-wire serial bus or an improved integrated circuit bus. In addition, the first bus for connecting to the satellite controller may also be an intelligent platform management bus (Intelligent Platform Management BUS, IPMB).
[0070] The first operating system communicates with the satellite controller through the second integrated circuit bus to obtain the temperature information of the satellite controller, which may include: the first operating system loads the intelligent platform management bus driver to call the second integrated circuit bus to send a command to obtain the temperature information of the satellite controller to the target satellite controller, and obtains the temperature information of the satellite controller in the response information fed back by the satellite controller through the second integrated circuit bus.
[0071] The command to obtain the temperature information of the satellite controller may include the address information of the target satellite controller; the satellite controller feeding back the response information through the second integrated circuit bus may include: after the satellite controller monitors the data packet on the second integrated circuit bus, the address information of the target satellite controller recorded in the data packet is compared with its own address information, and if the addresses match, the locally obtained satellite controller temperature information is written into the response information fed back to the first operating system. In this way, the first operating system can collect the satellite controller temperature information of one or more satellite controllers.
[0072] like Figure 1 As shown, in some optional implementations of the embodiments of the present invention, the target monitoring component may include a host unit, a network card and a platform controller management engine unit, and the first bus may include a first platform environment control interface bus for connecting the host unit, a first integrated circuit bus for connecting the network card, and a second integrated circuit bus for connecting the platform controller management engine unit.
[0073] In the embodiment of the present invention, the type of the temperature acquisition component may include a temperature sensor.
[0074] In the embodiment of the present invention, according to different collection objects, the temperature collection component may include: at least one of a server air duct temperature collection component and a server storage area temperature collection component.
[0075] The server air duct temperature may include but is not limited to the server air outlet temperature and the server air inlet temperature. The server storage area temperature may include but is not limited to the hard disk backplane temperature.
[0076] According to different server types, the temperature collection component may not include the above-mentioned temperature collection component, or may further include a temperature collection component set for other collection objects in the server.
[0077] In the process of collecting the second temperature information, the second bus controller in the baseboard management controller serves as a master controller (Master), and the first bus controller in the host unit serves as a slave controller (Slave).
[0078] Through the connection relationship recorded above, the first operating system in the baseboard management controller can obtain comprehensive server temperature information to achieve better temperature field control during the server startup phase.
[0079] In the embodiment of the present invention, the baseboard management controller may directly output a control signal to control the cooling fan, or the baseboard management controller may output the control signal to the coprocessor, and the coprocessor may directly control the cooling fan.
[0080] In the embodiment of the present invention, the third bus controller corresponding to the third bus may include at least one of an integrated circuit bus controller and a pulse width modulation (PWM) controller. For distinction, the third bus controller may include a fourth integrated circuit bus controller and / or a first pulse width modulation controller.
[0081] like Figure 1 As shown, in the server cooling system provided by the embodiment of the present invention, the system composed of multiple cooling fans can be called a fan array unit, and the cooling fans therein are denoted as fan 1, fan 2, ..., fan N.
[0082] In the current server heat dissipation control, each cooling fan in the fan array unit is usually controlled to use a uniform speed, but the positions targeted by each cooling fan may generate different amounts of heat. If each cooling fan uses a uniform speed, in order to ensure the heat dissipation effect in the high-heat area, the speed of the cooling fan in the area with lower heat will be wasted, causing energy waste to the server. Therefore, in some optional implementations of the embodiments of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may include: calculating the target fan speed corresponding to each cooling fan according to the first temperature information, the second temperature information and the position of each cooling fan; and controlling the cooling fan to operate at the corresponding target fan speed through the fan control pin corresponding to the cooling fan.
[0083] In practical applications, the pins of a baseboard management controller or a coprocessor for directly controlling the cooling fans may be connected to each cooling fan in a one-to-one correspondence, thereby providing a hardware basis for controlling different cooling fans to run at different speeds.
[0084] In addition, for fans of different models, even if the same target fan speed is used for control, the applicable pulse width modulation signals are different. In the embodiment of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may include: calculating the target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; generating a pulse width modulation signal corresponding to the target fan speed according to the model of the cooling fan; and outputting the pulse width modulation signal corresponding to the cooling fan to the cooling fan through the fan control pin corresponding to the cooling fan.
[0085] like Figure 1 As shown, for fan 1, fan 2, ..., fan N, the baseboard management controller side can output pulse width modulation signal 1, pulse width modulation signal 2, ..., pulse width modulation signal N correspondingly.
[0086] In some optional implementations of the embodiments of the present invention, the server cooling system may further include a complex programmable logic device (CPLD) to solve the problem of insufficient pins of the baseboard management controller. In the server cooling task, the complex programmable logic device is mainly used for signal characteristic conversion of fan control information and output of fan speed control signal.
[0087] In addition, in order to adapt to the fan control information output interface of different baseboard management controllers, in an embodiment of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may also include: calculating the target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; identifying the type of the fan control value sending interface installed by the baseboard management controller; if the fan control value sending interface is a pulse width modulation interface, generating a first pulse width modulation signal according to the target fan speed, and sending the first pulse width modulation signal to the fan control unit, so that the fan control unit transparently transmits the first pulse width modulation signal to control the cooling fan to run at the target fan speed; if the fan control value sending interface is an integrated circuit bus interface, generating a first integrated circuit bus signal according to the target fan speed, and sending the first integrated circuit bus signal to the fan control unit, so that the fan control unit generates a second pulse width modulation signal according to the first integrated circuit bus signal to control the cooling fan to run at the target fan speed.
[0088] The fan control unit may be a complex logic editable device.
[0089] In order to adapt to the fan control information output interface of different baseboard management controllers, the complex logic programmable device supports both the integrated circuit bus and the general purpose input / output (GPIO) channel to receive control information. Figure 1 It can be seen that after the complex logic editable device receives the control information from the baseboard management controller through the fourth integrated circuit bus controller (slave), the pulse width modulation value extraction module needs to extract the pulse width modulation value, and then the waveform generation module generates the pulse width modulation signal, and finally outputs the pulse width modulation signal of each fan that meets the requirements of the fan module through the second general input / output port (BANK Y). If the complex logic editable device receives the control information sent by the first pulse width modulation controller from the baseboard management controller through the first general input / output port, the information of the first general input / output port (BANK X) is directly transparently transmitted to the second general input / output port (BANK Y), and further output to the fan array unit to realize the speed control of each fan. Among them, the electrical characteristics of the first general input / output port (BANK X) and the second general input / output port (BANK Y) match the fan control information of the first pulse width modulation controller of the baseboard management controller and the fan array unit respectively.
[0090] In an embodiment of the present invention, the second operating system executes a bus control switching task with the first operating system, which may include: the second operating system sends a control switching request for the first bus, a control switching request for the second bus, and a control switching request for the third bus between the baseboard management controller and the cooling fan to the first operating system; the first operating system first releases control over the first bus and control over the second bus, and then releases control over the third bus; before releasing control over the third bus, if control over the first bus has been released, the first operating system reads first temperature information from a shared memory between the first operating system and the second operating system; if control over the second bus has been released, the first operating system reads second temperature information from the shared memory.
[0091] It should be noted that after the second operating system is started, the steps for executing the server heat dissipation task are the same as the steps for executing the server heat dissipation task by the first operating system.
[0092] In an embodiment of the present invention, the second operating system can also be used to communicate with the target monitoring component through the first bus to obtain first temperature information of the target monitoring component after the first operating system is restarted, access the temperature collection component through the second bus to obtain second temperature information, and control the operation of the cooling fan according to the first temperature information and the second temperature information.
[0093] The server heat dissipation system provided by the embodiment of the present invention includes a baseboard management controller, a temperature collection component and a heat dissipation fan; the baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system; after the baseboard management controller is powered on, the first operating system starts before the second operating system, and after starting, communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature collection component through the second bus to obtain the second temperature information, and controls the operation of the heat dissipation fan according to the first temperature information and the second temperature information; after the second operating system is started, the bus control right switching task between the first operating system and the second operating system is executed, and after the switching is completed, the first temperature information is obtained through the first bus, the second temperature information is obtained through the second bus, and the operation of the heat dissipation fan is controlled according to the first temperature information and the second temperature information. Therefore, the heat dissipation task can be quickly and comprehensively performed in the server startup stage, and the accurate and effective control of the heat generated in the server startup stage is guaranteed, without running each heat dissipation fan at the maximum speed to ensure heat dissipation, thereby reducing the noise when the server is started, saving power consumption, and improving the server startup performance.
[0094] In current servers, the fan control strategy in the baseboard management controller is usually generated statically through code, which makes the fan control strategy inflexible and difficult to adapt to changing business scenarios. On servers of different models, under different workloads and environmental conditions, the server's cooling requirements will vary significantly, and the static fan control strategy cannot be adjusted in time to adapt to these changes, thus affecting the energy efficiency and stability of the data center.
[0095] On the basis of the above embodiments, in the server cooling system provided in the embodiments of the present invention, the baseboard management controller can also be connected to the host computer through the host computer communication interface to receive the cooling configuration information sent by the host computer, and perform the server cooling task according to the cooling configuration information.
[0096] In the embodiment of the present invention, the first operating system and / or the second operating system may be connected to the host computer through the host computer communication interface to receive the heat dissipation configuration information sent by the host computer.
[0097] The host computer communication interface may be a Universal Asynchronous Receiver / Transmitter (UART) interface.
[0098] In some optional implementations of the embodiments of the present invention, the first operating system can be used to load the host computer communication interface driver to call the host computer communication interface of the baseboard management controller to establish a communication connection with the host computer, receive the heat dissipation configuration information sent by the host computer and write it into the shared memory between the first operating system and the second operating system.
[0099] Therefore, whether the first operating system is executing the server cooling task or the second operating system is executing the server cooling task, a fan control strategy that is more suitable for the current server model, current business scenario and environmental conditions can be obtained, thereby further improving the server cooling performance.
[0100] On the basis of the above embodiments, an embodiment of the present invention further provides a baseboard management controller, which includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system; after the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; after the second operating system is started, it executes the task of switching bus control authority with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
[0101] The specific implementation of the embodiment of the present invention may refer to any baseboard management controller introduced in the above server cooling system embodiment.
[0102] In combination with the server heat dissipation system and / or baseboard management controller introduced in the above embodiments, the server heat dissipation method provided by the embodiments of the present invention is described below in combination with the accompanying drawings.
[0103] Figure 2 The present invention provides a flow chart of a method for cooling a server.
[0104] like Figure 2 As shown, it is applied to a baseboard management controller, the baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system. The server heat dissipation method provided by the embodiment of the present invention includes: S21: After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; S22: After the second operating system is started, the bus control right switching task between the second operating system and the first operating system is executed. After the switching is completed, the first temperature information is obtained through the first bus, the second temperature information is obtained through the second bus, and the operation of the cooling fan is controlled according to the first temperature information and the second temperature information.
[0105] In a specific implementation, after the server system is powered on, the first operating system in the baseboard management controller is started first. Then, each temperature acquisition component is ready, the complex programmable logic device (CPLD) on the baseboard management controller board is ready, and the fan array unit is ready. At this time, the first operating system performs the server heat dissipation task.
[0106] It should be noted that when the first operating system or the second operating system only obtains the first temperature information or only obtains the second temperature information, it can also control the cooling fan according to the pre-configured cooling configuration information, until both temperature information are obtained and then control the cooling fan in combination with the two temperature information.
[0107] In an embodiment of the present invention, the target monitoring component may include at least one of a host unit, a network card, an external card, a power supply unit, a security module, and a satellite controller of a baseboard management controller.
[0108] For the network card temperature information, obtaining the network card temperature information through the first bus may include: sending a command to obtain the network card temperature information to the network card component through the first integrated circuit bus controller, and obtaining the network card temperature information in the response information fed back by the network card component after verifying the network card identifier in the command of the network card temperature information.
[0109] In a specific implementation, take the example of the first operating system connecting to the network card through the first integrated circuit bus controller. When it is necessary to obtain the temperature information of the network card, the first operating system loads the Management Component Transport Protocol (MCTP) driver, and sends a command to obtain the temperature information of the network card to the network card through the integrated circuit bus channel. The command is a message command based on the Management Component Transport Protocol over I2C over the integrated circuit bus (MCTP Over I2C), so that the network card compares its own integrated circuit address with the integrated circuit address in the message packet, and compares its own device identification (EID) information with the device identification (EID) information in the message packet. When both match, the MCTP Over I2C message is received, and the MCTP Over I2C message packet is responded to according to the content of the message, and the response information is sent to the first operating system. The first operating system receives and parses the network card temperature information in the response information.
[0110] Regarding the satellite controller temperature information, obtaining the satellite controller temperature information through the first bus may include: sending a command to obtain the satellite controller temperature information to the satellite controller through the second integrated circuit bus controller, and obtaining the satellite controller temperature information in the response information fed back by the satellite controller.
[0111] In a specific implementation, take the example of the first operating system connecting to the satellite controller through the second integrated circuit bus controller. When the temperature information of the satellite controller is needed, the first operating system sends a command to obtain the temperature information of the satellite controller to the satellite controller through the second integrated circuit bus controller. After receiving the request command sent by the first operating system, the satellite controller sends a response message to the first operating system, and the first operating system receives and parses the temperature information of the satellite controller in the response message.
[0112] Regarding the host unit temperature information, obtaining the host unit temperature information through the first bus may include: sending a command to obtain the host unit temperature information to the host unit through the first platform environment control interface controller, and obtaining the host unit temperature information in the response information fed back by the host unit after matching the platform environment control interface address.
[0113] In a specific implementation, take the example of the first operating system connecting to the host unit through the first platform environment control interface controller. When it is necessary to obtain the temperature information of the host unit, the first operating system loads the platform environment control interface driver, and sends a command to obtain the temperature of the host unit to each central processor of the host unit through the platform environment control interface channel. The acquired host unit temperature may include the central processor temperature and the memory temperature. Each central processor monitors the platform environment control interface bus, compares its own platform environment control interface address with the bus address, and the central processor with a matching address responds to the request command and sends a response message to the first operating system. The first operating system receives and parses the host temperature information in the response message.
[0114] In the embodiment of the present invention, the temperature collection component may include: at least one of a server air duct temperature collection component and a server storage area temperature collection component.
[0115] Acquiring second temperature information collected by the temperature acquisition component through the second bus may include: sending a command to obtain the second temperature information to the temperature acquisition component through the second bus controller, and acquiring the second temperature information in the response information fed back by the temperature acquisition component after comparing its own address with the address in the bus data packet received from the second bus controller and matching them.
[0116] Take the second bus controller as an integrated circuit bus controller as an example. After the temperature acquisition components in the server cooling system are started, each temperature acquisition component performs the temperature acquisition task for the acquisition object and monitors the status of the integrated circuit bus. When a bus data packet is monitored, the integrated circuit bus address is compared with the address in the bus data packet. The temperature acquisition component with the matching address responds to the command to obtain the second temperature information in the bus data packet and sends the response information to the first operating system. The first operating system receives and parses the second temperature information in the response information.
[0117] On the basis of the above-mentioned embodiment, the embodiment of the present invention further describes a fan control method in a server heat dissipation method.
[0118] In some optional implementations of the embodiments of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may include: calculating the target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information, and controlling each cooling fan to operate at the target fan speed.
[0119] Since the heat generated in different areas inside the server is different, if all cooling fans use a uniform speed, in order to ensure the cooling effect of the high-heat area, the speed of the cooling fans in the area with lower heat will be wasted, which will cause energy waste to the server. Therefore, in some other optional implementations of the embodiments of the present invention, controlling the operation of the cooling fans according to the first temperature information and the second temperature information may include: calculating the target fan speed corresponding to each cooling fan according to the first temperature information, the second temperature information and the position of each cooling fan; and controlling the cooling fan to operate at the corresponding target fan speed through the fan control pin corresponding to the cooling fan.
[0120] By controlling the cooling fans in a one-to-one correspondence manner, different cooling fans can be controlled to run at the same speed, or different cooling fans can be controlled to run at different speeds.
[0121] In addition, the electrical characteristics of the pulse width modulation signal in the current baseboard management controller are fixed, which limits its adaptability to fans of different specifications. Different fans may require different pulse width modulation signals to achieve the optimal speed and air volume, and the pulse width modulation output with fixed characteristics cannot meet such personalized needs. Therefore, in some optional implementations of the embodiments of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may include: calculating the target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; generating a pulse width modulation signal corresponding to the target fan speed according to the model of the cooling fan; and outputting the pulse width modulation signal corresponding to the cooling fan to the cooling fan through the fan control pin corresponding to the cooling fan.
[0122] Depending on the server configuration, the fan control value sending interface installed on the baseboard management controller board may be different. Fan controllers usually have two types: integrated circuit bus controllers and pulse width modulation controllers. Some baseboard management controller boards only have one of these controllers, which will cause the baseboard management controller to need additional configuration changes when controlling the cooling fan. There are also solutions in related fields that use hardware switching components to switch to fan controllers that match the cooling configuration information of the baseboard management controller, but this obviously increases hardware costs.
[0123] Therefore, on the basis of the above embodiments, in some optional implementations of the embodiments of the present invention, controlling the operation of the cooling fan according to the first temperature information and the second temperature information may also include: calculating the target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; identifying the type of the fan control value sending interface installed by the baseboard management controller; if the fan control value sending interface is a pulse width modulation interface, generating a first pulse width modulation signal according to the target fan speed, and sending the first pulse width modulation signal to the fan control unit, so that the fan control unit transparently transmits the first pulse width modulation signal to control the cooling fan to run at the target fan speed; if the fan control value sending interface is an integrated circuit bus interface, generating a first integrated circuit bus signal according to the target fan speed, and sending the first integrated circuit bus signal to the fan control unit, so that the fan control unit generates a second pulse width modulation signal according to the first integrated circuit bus signal to control the cooling fan to run at the target fan speed.
[0124] The fan control unit may be a complex logic editable device.
[0125] After the second operating system is started, the first operating system hands over the server cooling task to the second operating system for execution. After the second operating system is started in S22, the bus control switching task between the second operating system and the first operating system is executed, which may include: the second operating system sends a control switching request for the first bus, a control switching request for the second bus, and a control switching request for the third bus between the baseboard management controller and the cooling fan to the first operating system; the first operating system first releases the control of the first bus and the control of the second bus, and then releases the control of the third bus; before releasing the control of the third bus, if the control of the first bus has been released, the first operating system reads the first temperature information from the shared memory between the first operating system and the second operating system; if the control of the second bus has been released, the first operating system reads the second temperature information from the shared memory.
[0126] In a specific implementation, the first operating system establishes a communication connection with the second operating system, and hands over the control of each bus controller, and gradually switches the server heat dissipation task to the second operating system for execution.
[0127] If the first operating system and the second operating system are core processors of a multi-core baseboard management controller, the server heat dissipation method provided in an embodiment of the present invention may also include: after the first operating system recognizes that the second operating system is started, establishing an inter-core communication connection with the second operating system; based on the inter-core communication connection, handing over bus control to the second operating system, so as to switch to the second operating system to perform the server heat dissipation task.
[0128] After the second operating system is started, the steps for executing the server heat dissipation task are the same as the steps for executing the server heat dissipation task by the first operating system.
[0129] Figure 3 A flow chart of another server heat dissipation method provided by an embodiment of the present invention.
[0130] On the basis of the above embodiments, in order to obtain a more flexible fan control strategy, such as Figure 3 As shown, the server heat dissipation method provided by the embodiment of the present invention may also include:
[0131] S23: The first operating system or the second operating system loads the host computer communication interface driver to establish a communication connection with the host computer through the host computer communication interface of the baseboard management controller; receives the heat dissipation configuration information sent by the host computer and writes it into the shared memory between the first operating system and the second operating system.
[0132] In a specific implementation, the host computer communication interface may be a Universal Asynchronous Receiver / Transmitter (UART) interface.
[0133] Since the embodiments of the server cooling method part correspond to the embodiments of the server cooling system part and the embodiments of the baseboard management controller part, if there are any incomplete descriptions of the embodiments of the server cooling method part, please refer to the descriptions of the embodiments of the server cooling system part and the embodiments of the baseboard management controller part, and they will not be repeated here.
[0134] In actual applications, taking the first operating system and the second operating system as the core processor of the multi-core baseboard management controller as an example, the startup process of the server cooling system after the server is turned on is divided into the server cooling system startup stage, the inter-core communication establishment stage and the server cooling system normal operation stage for explanation.
[0135] Figure 4 A flow chart of a server cooling system startup phase provided by an embodiment of the present invention.
[0136] The steps in the server cooling system startup phase may include: Figure 4 shown.
[0137] In the first stage, the system is powered on, the first operating system of the baseboard management controller is started, and all components are ready, including Figure 4 S401~S404 shown.
[0138] S401: The first operating system starts.
[0139] S402: All components are ready.
[0140] S403: The complex logic editable device is ready.
[0141] S404: The fan array unit is ready.
[0142] In the second stage, the host is turned on, the second operating system of the baseboard management controller starts to start, and the first operating system loads the integrated circuit bus driver, including Figure 4 S405~S407 shown.
[0143] S405: The host unit is turned on.
[0144] S406: The second operating system starts to boot up.
[0145] S407: The first operating system loads the integrated circuit bus driver.
[0146] In the third stage, the first operating system obtains the first temperature information. Figure 4 S408~S410 shown.
[0147] S408: The first operating system sends a command for obtaining the second temperature information to the temperature acquisition component. Specifically, the first operating system sends a command for obtaining the second temperature information to each temperature acquisition component in turn. The second temperature information may include at least one of the server air outlet temperature, the server air inlet temperature, the hard disk backplane temperature, and the power supply unit temperature.
[0148] S409: The temperature acquisition components perform address matching. Specifically, each temperature acquisition component monitors the integrated circuit bus, and after matching the integrated circuit bus address, obtains the bus data packet and reads the request command for obtaining the second temperature information.
[0149] S410: The temperature acquisition component sends response information to the first operating system. Specifically, the temperature acquisition component sends the response information carrying the second temperature information to the first operating system through the integrated circuit bus.
[0150] In the fourth stage, the first operating system obtains the first temperature information, including: Figure 4 S411~S417 shown.
[0151] S411: The first operating system loads a management component transport protocol driver.
[0152] S412: The first operating system sends a command to obtain the temperature of the network card to the network card. Specifically, the first operating system sends a message command based on the management component transmission protocol of the integrated circuit bus to the network card through the integrated circuit bus to obtain the temperature information of the network card.
[0153] S413: The network card sends a response message to the first operating system. Specifically, the network card sends the response message carrying the network card temperature information to the first operating system.
[0154] S414: The first operating system sends a command for obtaining the temperature of the platform controller to the platform controller management engine unit. Specifically, the first operating system sends a command for obtaining the temperature information of the platform controller to the platform controller management engine unit through the second integrated circuit bus controller.
[0155] S415: The platform controller management engine unit sends a response message to the first operating system. Specifically, the platform controller management engine unit sends a response message carrying the platform controller temperature information to the first operating system.
[0156] S416: The first operating system sends a command for obtaining the temperature of the host unit to the host unit. Specifically, the first operating system sends a command for obtaining the temperature information of the host unit to the host unit through the first platform environment control interface controller.
[0157] S417: The host unit sends a response message to the first processing unit. Specifically, each central processing unit in the host unit monitors the platform environment control interface bus, compares its own platform environment control interface address with the bus address, and the central processing unit with a matching address responds to the request command and sends a response message to the first operating system. The first operating system receives and parses the host temperature information in the response message.
[0158] In the fifth stage, the first operating system controls the operation of the cooling fan according to the first temperature information and / or the second temperature information, including: Figure 4 S418~S420 shown.
[0159] S418: The first operating system calculates the fan control value according to the first temperature information and / or the second temperature information. Specifically, the first operating system determines whether the received first temperature information and the second temperature information are complete. If not, the request command is resent to the corresponding component. If the number of times the request command for a certain component is sent exceeds the preset threshold, the fan control value is directly calculated based on the existing temperature information. If it does not exceed the preset threshold, the request command can continue to be sent to the corresponding component. If the first temperature information and the second temperature information are complete, the fan control value is calculated according to the first temperature information and the second temperature information. The fan control value can be a control value corresponding to a cooling fan one by one.
[0160] S419: The first operating system sends the fan control value through the complex logic editable device. Specifically, the first operating system checks the fan control value sending interface. If the fan control value sending interface is a pulse width modulation interface, the first operating system sends a first pulse width modulation signal to the complex logic editable device through the pulse width modulation interface. The complex logic editable device receives the signal through the first general input / output port (BANK X) and transparently transmits it to the second general input / output port (BANK Y), so that the complex logic editable device outputs a pulse width modulation waveform to the fan array unit through the second general input / output port (BANK Y). If the fan control value sending interface is an integrated circuit bus interface, the first operating system sends a pulse width modulation signal to the complex logic editable device through the integrated circuit bus channel, so that the complex logic editable device receives the information sent from the first operating system through the integrated circuit bus channel, parses and extracts the pulse width modulation value in the information, generates a corresponding general input / output port waveform level according to the pulse width modulation value, and outputs the pulse width modulation waveform to the fan array unit through the second general input / output port (BANK Y).
[0161] S420: Each cooling fan in the fan array unit completes speed control based on its own pulse width modulation waveform.
[0162] Figure 5 A flowchart of the inter-core communication establishment phase provided by an embodiment of the present invention.
[0163] The steps of the inter-core communication establishment phase may include: Figure 5 S501~S507 shown.
[0164] S501: The first operating system loads an inter-core communication driver.
[0165] S502: The second operating system loads an inter-core communication driver.
[0166] S503: The second operating system sends a control right switching request for the integrated circuit bus controller to the first operating system through inter-core communication.
[0167] S504: The first operating system releases the control right to the integrated circuit bus controller and responds to the second operating system through inter-core communication.
[0168] S505: The second operating system sends a control right switching request for the platform environment control interface controller to the first operating system through inter-core communication.
[0169] S506: The first operating system releases the control right to the platform environment control interface controller, and responds to the second operating system through inter-core communication.
[0170] S507: The second operating system loads the integrated circuit bus driver, the management component transmission protocol driver and the platform environment control interface driver.
[0171] Figure 6 A flow chart of a server cooling system in a normal operation stage provided by an embodiment of the present invention.
[0172] After the inter-core communication establishment phase, the server cooling system enters the normal operation phase. The workflow of this phase is as follows: Figure 6 As shown, it may include S601~S613.
[0173] In the first stage, the second operating system obtains the first temperature information. Figure 6 S601~S603 shown.
[0174] S601: The second operating system sends a command for obtaining second temperature information to the temperature acquisition component. Specifically, the second operating system sends a command for obtaining second temperature information to each temperature acquisition component in turn. The second temperature information may include at least one of a server air outlet temperature, a server air inlet temperature, a hard disk backplane temperature, and a power supply unit temperature.
[0175] S602: The temperature acquisition components perform address matching. Specifically, each temperature acquisition component monitors the integrated circuit bus, and after matching the integrated circuit bus address, obtains the bus data packet and reads the request command for obtaining the second temperature information.
[0176] S603: The temperature acquisition component sends response information to the second operating system. Specifically, the temperature acquisition component sends the response information carrying the second temperature information to the second operating system via the integrated circuit bus.
[0177] In the second stage, the second operating system obtains the first temperature information, including: Figure 6 S604~S610 shown.
[0178] S604: The second operating system loads the management component transport protocol driver.
[0179] S605: The second operating system sends a command to the network card to obtain the temperature of the network card. Specifically, the second operating system sends a message command based on the management component transmission protocol of the integrated circuit bus to the network card through the integrated circuit bus to obtain the temperature information of the network card.
[0180] S606: The network card sends a response message to the second operating system. Specifically, the network card sends the response message carrying the network card temperature information to the second operating system.
[0181] S607: The second operating system sends a command for obtaining the temperature of the platform controller to the platform controller management engine unit. Specifically, the second operating system sends a command for obtaining the temperature information of the platform controller to the platform controller management engine unit through the second integrated circuit bus controller.
[0182] S608: The platform controller management engine unit sends a response message to the second operating system. Specifically, the platform controller management engine unit sends a response message carrying the platform controller temperature information to the second operating system.
[0183] S609: The second operating system sends a command for obtaining the temperature of the host unit to the host unit. Specifically, the second operating system sends a command for obtaining the temperature information of the host unit to the host unit through the first platform environment control interface controller.
[0184] S610: The host unit sends a response message to the first processing. Specifically, each central processing unit in the host unit monitors the platform environment control interface bus, compares its own platform environment control interface address with the bus address, and the central processing unit with a matching address responds to the request command and sends a response message to the second operating system. The second operating system receives and parses the host temperature information in the response message.
[0185] In the third stage, the second operating system controls the operation of the cooling fan according to the first temperature information and / or the second temperature information, including: Figure 6 S611~S613 shown.
[0186] S611: The second operating system calculates the fan control value according to the first temperature information and / or the second temperature information. Specifically, the second operating system determines whether the received first temperature information and the second temperature information are complete. If not, the request command is resent to the corresponding component. If the number of times the request command for a certain component is sent exceeds the preset threshold, the fan control value is directly calculated based on the existing temperature information. If it does not exceed the preset threshold, the request command can continue to be sent to the corresponding component. If the first temperature information and the second temperature information are complete, the fan control value is calculated according to the first temperature information and the second temperature information. The fan control value can be a control value corresponding to a cooling fan one by one.
[0187] S612: The second operating system sends a fan control value to the complex logic editable device. Specifically, the second operating system checks the fan control value sending interface. If the fan control value sending interface is a pulse width modulation interface, the second operating system sends a first pulse width modulation signal to the complex logic editable device through the pulse width modulation interface. The complex logic editable device receives the signal through the first general input / output port (BANK X) and transparently transmits it to the second general input / output port (BANK Y), so that the complex logic editable device outputs a pulse width modulation waveform to the fan array unit through the second general input / output port (BANK Y). If the fan control value sending interface is an integrated circuit bus interface, the second operating system sends a pulse width modulation signal to the complex logic editable device through the integrated circuit bus channel, so that the complex logic editable device receives the information sent from the second operating system through the integrated circuit bus channel, parses and extracts the pulse width modulation value in the information, generates a corresponding general input / output port waveform level according to the pulse width modulation value, and outputs the pulse width modulation waveform to the fan array unit through the second general input / output port (BANK Y).
[0188] S613: Each cooling fan in the fan array unit completes speed control based on its own pulse width modulation waveform.
[0189] In the normal operation stage of the server cooling system, the first operating system is used to update the fan control strategy to implement the corresponding fan control strategy in different business scenarios, so that the server components can work under better energy efficiency conditions. Next, the configuration method of the cooling configuration information is introduced.
[0190] Figure 7 A flow chart for updating heat dissipation configuration information provided by an embodiment of the present invention; Figure 8 A schematic diagram of the information format of heat dissipation configuration information provided by an embodiment of the present invention.
[0191] The steps of the fan cooling configuration information configuration phase may include: Figure 7 S701~S708 shown.
[0192] S701: The host computer generates heat dissipation configuration information. Specifically, the host computer generates corresponding control strategy information according to different application scenarios (such as high-load scenarios, low-load scenarios, etc.), that is, heat dissipation configuration information.
[0193] S702: The host computer sends the heat dissipation configuration information to the first operating system through the host computer interface. The host computer interface may be a Universal Asynchronous Receiver / Transmitter (UART) interface, and the format of the data packet for sending the heat dissipation configuration information may be as follows: Figure 8As shown, it may include an information header (such as Figure 8 0x55, 0xAA as shown), information body (such as Figure 8 The data header Payload Len, Data 1, Data 2, ..., Data N) and the check byte (such as Figure 8 The checksum ChkSum is shown.
[0194] S703: The first operating system reads the header of the data packet. Specifically, if the data packet adopts Figure 8 According to the structure shown, after receiving the data packet, the first operating system determines whether it is 0x55 or 0xAA by reading the first two bytes. If so, it parses the information body and check bytes in the data packet. If not, it notifies the host computer through the host computer interface that the data packet reception failed, so that the host computer resends the data packet.
[0195] S704: The first operating system verifies the data packet. Specifically, the first operating system calculates the verification information S according to the data information (data 1, data 2, ..., data N) in the data packet, and determines whether the verification information S is equal to the checksum ChkSum. If they are equal, the process proceeds to S705. If they are not equal, the process notifies the host computer through the host computer interface that the reception of the data packet fails, so that the host computer resends the data packet.
[0196] S705: The first operating system writes the data information in the data packet into a shared memory. The shared memory is a shared memory accessible by both the first operating system and the second operating system, and may be an electrically erasable programmable read only memory (EEPROM) of a baseboard management controller.
[0197] S706: The first operating system notifies the host computer that the data packet is received successfully.
[0198] S707: The first operating system notifies the second operating system through inter-core communication that the heat dissipation configuration information has been updated.
[0199] S708: The second operating system reads the heat dissipation configuration information from the shared memory for subsequent fan control.
[0200] It should be noted that in the embodiments of the server cooling method of the present invention, some of the steps or features may be ignored or not executed. The hardware or software functional modules divided for the convenience of description are not the only implementation form of the server cooling method provided by the embodiment of the present invention.
[0201] The above describes in detail various embodiments corresponding to the server heat dissipation method. On this basis, the present invention also discloses a server heat dissipation device, equipment, non-volatile storage medium and computer program product corresponding to the above method.
[0202] The invention is applied to a baseboard management controller, which includes a first operating system and a second operating system, wherein the response rate of the first operating system is higher than that of the second operating system.
[0203] Server cooling equipment may include: A first heat dissipation control module is used for, after the baseboard management controller is powered on, starting the first operating system before the second operating system, and after starting, communicating with the target monitoring component through the first bus to obtain first temperature information of the target monitoring component, accessing the temperature acquisition component through the second bus to obtain second temperature information, and controlling the operation of the heat dissipation fan according to the first temperature information and the second temperature information; The second heat dissipation control module is used to execute the bus control right switching task between the second operating system and the first operating system after the second operating system is started, and after the switching is completed, obtain the first temperature information through the first bus, obtain the second temperature information through the second bus, and control the operation of the heat dissipation fan according to the first temperature information and the second temperature information.
[0204] The first heat dissipation control module may include: A first temperature acquisition module is used for, after the first operating system is started, communicating with the target monitoring component through the first bus to acquire first temperature information of the target monitoring component, and accessing the temperature acquisition component through the second bus to acquire second temperature information; A first temperature information processing module, used for the first operating system to calculate a target fan speed according to the first temperature information and the second temperature information; The first fan control module is used in the first operating system to control the operation of the cooling fan according to a target fan speed.
[0205] The second heat dissipation control module may include: A second temperature acquisition module is used for, after the second operating system is started, communicating with the target monitoring component through the first bus to acquire first temperature information of the target monitoring component, and accessing the temperature acquisition component through the second bus to acquire second temperature information; A second temperature information processing module, used for the second operating system to calculate a target fan speed according to the first temperature information and the second temperature information; The second fan control module is used for the second operating system to control the operation of the cooling fan according to the target fan speed.
[0206] It should be noted that in each implementation of the server heat dissipation device provided in the embodiment of the present invention, the division of units is only a logical functional division, and other division methods can be used. The connection method between different units can be electrical, mechanical or other connection methods. The separated units can be located in the same physical location or distributed on multiple network nodes. Each unit can be implemented in the form of hardware or in the form of a software functional unit. That is, part or all of the units provided in the embodiment of the present invention can be selected according to actual needs and the corresponding connection method or integration method can be adopted to achieve the purpose of the embodiment of the present invention.
[0207] Since the embodiments of the apparatus part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the apparatus part, which will not be repeated here.
[0208] Fig. 9 A schematic diagram of the structure of a server heat dissipation device provided in an embodiment of the present invention.
[0209] like Fig. 9 As shown, the server heat dissipation device provided in an embodiment of the present invention includes: a memory 910, used to store a computer program 911; a processor 920, used to execute the computer program 911, and when the computer program 911 is executed by the processor 920, the steps of the server heat dissipation method provided in any of the above embodiments are implemented.
[0210] Among them, the processor 920 may include one or more processing cores, such as a 3-core processor, a 9-core processor, etc. The processor 920 may be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), and programmable logic array (PLA). The processor 920 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 920 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 920 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.
[0211] The memory 910 may include one or more non-volatile storage media, which may be non-transitory. The memory 910 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory 910 is at least used to store the following computer program 911, wherein the computer program 911, after being loaded and executed by the processor 920, can implement the relevant steps in the server heat dissipation method disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory 910 may also include an operating system 912 and data 913, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 912 may be Windows or other types of operating systems. Data 913 may include, but is not limited to, the data involved in the above method.
[0212] In some embodiments, the server cooling device may further include a display screen 930 , a power supply 940 , a communication interface 950 , an input / output interface 960 , a sensor 970 , and a communication bus 980 .
[0213] Those skilled in the art will understand that Fig. 9 The structure shown in the figure does not constitute a limitation on the server cooling device, and may include more or fewer components than shown in the figure.
[0214] The server heat dissipation device provided in the embodiment of the present invention includes a memory and a processor. When the processor executes the program stored in the memory, it can implement the steps of the server heat dissipation method provided in the above embodiment, and the effect is the same as above.
[0215] An embodiment of the present invention provides a non-volatile storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the server heat dissipation method provided in any one of the above embodiments can be implemented.
[0216] The non-volatile storage medium may include: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and other media that can store program codes.
[0217] For the introduction of the non-volatile storage medium provided in the embodiment of the present invention, please refer to the above method embodiment, and the effect thereof is the same as the server heat dissipation method provided in the embodiment of the present invention, and the present invention will not elaborate on it here.
[0218] An embodiment of the present invention provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the server heat dissipation method provided in any one of the above embodiments.
[0219] For an introduction to the computer program product provided by the embodiment of the present invention, please refer to the above method embodiment, and the effect thereof is the same as the server heat dissipation method provided by the embodiment of the present invention, and the present invention will not elaborate on it here.
[0220] The above is a detailed introduction to a server cooling system, method and baseboard management controller provided by the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can refer to each other. For the devices, equipment, non-volatile storage media and computer program products disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple, and the relevant parts can refer to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present invention, the present invention can also be improved and modified in a number of ways, and these improvements and modifications also fall within the scope of protection of the present invention.
[0221] It should also be noted that, in this specification, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.
Claims
1. A server cooling system, characterized in that: Including baseboard management controller, temperature collection component and cooling fan; The baseboard management controller includes a first operating system and a second operating system, and the response rate of the first operating system is higher than that of the second operating system; After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
2. The server cooling system according to claim 1, characterized in that: The target monitoring component includes at least one of a host unit, a network card, an external card, a power supply unit, a security module and a satellite controller of the baseboard management controller.
3. The server cooling system according to claim 1, characterized in that: The target monitoring component at least includes a host unit, and the first bus at least includes a first platform environment control interface bus for connecting the host unit.
4. The server cooling system according to claim 3, characterized in that: The first operating system communicates with the host unit through the first platform environment control interface bus to obtain the host unit temperature information, including: The first operating system loads a platform environment control interface driver to call the first platform environment control interface bus to send a command to the host unit to obtain the host unit temperature information, and obtains the host unit temperature information in the response information fed back by the host unit through the first platform environment control interface bus.
5. The server cooling system according to claim 4, characterized in that: The command for acquiring the host unit temperature information includes address information of a target host unit monitoring component; The host unit feeds back response information through the first platform environment control interface bus, including: After monitoring the data packet on the first platform environment control interface bus, each central processor in the host unit compares the address information of the target host unit monitoring component recorded in the data packet with its own address information, and if the addresses match, obtains the temperature information of the target host unit monitoring component according to the type of the target host unit monitoring component, and writes the temperature information of the target host unit monitoring component into the response information fed back to the first operating system; Among them, the type of the target monitoring component includes at least one of the central processing unit and memory.
6. The server cooling system according to claim 1, characterized in that: The target monitoring component at least includes a network card, and the first bus at least includes a first integrated circuit bus for connecting the network card.
7. The server cooling system according to claim 6, characterized in that: The first operating system communicates with the network card through the first integrated circuit bus to obtain the network card temperature information, including: The first operating system loads a management component transmission protocol to call the first integrated circuit bus to send a command to the network card to obtain the temperature information of the network card, and obtains the temperature information of the network card in the response information fed back by the network card through the first integrated circuit bus.
8. The server cooling system according to claim 7, characterized in that: The command for obtaining the temperature information of the network card includes the address information of the target network card; The network card feeds back response information through the first integrated circuit bus, including: After monitoring the data packet on the first integrated circuit bus, the network card compares the address information of the target network card recorded in the data packet with its own address information. If the addresses match, the network card temperature information obtained locally is written into the response information fed back to the first operating system.
9. The server cooling system according to claim 1, characterized in that: The target monitoring component includes at least a satellite controller of the baseboard management controller, and the first bus includes at least a second integrated circuit bus for connecting the satellite controller.
10. The server cooling system according to claim 9, characterized in that: The first operating system communicates with the satellite controller through the second integrated circuit bus to obtain temperature information of the satellite controller, including: The first operating system loads the intelligent platform management bus driver to call the second integrated circuit bus to send a command to obtain the temperature information of the satellite controller to the target satellite controller, and obtains the satellite controller temperature information in the response information fed back by the satellite controller through the second integrated circuit bus.
11. The server cooling system according to claim 10, characterized in that: The command for acquiring the temperature information of the satellite controller includes the address information of the target satellite controller; The satellite controller feeds back response information through the second integrated circuit bus, including: After the satellite controller monitors the data packet on the second integrated circuit bus, it compares the address information of the target satellite controller recorded in the data packet with its own address information. If the addresses match, the satellite controller temperature information obtained locally is written into the response information fed back to the first operating system.
12. The server cooling system according to claim 1, characterized in that: The temperature collection component includes: at least one of a server air duct temperature collection component and a server storage area temperature collection component.
13. The server cooling system according to claim 1, characterized in that: The second operating system performs the bus control right switching task with the first operating system, including: The second operating system sends a control right switching request for the first bus, a control right switching request for the second bus, and a control right switching request for a third bus between the baseboard management controller and the cooling fan to the first operating system; The first operating system first releases the control right to the first bus and the control right to the second bus, and then releases the control right to the third bus; Before releasing control over the third bus, if control over the first bus has been released, the first operating system reads the first temperature information from a shared memory between the first operating system and the second operating system; if control over the second bus has been released, the first operating system reads the second temperature information from the shared memory.
14. The server cooling system according to claim 1, characterized in that: The first operating system is also used to load the host computer communication interface driver to call the host computer communication interface of the baseboard management controller to establish a communication connection with the host computer, receive the heat dissipation configuration information sent by the host computer and write it into the shared memory between the first operating system and the second operating system.
15. The server cooling system according to claim 1, characterized in that: Controlling the operation of a cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; Identifying the type of the fan control value sending interface installed in the baseboard management controller; If the fan control value sending interface is a pulse width modulation interface, a first pulse width modulation signal is generated according to the target fan speed, and the first pulse width modulation signal is sent to a fan control unit, so that the fan control unit transparently transmits the first pulse width modulation signal to control the cooling fan to run at the target fan speed; If the fan control value sending interface is an integrated circuit bus interface, a first integrated circuit bus signal is generated according to the target fan speed, and the first integrated circuit bus signal is sent to the fan control unit, so that the fan control unit generates a second pulse width modulation signal according to the first integrated circuit bus signal to control the cooling fan to run at the target fan speed.
16. The server cooling system according to claim 1, characterized in that: Controlling the operation of a cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to the cooling fan according to the first temperature information and the second temperature information; generating a pulse width modulation signal corresponding to the target fan speed according to the model of the cooling fan; A pulse width modulation signal corresponding to the cooling fan is output to the cooling fan through a fan control pin corresponding to the cooling fan.
17. The server cooling system according to claim 1, characterized in that: Controlling the operation of a cooling fan according to the first temperature information and the second temperature information includes: Calculating a target fan speed corresponding to each of the cooling fans according to the first temperature information, the second temperature information and the position of each of the cooling fans; The cooling fan is controlled to run at the corresponding target fan speed through a fan control pin corresponding to the cooling fan.
18. A baseboard management controller, characterized in that: comprising a first operating system and a second operating system, wherein the response rate of the first operating system is higher than that of the second operating system; After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
19. A server heat dissipation method, characterized in that: Applied to a baseboard management controller, the baseboard management controller includes a first operating system and a second operating system, the response rate of the first operating system is higher than that of the second operating system; Server cooling methods include: After the baseboard management controller is powered on, the first operating system is started before the second operating system, and after starting, the first operating system communicates with the target monitoring component through the first bus to obtain the first temperature information of the target monitoring component, accesses the temperature acquisition component through the second bus to obtain the second temperature information, and controls the operation of the cooling fan according to the first temperature information and the second temperature information; After the second operating system is started, it executes a bus control switching task with the first operating system, and after the switching is completed, obtains the first temperature information through the first bus, obtains the second temperature information through the second bus, and controls the operation of the cooling fan according to the first temperature information and the second temperature information.
20. A server heat dissipation device, characterized in that: include: Memory for storing computer programs; A processor is used to execute the computer program, and when the computer program is executed by the processor, the steps of the server heat dissipation method as claimed in claim 19 are implemented.
21. A non-volatile storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the server heat dissipation method as claimed in claim 19 are implemented.
22. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the server heat dissipation method as claimed in claim 19 are implemented.
Citation Information
Patent Citations
Control method and system of server heat dissipating controller
CN110594180A
AI server heat dissipation regulation and control method and system, terminal and storage medium
CN114035662A
Start control method and device of embedded system, storage medium and electronic equipment
CN116830082A
Server monitoring method and device, substrate controller and embedded system
CN117555760A
Server heat dissipation control device and method
CN118276655A
Cited By
Server monitoring system, method, device, equipment, medium and product
CN119847877A
Server fan control method and electronic equipment
CN121050553A