Server

By introducing a substrate management controller, voltage regulation controller and central processor into the server, and calculating gain values ​​using software configuration, the problem of difficult to quickly and accurately obtain server power consumption in the existing technology is solved, and an efficient and simple server is achieved Power consumption management.

CN119472974APending Publication Date: 2025-02-18XFUSION DIGITAL TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411565084.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

The prior art is difficult to obtain the power consumption of the server quickly, accurately and at low cost, especially in a high-power server environment, resulting in the power consumption of the server exceeding the power supply capacity of the PSU, which may cause failure.

Method used

By introducing a substrate management controller, voltage regulation controller and central processor into the server, the power consumption of each power supply unit is obtained through software configuration, the gain value is calculated, and the total power consumption of the server is determined through the voltage regulation controller. .

Benefits of technology

It realizes fast and accurate acquisition of server power consumption, reduces the need for hardware equipment and cable connections, improves the simplicity and expansion capabilities of the server structure, and ensures efficient management of server power consumption by the central processor.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119472974A_ABST
    Figure CN119472974A_ABST
Patent Text Reader

Abstract

The invention discloses a server, which comprises one or more power supply units, a substrate management controller, a voltage regulation controller and a central processing unit, and is characterized in that the power supply units are respectively connected with the substrate management controller and the voltage regulation controller; the voltage regulation controller is connected with the substrate management controller and the central processing unit, and the substrate management controller obtains the power of each power supply unit and obtains a gain value according to the sum of the power of each power supply unit; the voltage regulation controller obtains the power of the server according to the gain value; and the central processing unit obtains the power of the server from the voltage regulation controller so as to regulate the power consumption of a target part in the server according to the power consumption of the server. In this way, the power of the server can be quickly and accurately reported by the voltage regulation controller, and then more accurate power consumption control over related parts in the server by the central processing unit is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of servers, and in particular to a circuit for determining power consumption of a server. Background Art

[0002] In current technology, in order to meet the power supply needs of servers, several power supply units (PSUs) are generally configured on the server to convert 220V AC power into 12V DC power to power the server. For high-power servers, several PSUs are connected in parallel to power the server according to the power supply needs to ensure the high power consumption needs of the server. Based on the current and voltage signals of each PSU, the power consumption of the server can be obtained, and then the power consumption of related components in the server can be controlled according to the power consumption of the server to avoid server power consumption exceeding the power supply capacity of the PSU and causing server failure. Therefore, it is particularly important to know the power consumption of the server quickly, accurately and at low cost. Summary of the invention

[0003] An embodiment of the present invention provides a server, which can enable a voltage regulation controller to obtain the power consumption of the server based on the connection links of various components of the server, and can quickly adapt a new power supply unit, so that the power consumption acquisition efficiency of the server is higher and it is more conducive to the management of the server.

[0004] To solve the above technical problems, in the first aspect, an embodiment of the present application provides a server, which includes one or more power supply units, a baseboard management controller, a voltage regulation controller and a central processing unit. The power supply units are respectively connected to the baseboard management controller and the voltage regulation controller, and the voltage regulation controller is respectively connected to the baseboard management controller and the central processing unit, wherein the baseboard management controller is used to obtain the power consumption of each power supply unit, and obtain a gain value according to the sum of the power consumption of each power supply unit; the voltage regulation controller is used to obtain the power consumption of the server according to the gain value; and the central processing unit is used to obtain the power consumption of the server from the voltage regulation controller to adjust the power consumption of the target components in the server according to the power consumption of the server.

[0005] In this way, the baseboard management controller obtains a gain value according to the total power consumption of each power supply unit, and then the voltage regulation controller obtains the power consumption of the server according to the gain value. The power consumption detection of the server can be realized without establishing a complex hardware detection circuit. Moreover, even if a new power supply unit is added, it can be quickly adapted to the baseboard management controller, so that the baseboard management controller obtains the total power consumption of all power supply units to facilitate the voltage regulation controller to determine the power consumption of the server, making the determination of the power consumption of the server simpler and more efficient, and thus making the central processing unit more efficient in power consumption management of target components in the server according to the power consumption of the server.

[0006] In a possible implementation of the first aspect above, the voltage regulation controller includes a first voltage port and a second voltage port, the power supply unit is connected to the voltage regulation controller through the first voltage port, the second voltage port of the voltage regulation controller is connected to a fixed voltage, and the baseboard management controller obtains a gain value according to the total power consumption of each power supply unit, including: the baseboard management controller obtains a first voltage value of the first voltage port and a second voltage value of the second voltage port from the voltage regulation controller, and obtains the gain value according to the total power consumption of each power supply unit, the first voltage value and the second voltage value.

[0007] In this way, the gain value can be obtained according to the total power consumption of each power supply unit, the first voltage value of the first voltage port and the second voltage value of the second voltage port, so that the gain value can be obtained based on software calculation, and then the voltage regulation controller can obtain the power consumption of the server according to the gain value. There is no need to set up complex hardware circuits. The power consumption of the server can be obtained by calculation, making the acquisition of the server power consumption more efficient.

[0008] In a possible implementation of the first aspect, the voltage regulating controller obtains the power consumption of the server according to the gain value, including: the voltage regulating controller obtains the power consumption of the server based on the first voltage value, the second voltage value and the gain value. In this way, the voltage regulating controller can obtain the current first voltage value of the first voltage port and the current second voltage value of the second voltage port each time the power consumption of the server needs to be calculated, and the current power consumption of the server can be calculated according to the first voltage value, the second voltage value and the gain value calculated by the baseboard management controller, so that the power consumption of the server can be obtained more quickly.

[0009] In a possible implementation of the first aspect, the voltage regulator controller includes a first register, and the baseboard management controller is further configured to store the gain value in the first register included in the voltage regulator controller. In this way, the gain value is stored based on the first register of the baseboard management controller, so that the baseboard management controller can better save the gain value.

[0010] In a possible implementation of the first aspect above, the voltage regulation controller includes a second register, and after the voltage regulation controller obtains the power consumption of the server according to the gain value, it is also used to store the power consumption of the server in the second register; the central processing unit obtains the power consumption of the server from the second register.

[0011] In the implementation of the present application, the second register is a read-only memory relative to the central processing unit. In this way, the voltage regulation controller writes the power consumption of the server into the read-only register, which can prevent the power consumption of the server from being maliciously tampered with and ensure the accuracy of the power consumption of the server reported to the central processing unit.

