Operation server task allocation method and device, electronic equipment and storage medium
By adopting a hybrid heat dissipation solution and dynamic task allocation method in the computing server, the problem of computing power decline caused by excessive chip temperature is solved, and the optimal balance between volume, cost and heat dissipation effect of the computing server is achieved.
Patent Information
- Application Number
- CN202411964034.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-30
- Publication Date
- 2025-04-29
AI Technical Summary
When computing servers handle complex tasks, the chip temperature is too high, resulting in a decrease in computing power, and the prior art is difficult to find the best balance between volume, cost and heat dissipation.
The chips in the computing server are divided into two categories: some chips use fan to dissipate heat, some chips use shared heat sinks to dissipate heat, and dynamically reassign tasks by monitoring the chip temperature and heat dissipation capabilities to ensure efficient heat dissipation.
Improves the performance and efficiency of the computing server, reduces volume and cost, and ensures efficient heat dissipation.
Smart Images

Figure CN119902884A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of computing servers, and in particular, relates to a computing server task allocation method, device, electronic equipment and storage medium. Background Art
[0002] At present, a single chip can complete some simple computing tasks, while complex large tasks require multiple chips to complete. Therefore, multiple chips are combined together and placed in the same chassis to form a computing server. The computing server is generally responsible for the calculation of large and complex tasks. It can decompose large tasks into multiple different subtasks, and then assign the subtasks to different chips for calculation. Chips will generate heat when running. Usually different chips run different subtasks, so their heat generation is also different.
[0003] The temperature of the chip is mainly related to two aspects: (1) the heat generated by the chip itself. When the same chip runs different subtasks, the heat generated is different due to the different tasks. The more complex the task, the greater the heat generated; (2) the external heat dissipation of the chip. The heat dissipation of the chip is related to many factors, such as the heat sink, the cooling fan, the position of the chip on the circuit board, etc.
[0004] Common server chip cooling methods are mainly divided into shared heat sink cooling and dedicated fan cooling. A shared heat sink means that multiple chips share a heat sink. This method can achieve a high degree of integration and is low cost, but the disadvantage is that the cooling effect is not the best. Dedicated fan cooling means that each chip is equipped with a separate cooling fan. The advantages of this method are: the best cooling effect, and the disadvantages are: (1) large size. Since the size of a separate cooling fan is relatively large, it has little effect on servers with a small number of chips. However, when the number of chips in the server is large, if a dedicated cooling fan is equipped for each chip, the size of the server will increase; (2) high cost. The cost of using a dedicated cooling fan for cooling is significantly higher than that of a shared heat sink.
[0005] In addition, when the chip temperature is too high, the chip operating frequency will be reduced or the chip will be turned off. The disadvantage of this method is that it will reduce the computing power of the computing server. Summary of the invention
[0006] Based on this, in order to solve the above technical problems, a method, device, electronic device and storage medium for allocating tasks to a computing server are provided.
[0007] The technical solution adopted by the present invention is as follows:
[0008] As a first aspect of the present invention, a method for allocating tasks to a computing server is provided, wherein the computing server has a plurality of chips, wherein the plurality of chips are divided into a plurality of first chips and a plurality of second chips, the plurality of first chips are respectively cooled by fans, and the plurality of second chips are cooled by a common heat sink, and the method comprises:
[0009] S101, enabling all chips to run the same task and obtaining the temperature of all chips, where the temperature meets a preset temperature sampling accuracy;
[0010] S102, respectively calculating a first average temperature of the plurality of first chips and a second average temperature of the plurality of second chips, and calculating a temperature difference T between the second average temperature and the first average temperature c ;
[0011] S103, correcting the chip temperature obtained in S101 so that the temperatures of all chips are different: when the temperatures of two chips are the same, add the correction value T to the temperature of one of the chips. e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy;
[0012] S104, determining the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103;
[0013] S105, assigning multiple target tasks to each chip respectively;
[0014] S106, when each chip is running the target task, if there is a chip whose temperature exceeds the threshold, re-acquire the temperatures of all chips, and process the acquired temperatures of all chips: add the temperature difference T to the acquired temperatures of the plurality of first chips. c , the temperatures of the plurality of second chips obtained remain unchanged, or the temperatures of the plurality of second chips obtained are all subtracted from the temperature difference T c , the temperatures of the plurality of first chips obtained remain unchanged;
[0015] S107, correcting the temperature after the processing in S106 so that the temperatures of all chips are different: when the temperatures of two chips are the same, add the correction value T to the temperature of one of the chips. e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy;
[0016] S108, determining the heat generation ranking of the plurality of target tasks according to the chip temperature corrected in S107;
[0017] S109 , reallocate the multiple target tasks to each chip according to the heat dissipation capability ranking of all the chips and the heat generation ranking of the multiple target tasks: allocate the target task with a larger heat generation to the chip with a stronger heat dissipation capability.
[0018] As a second aspect of the present invention, a computing server computing power allocation device is provided, wherein the computing server has a plurality of chips, characterized in that the plurality of chips are divided into a plurality of first chips and a plurality of second chips, the plurality of first chips are respectively cooled by fans, and the plurality of second chips are cooled by a common heat sink, characterized in that the device comprises:
[0019] The first module is used for S101, enabling all chips to run the same task and obtaining the temperature of all chips, where the temperature meets the preset temperature sampling accuracy;
[0020] The second module is used for S102, respectively calculating the first average temperature of the plurality of first chips and the second average temperature of the plurality of second chips, and calculating the temperature difference T between the second average temperature and the first average temperature c ;
[0021] The third module is used for S103, correcting the chip temperature obtained in S101 so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy;
[0022] A fourth module is used for S104, determining the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103;
[0023] The fifth module is used for S105, allocating multiple target tasks to each chip respectively;
[0024] The sixth module is used for S106. When each chip runs the target task, when there is a chip whose temperature exceeds the threshold, re-acquire the temperature of all chips and process the acquired temperature of all chips: add the temperature difference T to the acquired temperature of the plurality of first chips. c , the temperatures of the plurality of second chips obtained remain unchanged, or the temperatures of the plurality of second chips obtained are all subtracted from the temperature difference T c , the temperatures of the plurality of first chips obtained remain unchanged;
[0025] The seventh module is used for S107, correcting the temperature after the processing in S106 so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e, until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy;
[0026] An eighth module is used for S108, determining the heat generation ranking of the plurality of target tasks according to the chip temperature corrected in S107;
[0027] The ninth module is used for S109, reallocating the multiple target tasks to each chip according to the heat dissipation capacity ranking of all the chips and the heat generation ranking of the multiple target tasks: allocating the target task with a larger heat generation to the chip with a stronger heat dissipation capacity.
[0028] As a third aspect of the present invention, an electronic device is provided, comprising a storage module, wherein the storage module comprises instructions loaded and executed by a processor, wherein when the instructions are executed, the processor executes a computing server task allocation method according to the first aspect.
[0029] As a fourth aspect of the present invention, a computer-readable storage medium is provided, which stores one or more programs. When the one or more programs are executed by a processor, the method for allocating computing server tasks according to the first aspect is implemented.
[0030] The present invention comprehensively considers the volume, cost and heat dissipation effect of the computing server. Some chips are cooled by fans respectively, and some chips are cooled by a common heat sink. At the same time, when the temperature of the chip is too high, multiple target tasks can be reallocated to all chips according to the heat dissipation capacity of all chips and the heat generation of multiple target tasks, thereby improving the performance of the computing server. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] The present invention is described in detail below with reference to the accompanying drawings and specific embodiments:
[0032] Figure 1 A flowchart of a method for allocating tasks to a computing server provided by an embodiment of the present invention;
[0033] Figure 2 A schematic diagram of a computing server task allocation device provided by an embodiment of the present invention;
[0034] Figure 3 A schematic diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0035] The following will illustrate the implementation methods of the present invention in conjunction with the drawings in the specification. It should be noted that the implementation methods involved in this specification are not exhaustive and do not represent the only implementation methods of the present invention. The following corresponding embodiments are only for the purpose of clearly illustrating the invention content of the patent of the present invention, and are not intended to limit its implementation methods. For ordinary technicians in this field, different forms of changes and modifications can be made on the basis of the description of this embodiment. All obvious changes or modifications that belong to the technical concept and invention content of the present invention are also within the scope of protection of the present invention.
[0036] An embodiment of the present application provides a method for allocating tasks for a computing server, wherein the computing server has a controller and multiple chips, wherein in order to comprehensively consider the volume, cost, and heat dissipation effect of the computing server, the multiple chips are divided into multiple first chips and multiple second chips, the multiple first chips are respectively cooled by fans, and the multiple second chips are cooled by a common heat sink.
[0037] Furthermore, in order to reduce the size and cost of the computing server as much as possible while ensuring the computing power of the computing server, the number of multiple first chips is less than the number of multiple second chips, that is, most chips use a common heat sink for heat dissipation to reduce the size of the server and reduce costs at the same time, while a small number of chips use dedicated fans for heat dissipation to run tasks with large computing intensity and high heat generation, thereby improving chip performance.
[0038] In the embodiment of the present application, a computing server with 50 chips is taken as an example. The chips are numbered as chip 1, chip 2, chip 3, ..., chip 50. Each chip has a temperature detection module inside, which can sample the temperature inside the chip. The temperature sampling accuracy T a The temperature difference is 0.1℃. According to the chip number, the first 10 chips (first chips) can be cooled by a dedicated fan, and the last 40 chips (second chips) can be cooled by a shared heat sink, that is, the ratio of the first chip to the second chip is 1:4.
[0039] like Figure 1 As shown, the specific process of the method of the embodiment of the present application is as follows:
[0040] S101. Make all chips run the same task and obtain the temperatures of all chips.
[0041] Specifically, this task can be understood as a test task, not a target task that actually needs to be run. The controller assigns the same test task to each chip. When the chip runs the test task, the internal temperature detection module detects the temperature according to the temperature sampling accuracy T a (0.1℃) detects the temperature when running the test task, and the controller reads the temperature of each chip, which is recorded as T 1 , T 2,……,T 50 .
[0042] Since each chip runs the same task, the heat generated by each chip is the same, but due to different external heat dissipation conditions, each chip will have a different temperature.
[0043] S102, respectively calculating the first average temperature T of the ten first chips 1-10 and the second average temperature T of the 40 second chips 11-50 , and calculate T c =T 11-50 -T 1-10 .
[0044] S103, correct the chip temperature obtained in S101 to make the temperatures of all chips different: when the temperatures of two chips are the same, add the correction value T to the temperature of one of the chips. e , until all chips have different temperatures.
[0045] In this embodiment, when the temperatures of two chips are the same, a correction value T is added to the temperature of the chip with the larger chip number. e , so that the temperatures of the two are different, it can be understood that the temperature of the chip plus the correction value T e After that, it may become the same temperature as other chips, and the correction value T needs to be added to the corresponding chip temperature again. e , and so on. Assume that the temperature of 50 chips is 60℃ and T e Set to 0.1, the corrected temperature of chip 1 is 60°C, the temperature of chip 2 is 60.1°C, the temperature of chip 3 is 60.2°C, ..., the temperature of chip 50 is 64.9°C, among which, the temperature of chip 50 increases by 4.9°C due to temperature correction. The temperature increase is too large and has deviated from the actual temperature, which will affect the controller's judgment of the actual temperature of the chip.
[0046] It can be seen that in order not to affect the controller's judgment of the actual temperature of the chip, the chip's accumulated correction value must be less than the temperature sampling accuracy T a (0.1℃).
[0047] At the same time, in order to avoid adding the correction value T to the chip temperature multiple times e , improve efficiency, correct value T e Satisfies the following formula:
[0048]
[0049] Wherein, N represents the total number of chips, so in this embodiment, |T e| can be 0.1 / 50=0.002. When the temperatures of the two chips are the same, 0.002 is added to the temperature of the chip with the larger chip number. Of course, (-0.002) can also be added to the temperature of the chip with the smaller chip number, that is, 0.002 is subtracted.
[0050] S104 . Determine the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103 .
[0051] The controller can sort the chips according to the temperature from small to large. The chips with low temperature have strong heat dissipation capacity, and the chips with high temperature have weak heat dissipation capacity, thereby obtaining a heat dissipation capacity sorting table of the chips.
[0052] S105, allocating multiple target tasks to each chip respectively.
[0053] Among them, the multiple target tasks can be understood as the tasks that each chip actually needs to complete.
[0054] S106, when each chip is running the target task, if there is a chip whose temperature exceeds the threshold, re-acquire the temperature of all chips, and process the acquired temperature of all chips: add the temperature difference T to the acquired temperature of the 10 first chips. c , the temperatures of the 40 second chips obtained remain unchanged.
[0055] Since the first 10 chips are cooled by a dedicated fan and the last 40 chips are cooled by a shared heat sink, the dedicated fan has a better cooling effect, so the temperature of the last 40 chips is higher than that of the first 10 chips. The difference in the effect of the fan and the heat sink on the chip temperature is reflected in T c Add the temperature of the first 10 chips to T c , the influence of the difference between the fan and the heat sink on the chip heat dissipation can be eliminated. At this time, the temperatures of all chips are equivalent to those measured when the heat sink is used for heat dissipation.
[0056] Of course, the temperature difference T can also be subtracted from the obtained temperatures of the 40 second chips. c The temperatures of the multiple first chips obtained remain unchanged, so that the temperatures of all chips are equivalent to those measured when using a fan.
[0057] The controller assigns multiple target tasks to each chip. Each chip starts working after receiving the task. During the working process, each chip will regularly check the internal temperature of the chip. If the chip temperature is too high, the chip will send a high temperature signal to the controller. If the chip temperature is normal, the chip will send a normal temperature signal to the controller. When the controller receives a signal that a chip temperature is too high, it will issue a command to re-read the temperature of all chips.
[0058] The tasks assigned to each chip may be the same or different. Some of these tasks have a large amount of computation, which will cause the chip to generate a lot of heat, while some tasks have a small amount of computation, which will cause the chip to generate less heat. The controller does not know which tasks generate a lot of heat and which tasks generate a little heat.
[0059] S107, correct the temperature after S106 so that the temperature of all chips is different: when the temperature of two chips is the same, add the correction value T to the temperature of one chip. e , until the temperatures of all chips are different, where the accumulated correction of the chips is less than the temperature sampling accuracy.
[0060] This step may refer to S103 and will not be described in detail here.
[0061] S108. Determine the heat generation ranking of the plurality of target tasks according to the chip temperature corrected in S107.
[0062] The chip temperature is proportional to the heat generated by the task running on the chip. The higher the chip temperature is, the more complex the task running on the chip is and the greater the heat generated is. Thus, a heat generation ranking table of multiple target tasks can be obtained.
[0063] S109 , reallocate the multiple target tasks to the chips according to the heat dissipation capability ranking of all chips and the heat generation ranking of the multiple target tasks: allocate the target task with a larger heat generation to the chip with a stronger heat dissipation capability.
[0064] Specifically, according to the heat dissipation capability ranking table of all chips and the heat generation ranking table of multiple target tasks, the target task with a larger heat generation is allocated to the chip with a stronger heat dissipation capability.
[0065] As can be seen from the above, the method of this embodiment comprehensively considers the volume, cost and heat dissipation effect of the computing server. Some chips are cooled by fans respectively, and some chips are cooled by a common heat sink. At the same time, when the temperature of the chip is too high, multiple target tasks can be reallocated to all chips according to the heat dissipation capacity of all chips and the heat generated by multiple target tasks, thereby improving the performance of the computing server.
[0066] The following will describe in detail the computing server task allocation device of one or more embodiments of the present invention. Those skilled in the art will appreciate that these devices can be configured using commercially available hardware components through the steps taught in this solution. Figure 2 A computing server task allocation device provided by an embodiment of the present invention is shown. Figure 2 As shown, the device includes a first module 11, a second module 12, a third module 13, a fourth module 14, a fifth module 15, a sixth module 16, a seventh module 17, an eighth module 18 and a ninth module 19.
[0067] The first module 11 is used for S101 to make all chips run the same task and obtain the temperatures of all chips.
[0068] Specifically, this task can be understood as a test task, not a target task that actually needs to be run. The controller assigns the same test task to each chip. When the chip runs the test task, the internal temperature detection module detects the temperature according to the temperature sampling accuracy T a (0.1℃) detects the temperature when running the test task, and the controller reads the temperature of each chip, which is recorded as T 1 , T 2 ,……,T 50 .
[0069] Since each chip runs the same task, the heat generated by each chip is the same, but due to different external heat dissipation conditions, each chip will have a different temperature.
[0070] The second module 12 is used for S102 to calculate the first average temperature T of the ten first chips respectively. 1-10 and the second average temperature T of the 40 second chips 11-50 , and calculate T c =T 11-50 -T 1-10 .
[0071] The third module 13 is used for S103, correcting the chip temperature obtained in S101 so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e , until all chips have different temperatures.
[0072] In this embodiment, when the temperatures of two chips are the same, a correction value T is added to the temperature of the chip with the larger chip number. e , so that the temperatures of the two are different, it can be understood that the temperature of the chip plus the correction value T e After that, it may become the same temperature as other chips, and the correction value T needs to be added to the corresponding chip temperature again. e , and so on. Assume that the temperature of 50 chips is 60℃ and T e Set to 0.1, the corrected temperature of chip 1 is 60°C, the temperature of chip 2 is 60.1°C, the temperature of chip 3 is 60.2°C, ..., the temperature of chip 50 is 64.9°C, among which, the temperature of chip 50 increases by 4.9°C due to temperature correction. The temperature increase is too large and has deviated from the actual temperature, which will affect the controller's judgment of the actual temperature of the chip.
[0073] It can be seen that in order not to affect the controller's judgment of the actual temperature of the chip, the chip's accumulated correction value must be less than the temperature sampling accuracy T a(0.1℃).
[0074] At the same time, in order to avoid adding the correction value T to the chip temperature multiple times e , improve efficiency, correct value T e Satisfies the following formula:
[0075]
[0076] Wherein, N represents the total number of chips, so in this embodiment, |T e | can be 0.1 / 50=0.002. When the temperatures of the two chips are the same, 0.002 is added to the temperature of the chip with the larger chip number. Of course, (-0.002) can also be added to the temperature of the chip with the smaller chip number, that is, 0.002 is subtracted.
[0077] The fourth module 14 is used for S104, determining the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103.
[0078] The controller can sort the chips according to the temperature from small to large. The chips with low temperature have strong heat dissipation capacity, and the chips with high temperature have weak heat dissipation capacity, thereby obtaining a heat dissipation capacity sorting table of the chips.
[0079] The fifth module 15 is used for S105, allocating multiple target tasks to each chip respectively.
[0080] Among them, the multiple target tasks can be understood as the tasks that each chip actually needs to complete.
[0081] The sixth module 16 is used for S106. When each chip runs the target task, if there is a chip whose temperature exceeds the threshold, the temperature of all chips is re-acquired, and the temperature of all the chips is processed: the temperature of the 10 first chips is added with the temperature difference T c , the temperatures of the 40 second chips obtained remain unchanged.
[0082] Since the first 10 chips are cooled by a dedicated fan and the last 40 chips are cooled by a shared heat sink, the dedicated fan has a better cooling effect, so the temperature of the last 40 chips is higher than that of the first 10 chips. The difference in the effect of the fan and the heat sink on the chip temperature is reflected in T c Add the temperature of the first 10 chips to T c , the influence of the difference between the fan and the heat sink on the chip heat dissipation can be eliminated. At this time, the temperatures of all chips are equivalent to those measured when the heat sink is used for heat dissipation.
[0083] Of course, the temperature difference T can also be subtracted from the obtained temperatures of the 40 second chips. cThe temperatures of the multiple first chips obtained remain unchanged, so that the temperatures of all chips are equivalent to those measured when using a fan.
[0084] The controller assigns multiple target tasks to each chip. Each chip starts working after receiving the task. During the working process, each chip will regularly check the internal temperature of the chip. If the chip temperature is too high, the chip will send a high temperature signal to the controller. If the chip temperature is normal, the chip will send a normal temperature signal to the controller. When the controller receives a signal that a chip temperature is too high, it will issue a command to re-read the temperature of all chips.
[0085] The tasks assigned to each chip may be the same or different. Some of these tasks have a large amount of computation, which will cause the chip to generate a lot of heat, while some tasks have a small amount of computation, which will cause the chip to generate less heat. The controller does not know which tasks generate a lot of heat and which tasks generate a little heat.
[0086] The seventh module 17 is used for S107, correcting the temperature after S106 processing so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e , until the temperatures of all chips are different, where the accumulated correction of the chips is less than the temperature sampling accuracy.
[0087] This step may refer to S103 and will not be described in detail here.
[0088] The eighth module 18 is used for S108, determining the heat generation ranking of multiple target tasks according to the chip temperature corrected in S107.
[0089] The chip temperature is proportional to the heat generated by the task running on the chip. The higher the chip temperature is, the more complex the task running on the chip is and the greater the heat generated is. Thus, a heat generation ranking table of multiple target tasks can be obtained.
[0090] The ninth module 19 is used for S109, reallocating multiple target tasks to each chip according to the heat dissipation capability ranking of all chips and the heat generation ranking of multiple target tasks: allocating target tasks with larger heat generation to chips with stronger heat dissipation capability.
[0091] Specifically, according to the heat dissipation capability ranking table of all chips and the heat generation ranking table of multiple target tasks, the target task with a larger heat generation is allocated to the chip with a stronger heat dissipation capability.
[0092] In summary, the computing server task allocation device provided in the above embodiment can execute the computing server task allocation method provided in the above embodiments.
[0093] The same as above concept, Figure 2The structure of the computing server task allocation device shown can be implemented as an electronic device. Figure 3 A schematic block diagram of the structure of an electronic device provided by an embodiment of the present invention is shown.
[0094] Exemplarily, the electronic device includes a storage module 21 and a processor 22, the storage module 21 includes instructions loaded and executed by the processor 22, and when the instructions are executed, the processor 22 executes the steps of various exemplary embodiments of the present invention described in the above-mentioned part of the computing server task allocation method of this specification.
[0095] It should be understood that the processor 22 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
[0096] A computer-readable storage medium is also provided in an embodiment of the present invention, which stores one or more programs. When the one or more programs are executed by a processor, the steps of various exemplary embodiments of the present invention described in the above-mentioned computing server task allocation method are implemented.
[0097] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In a hardware implementation, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or may be implemented as hardware, or may be implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable storage medium, which may include a computer-readable storage medium (or a non-transitory medium) and a communication medium (or a temporary medium).
[0098] As is known to those of ordinary skill in the art, the term computer-readable storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules or other data). Computer-readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. In addition, it is known to those of ordinary skill in the art that communication media typically contain computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and may include any information delivery medium.
[0099] Exemplarily, the computer-readable storage medium may be an internal storage module of the electronic device of the aforementioned embodiment, such as a hard disk or memory of the electronic device. The computer-readable storage medium may also be an external storage device of the electronic device, such as a plug-in hard disk, a smart memory card (SmartMediaCard, SMC), a secure digital (SecureDigital, SD) card, a flash card (FlashCard), etc. equipped on the electronic device.
[0100] The electronic devices and computer-readable storage media provided in the aforementioned embodiments comprehensively consider the volume, cost and heat dissipation effect of the computing server. Some chips are cooled by fans respectively, and some chips are cooled by a common heat sink. At the same time, when the temperature of the chip is too high, multiple target tasks can be reallocated to all chips according to the heat dissipation capacity of all chips and the heat generation of multiple target tasks, thereby improving the performance of the computing server.
[0101] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A method for allocating tasks to a computing server, wherein the computing server has a plurality of chips, characterized in that: The multiple chips are divided into multiple first chips and multiple second chips, the multiple first chips are cooled by fans respectively, and the multiple second chips are cooled by a common heat sink, and the method includes: S101, enabling all chips to run the same task and obtaining the temperature of all chips, where the temperature meets a preset temperature sampling accuracy; S102, respectively calculating a first average temperature of the plurality of first chips and a second average temperature of the plurality of second chips, and calculating a temperature difference T between the second average temperature and the first average temperature c ; S103, correcting the chip temperature obtained in S101 so that the temperatures of all chips are different: when the temperatures of two chips are the same, add the correction value T to the temperature of one of the chips. e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy; S104, determining the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103; S105, assigning multiple target tasks to each chip respectively; S106, when each chip is running the target task, if there is a chip whose temperature exceeds the threshold, re-acquire the temperatures of all chips, and process the acquired temperatures of all chips: add the temperature difference T to the acquired temperatures of the plurality of first chips. c , the temperatures of the plurality of second chips obtained remain unchanged, or the temperatures of the plurality of second chips obtained are all subtracted from the temperature difference T c , the temperatures of the plurality of first chips obtained remain unchanged; S107, correcting the temperature after the processing in S106 so that the temperatures of all chips are different: when the temperatures of two chips are the same, add the correction value T to the temperature of one of the chips. e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy; S108, determining the heat generation ranking of the plurality of target tasks according to the chip temperature corrected in S107; S109 , reallocate the multiple target tasks to each chip according to the heat dissipation capability ranking of all the chips and the heat generation ranking of the multiple target tasks: allocate the target task with a larger heat generation to the chip with a stronger heat dissipation capability.
2. A method for allocating computing server tasks according to claim 1, characterized in that: The number of the plurality of first chips is less than the number of the plurality of second chips.
3. A method for allocating computing server tasks according to claim 2, characterized in that: The ratio of the number of the plurality of first chips to the number of the plurality of second chips is 1:
4.
4. A method for allocating computing server tasks according to claim 1, characterized in that: The correction value T e Satisfies the following formula: Among them, T a represents the temperature sampling accuracy, and N represents the total number of chips.
5. A computing server computing power allocation device, wherein the computing server has multiple chips, characterized in that: The multiple chips are divided into multiple first chips and multiple second chips, the multiple first chips are cooled by fans respectively, and the multiple second chips are cooled by a common heat sink, and the device comprises: The first module is used for S101, enabling all chips to run the same task and obtaining the temperature of all chips, where the temperature meets the preset temperature sampling accuracy; The second module is used for S102, respectively calculating the first average temperature of the plurality of first chips and the second average temperature of the plurality of second chips, and calculating the temperature difference T between the second average temperature and the first average temperature c ; The third module is used for S103, correcting the chip temperature obtained in S101 so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy; A fourth module is used for S104, determining the heat dissipation capacity ranking of all chips according to the chip temperature corrected in S103; The fifth module is used for S105, allocating multiple target tasks to each chip respectively; The sixth module is used for S106. When each chip runs the target task, when there is a chip whose temperature exceeds the threshold, re-acquire the temperature of all chips and process the acquired temperature of all chips: add the temperature difference T to the acquired temperature of the plurality of first chips. c , the temperatures of the plurality of second chips obtained remain unchanged, or the temperatures of the plurality of second chips obtained are all subtracted from the temperature difference T c , the temperatures of the plurality of first chips obtained remain unchanged; The seventh module is used for S107, correcting the temperature after the processing in S106 so that the temperatures of all chips are different: when the temperatures of two chips are the same, the temperature of one chip is added with the correction value T e , until the temperatures of all chips are different, wherein the accumulated correction amount of the chip is less than the temperature sampling accuracy; An eighth module is used for S108, determining the heat generation ranking of the plurality of target tasks according to the chip temperature corrected in S107; The ninth module is used for S109, reallocating the multiple target tasks to each chip according to the heat dissipation capacity ranking of all the chips and the heat generation ranking of the multiple target tasks: allocating the target task with a larger heat generation to the chip with a stronger heat dissipation capacity.
6. The computing server computing power allocation device according to claim 5, characterized in that: The number of the plurality of first chips is less than the number of the plurality of second chips.
7. The computing server computing power allocation device according to claim 5, characterized in that: The ratio of the number of the plurality of first chips to the number of the plurality of second chips is 1:
4.
8. The computing server computing power allocation device according to claim 5, characterized in that: The correction value T e Satisfies the following formula: Among them, T a represents the temperature sampling accuracy, and N represents the total number of chips.
9. An electronic device, characterized in that: It comprises a storage module, wherein the storage module comprises instructions loaded and executed by a processor, and when the instructions are executed, the processor executes a method for allocating tasks to a computing server according to any one of claims 1 to 4.
10. A computer-readable storage medium storing one or more programs, characterized in that: When the one or more programs are executed by the processor, a computing server task allocation method as described in any one of claims 1 to 4 is implemented.
Citation Information
Patent Citations
Task allocation method and device for optimizing heat in stackable type multiprocessors
CN108897611A
Temperature-based computing resource allocation method, electronic equipment and medium
CN116360984A