[0012] In a possible implementation of the first aspect above, after the voltage regulating controller obtains the power consumption of the server, the baseboard management controller is also used to read the power consumption of the server from the second register, compare the power consumption of the server with the sum of the power consumption of each power supply unit, and generate an alarm message when the power consumption of the server does not match the sum of the power consumption of each power supply unit. In this way, when the power consumption of the server calculated by the voltage regulating controller and the sum of the power consumption of the power supply unit calculated by the baseboard management controller based on the power consumption of each power supply unit do not match, an alarm message is generated, which can promptly remind the user that the power consumption of the server currently reported is wrong, avoiding the problem of the central processor managing the server based on the wrong power consumption of the server, causing the server to be paralyzed.

[0013] In a possible implementation of the first aspect, the baseboard management controller is further used to store the gain value to the voltage regulation controller again when the gain value is not successfully stored in the voltage regulation controller, until the gain value is successfully stored in the voltage regulation controller, or the baseboard management controller is further used to store the gain value to the voltage regulation controller again when the gain value is not successfully stored in the voltage regulation controller, and if the number of times the gain value is re-stored exceeds a preset number, the operation of storing the gain value is terminated. In this way, the baseboard management controller re-stores the gain value when it is determined that the gain value is not successfully stored, ensuring that the voltage regulation controller can obtain the power consumption of the server based on the gain value. Or, if multiple storage fails, the storage is abandoned.

[0014] In a possible implementation of the first aspect above, the baseboard management controller includes a first communication interface, each power supply unit includes a second communication interface, the voltage regulation controller includes a third communication interface, the baseboard management controller is connected to the power supply unit through the first communication interface and the second communication interface, and the baseboard management controller is connected to the voltage regulation controller through the first communication interface and the third communication interface. The baseboard management controller obtains the power consumption of the power supply unit through the first communication interface and the second communication interface, and stores the gain value to the voltage regulation controller through the first communication interface and the third communication interface.

[0015] In a possible implementation of the first aspect above, the first communication interface, the second communication interface, and the third communication interface are interfaces based on the I2C communication protocol.

[0016] In a possible implementation of the first aspect above, the voltage regulation controller also includes a fourth communication interface, the central processing unit includes a fifth communication interface, the voltage regulation controller is connected to the central processing unit through the fourth communication interface and the fifth communication interface, and the fourth communication interface and the fifth communication interface are communication interfaces based on the power management protocol or the virtual machine exchange interface protocol. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings used in the description of the embodiments are briefly introduced below.

[0018] Figure 1 is a schematic diagram showing the structure of a server according to some embodiments of the present application;

[0019] Figure 2 is a schematic diagram showing the structure of another server according to some embodiments of the present application;

[0020] Figure 3 is a schematic diagram showing the structure of another server according to some embodiments of the present application;

[0021] Figure 4 is a schematic diagram showing the structure of another server according to some embodiments of the present application;

[0022] Figure 5 is a schematic diagram showing a process of power consumption management of a server according to some embodiments of the present application;

[0023] Figure 6 A structural diagram of another server is shown according to some embodiments of the present application.

[0024] Reference numerals:

[0025] 100, power supply unit; 110, second communication interface; 120, voltage output pin;

[0026] 200, baseboard management controller; 210, first communication interface;

[0027] 300, voltage regulation controller; 310, third communication interface; 320, first voltage port; 330, second voltage port; 340, first register; 350, second register; 360, fourth communication interface;

[0028] 400, central processing unit; 410, fifth communication interface. DETAILED DESCRIPTION

[0029] The following specific embodiments illustrate the implementation of the present application, and those skilled in the art can easily understand other advantages and effects of the present application from the contents disclosed in this specification. Although the description of the present application will be introduced in conjunction with the embodiments, this does not mean that the features of this application are limited to the implementation. On the contrary, the purpose of introducing the application in conjunction with the implementation is to cover other options or modifications that may be extended based on the claims of the present application. In order to provide a deep understanding of the present application, the following description will include many specific details. The present application can also be implemented without using these details. In addition, in order to avoid confusion or blurring the focus of the present application, some specific details will be omitted in the description. It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict.

[0030] It should be noted that in this specification, similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings.

[0031] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.

[0032] A server is a device that provides computing services. It is a type of computer that provides computing or application services to other clients (such as PCs, smartphones, ATMs, and other terminals) in the network. Since the server needs to respond to service requests and process them, it should have the ability to undertake and guarantee services. Compared with general computer architectures, it has higher requirements in terms of processing power, stability, reliability, security, scalability, and manageability.

[0033] The server consists of a processor, hard disk, memory, system bus, etc., which is similar to the general computer architecture. In a network environment, depending on the type of service provided by the server, it is usually divided into file servers, database servers, application servers, WEB servers, etc. For example, it can be a high-density server, rack server, cabinet server, AI server, GPU server, etc.

[0034] Currently, there are more and more scenarios for using servers, and the requirements for server performance and power consumption are getting higher and higher. Therefore, it is particularly important to monitor server power consumption.

[0035] Based on this, the present application provides a low-cost, miniaturized, and highly scalable server, which includes one or more power supply units, a baseboard management controller, a voltage regulation controller, and a central processing unit, wherein the power supply unit is respectively connected to the baseboard management controller and the voltage regulation controller, and the voltage regulation controller is respectively communicated with the baseboard management controller and the central processing unit.

[0036] The baseboard management controller is configured by software configuration, so that the baseboard management controller obtains the power consumption of each power supply unit, obtains the gain value according to the sum of the power consumption of each power supply unit, and enables the voltage regulation controller to obtain the power consumption of the server according to the gain value, and then enables the central processing unit to read the power consumption of the server from the voltage regulation controller, and adjust the power consumption of the relevant target components in the server according to the power consumption of the server. Compared with the method of configuring a voltage sensor for each PSU to obtain a voltage value, configuring a current sensor to obtain a current value, and then the voltage regulation controller determines the power consumption of the server according to the current value and voltage value of each PSU, the hardware equipment of the server is reduced, and the cable connection link between the PSU and the voltage regulation controller is reduced, so that the server structure is simple, and the new power supply unit can be quickly adapted without being restricted by the hardware circuit, and the expansion capability is strong, so that the power consumption acquisition efficiency of the server is higher, the cost of obtaining the power consumption of the server is lower, and it is more conducive to the power consumption management of the server by the central processing unit.

[0037] like Figure 1 As shown, the server provided by the implementation of the present application includes one or more power supply units 100 (such as power supply units PSU1, ..., power supply units PSUn), a baseboard management controller (Baseboard Management Controller, referred to as BCM) 200, a voltage regulation controller (Voltage regulation controller, referred to as VR controller) 300 and a central processing unit (Central Processing Unit, referred to as CPU) 400. Among them, the power supply unit 100 is connected to the baseboard management controller 200 and the voltage regulation controller 300 respectively, the baseboard management controller 200 is connected to the voltage regulation controller 300, and the voltage regulation controller 300 is connected to the central processing unit 400.

[0038] The server power consumption determination circuit includes: Figure 1 The baseboard management controller 200 and the voltage regulation controller 300 are shown, and the baseboard management controller and the voltage regulation controller are connected.

[0039] The power supply unit 100 is also called PSU, which is used to supply power to the server. The power consumption of the PSU can reflect the power consumption of the server system.

[0040] The baseboard management controller 200 is used to obtain the power consumption of each power supply unit 100 , obtain a gain value according to the sum of the power consumption of each power supply unit 100 , and write the gain value into the voltage regulation controller 300 .

[0041] The baseboard management controller 200 is a dedicated controller for monitoring and managing the server. The baseboard management controller 200 is an independent system under the server host system. This independent system has its own processor and memory. Even if the host hardware or operating system of the server crashes or is shut down, the components in the server can still be managed by the system of the baseboard management controller 200. Therefore, the baseboard management controller 200 can read the power consumption of the corresponding power supply unit 100 from the register of each power supply unit 100, calculate the total power consumption of the power supply unit 100 according to the power consumption of each power supply unit 100, and interact with the voltage regulator controller 300.

[0042] The voltage regulating controller 300 is used to obtain the power consumption of the server according to the gain value.

[0043] The main function of the voltage regulator controller 300 is to keep the output voltage of the internal circuit of the server stable and ensure that the server can run stably. The voltage regulator controller 300 can automatically adjust the output voltage to provide protection for the server equipment and prevent equipment damage or performance degradation caused by voltage fluctuations. In addition, the voltage regulator controller 300 can calculate and report the power consumption of the server through software code configuration.

[0044] The central processor 400 is used to obtain the power consumption of the server from the voltage regulation controller 300 and adjust the power consumption of the target component in the server according to the power consumption of the server.

[0045] Among them, the server's central processing unit 400 core processing device needs to quickly and accurately obtain the server's power consumption from the voltage regulation controller 300, and control the power consumption of each component in the server based on the server's power consumption and the server's capped power consumption, such as shutting down idle components and reducing the power consumption of non-important components.

[0046] In the server provided by the implementation method of the present application, the baseboard management controller 200 directly obtains the gain value according to the sum of the power consumption of each power supply unit 100, writes the gain value into the voltage regulation controller 300, and the voltage regulation controller 300 obtains the power consumption of the server according to the gain value, and sends the power consumption of the server to the central processor 400. In this way, by configuring the software program of the baseboard management controller 200 in the form of code or configuration file, the baseboard management controller 200 obtains the gain value according to the power consumption of the power supply unit 100, and then the voltage regulation controller 300 obtains the power consumption of the server according to the gain value, which is not limited by the hardware circuit. Even if a new power supply unit 100 is added, it can be quickly adapted to the baseboard management controller 200, so that the baseboard management controller 200 obtains the power consumption of all power supply units 100, and has strong expansion capability, so that the power consumption acquisition cost of the server is lower, more convenient and efficient.

[0047] In the implementation of this application, Figure 2 As shown, the baseboard management controller 200 includes a first communication interface 210, the power supply unit 100 includes a second communication interface 110, the baseboard management controller 200 is connected to each power supply unit 100 through the first communication interface 210 and the second communication interface 110, and the baseboard management controller 200 reads the power consumption of each power supply unit 100 from the register of each power supply unit 100 through the first communication interface 210 and the second communication interface 110.

[0048] Furthermore, the baseboard management controller 200 accumulates the power consumption of each power supply unit 100 to obtain the total power consumption of the power supply unit 100 , and then obtains a gain value, and writes the gain value into the voltage regulation controller 300 .

[0049] If there is one power supply unit 100, the sum of the power consumption of the power supply units 100 is the power consumption of the power supply unit 100. If there are two or more power supply units 100, the baseboard management controller 200 obtains the power consumption of each power supply unit 100 respectively, and after obtaining the power consumption of all power supply units 100, the power consumption of all power supply units 100 is accumulated and summed to obtain the sum of the power consumption of the power supply units 100.

[0050] Furthermore, if Figure 2 As shown, the voltage regulating controller 300 includes a third communication interface 310 , and the baseboard management controller 200 is connected to the voltage regulating controller 300 through the first communication interface 210 and the third communication interface 310 .

[0051] The voltage regulation controller 300 also includes a first voltage port 320 and a second voltage port 330. Each power supply unit 100 includes a voltage output pin 120. Each power supply unit 100 is electrically connected to the first voltage port 320 of the voltage regulation controller 300 through the voltage output pin 120, so that the voltage regulation controller 300 obtains a first voltage value of each power supply unit 100 through the first voltage port 320. The voltage regulation controller 300 is connected to a fixed voltage through the second voltage port 330, so that the voltage regulation controller 300 obtains a second voltage value of the fixed voltage through the second voltage port 330. The baseboard management controller 200 obtains the first voltage value of the first voltage port 320 and the second voltage value of the second voltage port 330 from the voltage regulation controller 300 through the first communication interface 210 and the third communication interface 310, and calculates a gain value based on the first voltage value, the second voltage value and the total power consumption of each power supply unit 100.

[0052] In one implementation of the present application, the baseboard management controller 200 determines the gain value in the following manner:

[0053] PSYS=ISYS*GainV_ISYS·VSYS

[0054] That is to say

[0055]

[0056] Among them, PSYS is the total power consumption of the power supply unit 100, the unit is A*V, that is, W; ISYS is the second voltage value of the second voltage port 330, the unit is V; VSYS is the first voltage value of the first voltage port 320, the unit is V; GainV_ISYS is the gain value, the unit is A / V.

[0057] Further, in the implementation of the present application, the fixed voltage may be 3.3V, and therefore, the second voltage value of the second voltage port 330 of the voltage regulator controller 300 may be 3.3V (ie, 3V3). Therefore, in another implementation of the present application, the gain value is determined in the following manner:

[0058] PSYS=3V3*GainV_ISYS·VSYS

[0059] That is to say

[0060]

[0061] Among them, PSYS is the total power consumption of the power supply unit 100, and the unit is A*V, that is, W; 3V3 is the second voltage value of the second voltage port 330, and the unit is V, for example, 3.3V (3300mV); VSYS is the first voltage value of the first voltage port 320, and the unit is V, for example, 12V; GainV_ISYS is the gain value, and the unit is A / V.

[0062] It should be noted that in the implementation of the present application, the first voltage value can be the rated voltage value of the power supply unit 100, such as 12V, or it can be the actual voltage value of the power supply unit 100 corresponding to the first voltage port 320 obtained by the voltage regulation controller 300 when the baseboard management controller 200 calculates the gain value.

[0063] It should also be noted that if it is an actual voltage value, since multiple power supply units 100 are connected in parallel to the voltage regulating controller 300, assuming that the voltages of each power supply unit 100 are the same, the voltage regulating controller 300 obtains the voltage value of any power supply unit 100 as the first voltage value through the first voltage port 320. Of course, in actual applications, since each power supply unit 100 has a certain internal resistance, the voltages of each power supply unit 100 may be different. Therefore, the voltage regulating controller 300 may also obtain the voltage values ​​of all power supply units 100 through the first voltage port 320 and then obtain the average voltage value as the first voltage value. Of course, it is also possible to obtain the maximum voltage value or the minimum voltage value of all power supply units 100 as the first voltage value.

[0064] It should also be noted that in the implementation of the present application, only the rated voltage value of the first voltage value is 12V and the second voltage value is 3.3V for exemplary description. Of course, the first voltage value and the second voltage value can also be other voltage values.

[0065] Furthermore, in the implementation of the present application, the baseboard management controller 200 stores the gain value in the voltage regulation controller 300 through the first communication interface 210 and the third communication interface 310 .

[0066] Furthermore, if Figure 3 As shown, the voltage regulating controller 300 further includes a first register 340 , and the baseboard management controller 200 can store the gain value in the first register 340 included in the voltage regulating controller 300 through the first communication interface 210 and the third communication interface 310 .

[0067] It should be noted that the first register 340 is a writable and readable register. The baseboard management controller 200 can write a gain value into the first register 340 of the voltage regulator controller 300 , and the baseboard management controller 200 can also read a gain value from the first register 340 .

[0068] Further, the voltage regulating controller 300 determines the power consumption of the server based on the first voltage value of the first voltage port 320 , the second voltage value of the second voltage port 330 , and the gain value.

[0069] In the implementation of the present application, although the rated voltage value of the first voltage value of each power supply unit 100 is 12V, in actual work, the output voltage of the power supply unit 100 will change. Therefore, in the implementation of the present application, when calculating the power consumption of the server, the voltage regulator controller 300 needs to obtain the first voltage value of the first voltage port 320 in real time. In addition, because multiple power supply units 100 are connected to the voltage regulator controller 300 in parallel, assuming that the voltages of each power supply unit 100 are the same, the voltage regulator controller 300 obtains the voltage value of any power supply unit 100 through the first voltage port 320 as the first voltage value.

[0070] Of course, in practical applications, since each power supply unit 100 has a certain internal resistance, the voltages of each power supply unit 100 may be different. Therefore, the voltage regulator controller 300 may obtain the voltage values ​​of all power supply units 100 through the first voltage port 320 and then obtain the voltage average value as the first voltage value. Of course, the maximum voltage value or the minimum voltage value of all power supply units 100 may also be obtained as the first voltage value.

[0071] Furthermore, the voltage regulating controller 300 reads the gain value in the first register 340 , and calculates the power consumption of the server according to the first voltage value of the first voltage port 320 , the second voltage value of the second voltage port 330 , and the gain value.

[0072] In one implementation, the power consumption of the server is obtained as follows:

[0073] PSYS′=ISYS'*GainV ISYS *VSYS′

[0074] Among them, PSYS′ is the power consumption of the server, in units of A*V, that is, W; ISYS′ is the second voltage value of the second voltage port 300, in units of V, for example, 3.3V (3300mV); VSYS′ is the first voltage value of the first voltage port 320, in units of V; GainV_ISYS is the gain value read from the first register 340, in units of A / V.

[0075] Furthermore, in the implementation of the present application, after the voltage regulation controller 300 calculates the power consumption of the server based on the first voltage value, the second voltage value and the gain value, the voltage regulation controller 300 also stores the calculated power consumption of the server in the first register 340, and the central processing unit 400 reads the power consumption of the server from the first register 340.

[0076] Furthermore, in another implementation of the present application, Figure 3 As shown, the voltage regulator controller 300 also includes a second register 350 . After the voltage regulator controller 300 calculates the power consumption of the server according to the first voltage value, the second voltage value and the gain value, the voltage regulator controller 300 also stores the calculated power consumption of the server in the second register 350 .

[0077] The second register 350 is a writable and readable register relative to the voltage regulating controller 300 , and is a read-only register relative to the baseboard management controller 200 , the central processing unit 400 and other controllers.

[0078] Furthermore, the CPU 400 obtains the power consumption of the server from the second register 350 of the voltage regulator controller 300, so as to adjust the power consumption of target components such as idle components and non-important components in the server according to the power consumption of the server. In this way, the CPU 400 has only read permission to the power consumption of the server stored in the voltage regulator controller 300, and has no other permission, so as to prevent the user from maliciously tampering with the power consumption of the server stored in the voltage regulator controller 300 through the CPU 400 and other controllers, and ensure the authenticity of the power consumption of the server read from the second register 350 by the CPU 400.

[0079] Furthermore, in the implementation of the present application, the baseboard management controller 200 obtains a gain value based on the sum of the power consumption of each power supply unit 100 and writes it into the voltage regulation controller 300, so that the voltage regulation controller 300 calculates the power consumption of the server based on the gain value, the first voltage value, and the second voltage value. In this way, the baseboard management controller 200 can obtain the power consumption of each power supply unit 100 only once, perform a calculation based on the sum of the power consumption of each power supply unit 100, and the first voltage value and the second voltage value obtained by the voltage regulation controller 300, obtain the gain value, and store the gain value in the voltage regulation controller 300. The voltage regulation controller 300 can calculate the power consumption of the server based on the stored gain value and the first voltage value currently obtained, as well as the second voltage value each time the power consumption of the server is calculated, and obtain the latest power consumption of the server.

[0080] Alternatively, the baseboard management controller 200 obtains the power consumption of each power supply unit 100 based on a preset periodic timing, calculates a gain value according to the first voltage value, the second voltage value and the total power consumption of the power supply unit 100 obtained by the voltage regulation controller 300, and stores the gain value in the voltage regulation controller 300 to periodically update and modify the gain value stored in the voltage regulation controller 300. When calculating the power consumption of the server, the voltage regulation controller 300 can calculate the power consumption of the server according to the latest stored gain value and the first voltage value and the second voltage value currently obtained. There is no need for the baseboard management controller 200 to calculate and transmit the gain value every time the power consumption of the server is calculated, thereby reducing the load rate of the baseboard management controller 200 and thereby reducing the power consumption of the server.

[0081] Of course, in the implementation method of the present application, the baseboard management controller 200 can also obtain the power consumption of each power supply unit 100 based on a preset periodic timing, calculate the gain value according to the first voltage value, the second voltage value and the total power consumption of the power supply unit 100 obtained by the voltage regulation controller 300, and add timestamp information to the calculated gain value, and store the gain value carrying the timestamp information in the voltage regulation controller 300. When calculating the power consumption of the server, the voltage regulation controller 300 can read the latest gain value according to the timestamp information of the stored gain value, and calculate the power consumption of the server according to the latest gain value and the currently obtained first voltage value and the second voltage value.

[0082] Moreover, in the actual working process, the voltage of the power supply unit 100 may not reach 12V, that is, the voltage of the power supply unit 100 may change. Therefore, the baseboard management controller 200 only transmits the gain value, and the voltage regulation controller 300 can obtain a more real and accurate current power consumption of the server based on the latest first voltage value, the latest gain value, and the second voltage value, thereby improving the authenticity and accuracy of the server's power consumption.

[0083] Furthermore, in the implementation of the present application, after the baseboard management controller 200 writes the gain value into the first register 340 of the voltage regulation controller 300, it also reads the gain value from the first register 340 of the voltage regulation controller 300. If the gain value is read, it is determined that the gain value is successfully stored in the voltage regulation controller 300. If the gain value is not read, it is determined that the gain value is not successfully stored in the voltage regulation controller 300. In the case of determining that the gain value storage is unsuccessful, the gain value is stored in the first register 340 of the voltage regulation controller 300 again, and the gain value is continued to be read from the first register 340 of the voltage regulation controller 300. If the gain value is still not read, the gain value storage operation is repeated until the gain value is successfully written to the first register 340 of the voltage regulation controller 300.

[0084] It should be noted that the failure of the baseboard management controller 200 to store the gain value may specifically be due to the current communication connection being unstable, or the server being maliciously invaded, thereby causing a malfunction of the baseboard management controller 200 .

[0085] Furthermore, if the baseboard management controller 200 determines that the gain value storage to the voltage regulation controller 300 is unsuccessful, it will re-store the gain value to the voltage regulation controller 300 and continue to read the gain value from the first register 340 of the voltage regulation controller 300. If the gain value is still not read, the storage of the gain value is repeated. If the number of times the gain value is re-stored exceeds a preset number (for example, 5 times, 10 times, etc.), it can choose to disconnect from the voltage regulation controller 300, re-establish the communication connection, and re-try the gain value writing operation, or terminate the gain value storage operation, directly report an error, and perform manual troubleshooting.

[0086] Furthermore, after the voltage regulation controller 300 obtains the power consumption of the server, the baseboard management controller 200 also reads the power consumption of the server calculated by the voltage regulation controller 300 and written into the second register 350 from the second register 350, and re-acquires the power consumption of each power supply unit 100 to obtain the total power consumption of each power supply unit 100. The baseboard management controller 200 compares the total power consumption of the power supply unit 100 with the power consumption of the server, and generates an alarm message when the read power consumption of the server does not match the total power consumption of the current power supply unit 100.

[0087] Among them, the baseboard management controller 200 can read the power consumption of the server from the second register 350 regularly through the first communication interface 210 and the third communication interface 310 based on a preset period. After reading the power consumption of the server, the power consumption of each power supply unit 100 can be re-acquired, and the total power consumption of the power supply unit 100 can be calculated to determine whether the acquired power consumption of the server and the calculated total power consumption of the power supply unit 100 match.

[0088] Determining whether the power consumption of the server matches the total power consumption of the power supply unit 100 includes: determining whether the absolute value of the difference between the power consumption of the server and the total power consumption of the power supply unit 100 is within a preset threshold; if so, it is determined that the power consumption of the server matches the total power consumption of the power supply unit 100, and it is considered that the power consumption of the server calculated by the voltage regulation controller 300 is correct and can reflect the actual power consumption of the current server; if not, it is determined that the power consumption of the server does not match the total power consumption of the power supply unit 100, and it is considered that the power consumption of the server calculated by the voltage regulation controller 300 is wrong and cannot reflect the actual power consumption of the current server, and an alarm message is generated to remind the user that the power consumption of the server calculated by the current voltage regulation controller 300 is wrong.

[0089] Further, if the baseboard management controller 200 determines that the power consumption of the server and the total power consumption of the power supply unit 100 do not match, it may be due to unstable communication or malicious intrusion, resulting in an error in the gain value stored by the baseboard management controller 200 to the voltage regulation controller 300 or a problem in the current calculation of the voltage regulation controller 300. The baseboard management controller 200 can re-acquire the power consumption of each power supply unit 100, re-obtain the gain value, and store the gain value in the first register 340 of the voltage regulation controller 300. The voltage regulation controller 300 re-calculates the power consumption of the server based on the first voltage value, the second voltage value and the latest gain value, and re-writes the calculated power consumption of the server into the second register 350, so that the baseboard management controller 200 reads the power consumption of the server in the second register 350 again, and determines again whether the power consumption of the server and the total power consumption of the current power supply unit 100 match. If it is determined that there is still a mismatch, manual intervention can be performed to determine whether there is a problem with the gain value calculated by the baseboard management controller 200 or the power consumption of the server calculated by the voltage regulation controller 300.

[0090] Furthermore, if Figure 3As shown, the voltage regulation controller 300 also includes a fourth communication interface 360, and the central processing unit 400 includes a fifth communication interface 410. The voltage regulation controller 300 is connected to the central processing unit 400 through the fourth communication interface 360 ​​and the fifth communication interface 410. The central processing unit 400 obtains the power consumption of the server from the second register 350 included in the voltage regulation controller 300 through the fourth communication interface 360 ​​and the fifth communication interface 410, so as to perform corresponding power consumption adjustments on various components in the server according to the obtained power consumption of the server and the capped power consumption of the server.

[0091] The fourth communication interface 360 ​​and the fifth communication interface 410 are communication interfaces based on the SVID protocol (Serial Voltage Identification, power management protocol) or the SVI protocol (switch virtual interface, virtual machine switch interface protocol).

[0092] Of course, if the power consumption of the server is stored in the first register 340, the baseboard management controller 200 can read the power consumption of the server from the first register 340 regularly through the first communication interface 210 and the third communication interface 310 based on a preset period to determine whether the acquired power consumption of the server matches the calculated total power consumption of the power supply unit 100. The central processor 400 obtains the power consumption of the server from the first register 340 included in the voltage regulation controller 300 through the fourth communication interface 360 ​​and the fifth communication interface 410.

[0093] Furthermore, if Figure 4 As shown, in one implementation of the present application, the BMC is, for example, an I2C host that communicates based on the I2C communication protocol (Inter-Integrated Circuit, serial communication protocol), the first communication interface 210 is an I2C interface 1 based on the I2C communication protocol, the second communication interface 110 is an I2C interface 2 based on the I2C communication protocol, the third communication interface 310 is an I2C interface 3 based on the I2C communication protocol, the fourth communication interface 360 ​​is an SVID interface 1 based on the SVID protocol, and the fifth communication interface 410 is an SVID interface 2 based on the SVID protocol. The voltage regulation controller 300 is a VR controller, the first voltage port 320 is a VSYS port (Voltage Of System), the second voltage port 330 is an ISYS port (current of System), the voltage output pin 120 is a VOUT pin, and the output voltage of the fixed voltage is 3V3.

[0094] The I2C protocol is a protocol that allows multiple "slave" chips to communicate with one or more "host" chips. That is, it allows multiple PSUs to communicate with the BMC through I2C interface 2 and the BMC's I2C interface 1, and allows the BMC to communicate with the VR controller through I2C interface 1 and the VR controller's I2C interface 3.

[0095] The BMC obtains the power consumption of each PSU through I2C interface 1 and I2C interface 2, and accumulates and sums the power consumption of multiple PSUs to obtain the total power consumption of the PSUs.

[0096] Furthermore, the BMC obtains the voltage signal of the VOUT pin of the PSU connected to the VSYS port of the VR controller (as an example of the first voltage value) through the I2C interface 1 and the I2C interface 3, and obtains the voltage signal of the 3V3 connected to the ISYS port of the VR controller (as an example of the second voltage value), and then determines the gain value according to the total power consumption of the PSU, the first voltage value and the second voltage value, and writes the gain value into the gain ratio register of the VR controller (as an example of the first register 340) through the I2C interface 1 and the I2C interface 3.

[0097] Each time the VR controller calculates the power consumption of the server, it calculates the power consumption of the server according to the gain value, the latest first voltage value, and the second voltage value.

[0098] Optionally, the VR controller writes the power consumption of the server into the first register 340 , and the CPU reads the power consumption of the server from the first register 340 of the VR controller through the SVID interface 1 and the SVID interface 2 .

[0099] Alternatively, the VR controller writes the power consumption of the server into the second register 350 , and the CPU reads the power consumption of the server from the second register 350 of the VR controller through the SVID interface 1 and the SVID interface 2 .

[0100] In the implementation of the present application, the BMC writes the gain value into the VR controller, so that each time the VR controller calculates the power consumption of the server, it can calculate the latest power consumption of the server by reading the gain value and according to the currently obtained first voltage value and the second voltage value. On the one hand, the BMC does not need to calculate and transmit the gain value each time the power consumption of the server is calculated, which reduces the load rate of the BMC and thus reduces the power consumption of the server. On the other hand, the BMC only transmits the gain value, and the VR controller can obtain a more realistic and accurate power consumption value of the current power consumption of the server based on the latest first voltage value, the gain value, and the second voltage value, thereby improving the authenticity and accuracy of the power consumption of the server.

[0101] In addition, in one implementation of the present application, taking the first voltage value and the second voltage value as the rated voltage as an example, the BMC can also pre-acquire the first voltage value and the second voltage value from the VR controller through the I2C interface 1 and the I2C interface 3, pre-store the first voltage value and the second voltage value, and after obtaining the power consumption of the PSU, determine the gain value according to the power consumption of the PSU and the pre-stored first voltage value and the second voltage value. In this way, the communication interaction between the BMC and the VR controller when calculating the gain value can be reduced, and the calculation efficiency of the gain value can be accelerated.

[0102] Further, optionally, the BMC also reads back the gain value stored in the first register 340 through the I2C interface 1 and the I2C interface 3. If the gain value is read from the first register 340, it is determined that the BMC has successfully stored the gain value to the VR controller. If the gain value is not read from the first register 340, it is determined that the BMC has failed to store the gain value to the VR controller. The gain value can be stored again until the storage is successful, or if the storage fails multiple times, the operation of storing the gain value is abandoned.

[0103] Further, optionally, after the VR controller obtains the power consumption of the server, if the power consumption of the server is stored in the first register 340, the BMC also reads the power consumption of the server calculated by the VR controller from the first register 340 of the VR controller through the I2C interface 1 and the I2C interface 3. If the power consumption of the server is stored in the second register 350, the BMC also reads the power consumption of the server calculated by the VR controller from the second register 350 of the VR controller through the I2C interface 1 and the I2C interface 3.

[0104] In addition, the BMC reacquires the power consumption of the PSU. When the total power consumption of the PSU matches the power consumption of the server read (for example, the absolute value of the difference between the total power consumption of the PSU and the power consumption of the server read is within a preset threshold), it determines that the power consumption of the server calculated by the VR controller is correct and the power consumption of the server is the actual power consumption of the current server. When it is determined that the total power consumption of the PSU does not match the power consumption of the server (for example, the absolute value of the difference between the power consumption of the PSU and the power consumption of the server read is not within the preset threshold), an alarm message is issued to warn that the power consumption reporting of the current server is abnormal.

[0105] Among them, the preset threshold can be set according to actual needs.

[0106] It should be noted that in one implementation of the present application, if the CPU is an Intel CPU, it is necessary to obtain the power consumption of the server through the SVID protocol, that is, the central processing unit 400 obtains the power consumption of the server from the VR controller through the SVID interface 1 and the SVID interface 2. If the CPU is an AMD CPU, it is necessary to obtain the power consumption of the server through the SVI protocol, that is, the CPU obtains the power consumption of the server from the VR controller through the SVI interface 1 and the SVI interface 2. Among them, the SVID protocol and the SVI protocol are bus protocols of different servers.

[0107] In the server provided by the above implementation method, the BMC obtains a gain value based on the total power consumption of the PSU, and then sends the gain value to the VR controller, so that the VR controller recalculates the power consumption of the server based on the first voltage value, the second voltage value and the obtained gain value each time it calculates the power consumption of the server, so that the VR controller can obtain the latest and accurate power consumption of the server based on the first voltage value, the second voltage value and the written gain value.

[0108] Furthermore, if the second register 350 is used to store the power consumption of the server, other controllers can only read the power consumption of the server calculated by the VR controller and cannot rewrite it, thereby preventing the power consumption of the server from being maliciously tampered with, resulting in inaccurate reported power consumption of the server.

[0109] In addition, the BMC performs VR controller calculation to obtain the power consumption of the server for reading back and verification, and determines whether the power consumption of the server to be reported is accurate, thereby further avoiding erroneous reporting of the power consumption of the server.

[0110] Furthermore, if Figure 5 As shown, in the implementation of the present application, the BMC sends the gain value and verifies the power consumption of the server, including the following steps.

[0111] S210, IBMC is powered on.

[0112] The IBMC (Intelligent Baseboard Management Controller) is an intelligent baseboard management controller (as an example of the baseboard management controller 200 ) that communicates with the power supply unit 100 and the VR controller 300 based on the I2C protocol.

[0113] S220, open the communication interface to communicate with the PSU.

[0114] After being powered on, the IBMC opens the I2C interface 1 and establishes a communication connection with the I2C interface 2 of the PSU and also establishes a communication connection with the I2C interface 3 of the VR controller 300 .

[0115] S230, calculating the gain value to be written into the VR controller.

[0116] The IBMC obtains the power consumption of each power supply unit 100 , obtains the first voltage value of the first voltage port 320 and the second voltage value of the second voltage port 330 through the VR controller, and calculates the gain value.

[0117] S240, writing the gain value into the corresponding register of the VR controller.

[0118] The IBMC writes the calculated gain value into the first register 340 of the VR controller 300 through the I2C interface 1 and the I2C interface 3, so that the VR controller calculates the power consumption of the server according to the gain value and the latest first voltage value and second voltage value.

[0119] Optionally, after writing the gain value into the first register 340 of the VR controller, the IBMC further performs a read-back operation to confirm whether the writing is successful.

[0120] Optionally, S250, determine whether the read-back is successful, if successful, execute step S260, if unsuccessful, return to execute step S240.

[0121] Among them, IBMC reads back the gain value written to the first register 340 of the VR controller through the I2C interface 1 and the I2C interface 3. If the read back is successful, it is determined that the writing of the gain value is successful, and step S260 is executed. If the read back is unsuccessful, it is determined that the writing of the gain value is unsuccessful, and the process returns to step S240 to re-write the gain value into the first register 340 and read it back again until the read back is successful, and step S260 is executed.

[0122] Optionally, IBMC can also read the power consumption of the server calculated by the VR controller to verify the power consumption calculation of the server.

[0123] S260, IBMC compares and calculates whether the total power consumption of the power supply unit 100 is similar to the power consumption of the server stored in the VR controller. If so, the relevant processing is terminated; if not, step S270 is executed.

[0124] S270: The power consumption alarm is reported abnormally.

[0125] After receiving the gain value written by IBMC into the first register 340, the VR controller calculates the power consumption of the server according to the gain value stored in the first register 340, the first voltage value of the VSYS port, and the second voltage value of the ISYS port when calculating the power consumption of the server. IBMC reads the power consumption of the server calculated by the VR controller from the VR controller based on the I2C interface 1 and the I2C interface 3, and re-acquires the power consumption of each power supply unit 100, calculates the total power consumption of the power supply unit 100, and determines the power supply unit 100. 00 is close to the power consumption of the server (for example, the absolute value of the difference between the total power consumption of the power supply unit 100 and the power consumption of the server is within the preset threshold), the power consumption of the server calculated by the VR controller is determined to be the actual power consumption of the current server. When it is determined that the total power consumption of the power supply unit 100 is not close to the power consumption of the server (for example, the absolute value of the difference between the total power consumption of the power supply unit 100 and the power consumption of the server is not within the preset threshold), step S270 is executed to issue an alarm message to warn that the power consumption reporting of the current server is abnormal.

[0126] Therefore, the server provided by the implementation of the present application is connected to a fixed voltage through the ISYS port of the VR controller, and the power consumption of each power supply unit 100 is directly obtained through the BMC, and then the gain value is calculated according to the sum of the power consumption of each power supply unit 100, and the gain value stored in the first register 340 of the VR controller is modified, so that the VR controller calculates the power consumption of the server according to the latest gain value, the first voltage value of the VSYS port and the second voltage value of the ISYS port, so as to report the power consumption of the server to the central processor 400. The hardware circuit is simple, and the adaptation of all server power consumption reporting scenarios can be achieved only by performing corresponding software configuration in the BMC and VR controller.

[0127] Furthermore, in another implementation of the present application, a power consumption management method for a server is provided, which is applied to a server, and includes: a baseboard management controller 200 obtains the power consumption of each power supply unit 100, and obtains a gain value based on the sum of the power consumption of each power supply unit 100, a voltage regulation controller 300 obtains the power consumption of the server based on the gain value, and a central processing unit 400 obtains the power consumption of the server from the voltage regulation controller 300 to adjust the power consumption of a target component in the server based on the power consumption of the server.

[0128] Furthermore, in another implementation of the present application, the power consumption management method of the server is also applied to the baseboard management controller 200, and the method includes: the baseboard management controller 200 obtains the power consumption of each power supply unit 100, and obtains a gain value based on the sum of the power consumption of each power supply unit 100, and stores the gain value in the voltage regulation controller 300, so that the voltage regulation controller 300 obtains the power consumption of the server according to the gain value, and then the central processing unit 400 obtains the power consumption of the server from the voltage regulation controller 300, and adjusts the power consumption of the target components in the server according to the power consumption of the server.

[0129] Furthermore, in another implementation of the present application, the power consumption management method of the server is also applied to the voltage regulating controller 300, and the method includes: the voltage regulating controller 300 determines a gain value, and obtains the power consumption of the server according to the gain value, so that the central processing unit 400 obtains the power consumption of the server from the voltage regulating controller 300, and adjusts the power consumption of the target component in the server according to the power consumption of the server, wherein the gain value is obtained by the baseboard management controller 200 by obtaining the power consumption of each power supply unit 100, based on the sum of the power consumption of each power supply unit 100, and stored in the voltage regulating controller 300.

[0130] Among them, the baseboard management controller 200 obtains the power consumption of each power supply unit 100, obtains the gain value according to the sum of the power consumption of each power supply unit 100, the voltage regulation controller 300 obtains the power consumption of the server according to the gain value, and the central processing unit 400 obtains the power consumption of the server from the voltage regulation controller 300 to adjust the power consumption of the target components in the server according to the power consumption of the server. Please refer to the above description of the server, which will not be repeated here.

[0131] Furthermore, the implementation method of this application is as follows: Figure 6 As shown, the server includes not only the aforementioned one or more power supply units 100 , baseboard management controller 200 , voltage regulation controller 300 and central processing unit 400 , but also includes components such as memory 500 .

[0132] The memory 500 is used to store executable instructions corresponding to the baseboard management controller 200, the voltage regulation controller 300, and the central processing unit 400, so that when the server is configured to execute the corresponding instructions, the corresponding functions of the server in the above implementation are executed.

[0133] Furthermore, the server may also include other components such as a memory, a hard disk, etc.

[0134] An embodiment of the present application also provides a chip for running instructions, which is used to execute the corresponding functions of the server in the above embodiment.

[0135] An embodiment of the present application also provides a computer-readable storage medium, in which computer instructions are stored. When the computer instructions are executed on a processor of an electronic device, the processor of the electronic device executes the corresponding functions of the server of the above embodiment.

[0136] In some possible implementations, various aspects of the method provided in the present application can also be implemented in the form of a program product, which includes program code. When the program product runs on a processor of a server, the program code is used to enable the processor of the server to perform the corresponding functions of the server recorded in the embodiments of the present application.

[0137] The program product may employ any combination of one or more readable media. The readable medium may be a readable data medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0138] The implementation method of the present application also provides a computer program product, which includes a computer program stored in a computer-readable storage medium. At least one processor can read the computer program from the computer-readable storage medium. When the at least one processor executes the computer program, the corresponding functions of the server in the above embodiment can be implemented.

[0139] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices and computer program products according to the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable information processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable information processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0140] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable information processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0141] These computer program instructions can also be loaded onto a computer or other programmable information processing device so that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0142] It should be noted that the terms “first”, “second”, etc. are only used for distinguishing descriptions and cannot be understood as indicating or implying relative importance.

[0143] It should be noted that in the accompanying drawings, some structural or method features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be required. Instead, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. In addition, the inclusion of structural or method features in a particular figure does not mean that such features are required in all embodiments, and in some embodiments, these features may not be included or may be combined with other features.

[0144] Obviously, those skilled in the art should understand that the modules or steps of the present application can be implemented with a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, and optionally, they can be implemented with program codes executable by a computing device, so that they can be stored in a storage medium (ROM / RAM, magnetic disk, optical disk) and executed by a computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Therefore, the present application is not limited to any specific combination of hardware and software.

[0145] Although the present application has been illustrated and described by referring to certain preferred embodiments of the present application, it should be understood by those skilled in the art that the above contents are further detailed descriptions of the present application in combination with specific embodiments, and it cannot be determined that the specific implementation of the present application is limited to these descriptions. Those skilled in the art may make various changes in form and details, including making several simple deductions or substitutions, without departing from the spirit and scope of the present application.

Claims

1. A server, characterized in that: The server includes one or more power supply units, a baseboard management controller, a voltage regulation controller and a central processing unit, wherein the power supply unit is connected to the baseboard management controller and the voltage regulation controller respectively, and the voltage regulation controller is connected to the baseboard management controller and the central processing unit respectively, wherein The baseboard management controller is used to obtain the power consumption of each of the power supply units, and obtain a gain value according to the sum of the power consumption of each of the power supply units; The voltage regulating controller is used to obtain the power consumption of the server according to the gain value; The central processing unit is used to obtain the power consumption of the server from the voltage regulating controller, so as to adjust the power consumption of the target component in the server according to the power consumption of the server.

2. The server according to claim 1, characterized in that: The voltage regulating controller includes a first voltage port and a second voltage port, the power supply unit is connected to the voltage regulating controller through the first voltage port, the second voltage port of the voltage regulating controller is connected to a fixed voltage, and the baseboard management controller obtains a gain value according to the total power consumption of each power supply unit, including: The baseboard management controller obtains the first voltage value of the first voltage port and the second voltage value of the second voltage port from the voltage regulation controller, and obtains the gain value according to the total power consumption of each of the power supply units, the first voltage value and the second voltage value.

3. The server according to claim 2, characterized in that: The voltage regulating controller obtains the power consumption of the server according to the gain value, including: The voltage regulating controller obtains the power consumption of the server based on the first voltage value of the first voltage port, the second voltage value of the second voltage port, and the gain value.

4. The server according to claim 3, characterized in that: The voltage regulating controller includes a first register, and the baseboard management controller is further configured to store the gain value in the first register included in the voltage regulating controller.

5. The server according to claim 4, characterized in that: The voltage regulator controller includes a second register, then, After obtaining the power consumption of the server according to the gain value, the voltage regulating controller is further used to store the power consumption of the server in the second register; The central processing unit obtains the power consumption of the server from the second register.

6. The server according to claim 5, characterized in that: After the voltage regulation controller obtains the power consumption of the server, the baseboard management controller is further used to read the power consumption of the server from the second register, compare the power consumption of the server with the total power consumption of each of the power supply units, and generate an alarm message when the power consumption of the server does not match the total power consumption of each of the power supply units.

7. The server according to any one of claims 4 to 6, characterized in that: The baseboard management controller is further configured to store the gain value to the voltage regulation controller again when storing the gain value to the voltage regulation controller fails, until the gain value is successfully stored to the voltage regulation controller, or The baseboard management controller is also used to re-store the gain value to the voltage regulation controller if storing the gain value to the voltage regulation controller fails, and terminate the operation of storing the gain value if the number of times the gain value is re-stored exceeds a preset number.

8. The server according to any one of claims 1 to 7, characterized in that: The baseboard management controller includes a first communication interface, the power supply unit includes a second communication interface, and the voltage regulation controller includes a third communication interface. The baseboard management controller is connected to the power supply unit via the first communication interface and the second communication interface, and the baseboard management controller is connected to the voltage regulation controller via the first communication interface and the third communication interface.

9. The server according to claim 8, characterized in that: The first communication interface, the second communication interface and the third communication interface are interfaces based on the I2C communication protocol.

10. The server according to any one of claims 1 to 9, characterized in that: The voltage regulation controller also includes a fourth communication interface, and the central processing unit includes a fifth communication interface. The voltage regulation controller is connected to the central processing unit through the fourth communication interface and the fifth communication interface. The fourth communication interface and the fifth communication interface are communication interfaces based on a power management protocol or a virtual machine switching interface protocol.

Citation Information

Patent Citations

  • Server power consumption adjusting system and method and medium

    CN112732061A

  • System power consumption determination method and server

    CN118778787A

  • Power consumption control in computer system

    US20150153820A1