Management scheduling system and method for computing power resources

By working collaboratively between cloud servers and clients, computing resources are monitored and analyzed in real time, and task execution is dynamically matched and optimized. This solves the problems of resource waste and task delays in traditional resource allocation methods, and achieves efficient resource scheduling and task processing.

CN120909774APending Publication Date: 2025-11-07BEIJING INTERNATIONAL COMPUTING SERVICE CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510975273.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-15
Publication Date
2025-11-07

AI Technical Summary

Technical Problem

Traditional resource allocation methods cannot be dynamically adjusted according to actual needs, resulting in idle or wasted resources and making it difficult to achieve efficient resource allocation and scheduling.

Method used

The cloud server extracts information on available computing nodes and their resources in real time. The client calculates the task requirements and node difference index, matches the optimal computing node, and executes the task based on priority.

Benefits of technology

It improved resource utilization, reduced resource idleness and waste, shortened task waiting time, and improved system response speed and overall performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120909774A_ABST
    Figure CN120909774A_ABST
Patent Text Reader

Abstract

The invention provides a management scheduling system and method for computing power resources, relates to the field of management scheduling of computing power resources, and solves the technical problems that a large number of resources are idle or wasted and efficient resource allocation and scheduling are difficult to realize due to the fact that a resource allocation mode in the prior art cannot be dynamically adjusted according to actual requirements. The method comprises the following steps: a cloud server extracts a current idle computing power node and a corresponding computing power resource, and analyzes the computing power resource of the idle computing power node; the client obtains the computing power demand task, and calculates a difference index between the computing power demand task and the idle computing power node; based on the difference index, obtaining a matching computing power node of the computing power demand task; and when the plurality of computing power demand tasks correspond to the same matched computing power node, the priorities of the plurality of computing power demand tasks are analyzed, and the matched computing power node sequentially executes the tasks based on the priorities of the computing power demand tasks. The method and the device are used in a computing power resource management scheduling process.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of computing power resource management and scheduling, and in particular to a computing power resource management and scheduling system and method. BACKGROUND

[0002] In today's rapidly developing digital era, computing power, as a core element driving technological progress and economic development, has seen explosive demand. With the widespread application of cutting-edge technologies such as artificial intelligence, big data, cloud computing, and edge computing, industries are increasingly dependent on computing power resources, and the demand for computing power resource management and scheduling is becoming increasingly stringent.

[0003] Traditional resource allocation methods cannot be dynamically adjusted according to actual needs, and many enterprises still manage and schedule computing power in isolation, resulting in a large amount of idle or wasted resources, making it difficult to achieve efficient resource allocation and scheduling, and affecting the flexibility and response speed of overall business. SUMMARY

[0004] The present application provides a computing power resource management and scheduling method and device, which solves the technical problem that the resource allocation method of the prior art cannot be dynamically adjusted according to actual needs, resulting in a large amount of idle or wasted resources, making it difficult to achieve efficient resource allocation and scheduling.

[0005] To achieve the above-mentioned purpose, the present application adopts the following technical solutions: In a first aspect, a computing power resource management and scheduling method is provided, comprising: The cloud server extracts the current idle computing power nodes and corresponding computing power resources, and analyzes the computing power resources of the idle computing power nodes; The client obtains a computing power demand task, calculates the difference index between the computing power demand task and the idle computing power nodes, and based on the difference index, obtains the matching computing power nodes of the computing power demand task; When multiple computing power demand tasks correspond to the same matching computing power node, the priority of the multiple computing power demand tasks is analyzed, and the matching computing power node executes the tasks in turn based on the priority of the computing power demand tasks.

[0006] Based on the above technical solutions, in the computing power resource management and scheduling method provided by the present application, the system dynamically extracts idle computing power nodes and their resource information through the cloud server, realizes real-time monitoring and analysis of computing power resources, and improves resource utilization. The client calculates the difference index with each node according to the task demand, intelligently matches the optimal computing power node, and enhances the accuracy of task scheduling. When multiple tasks compete for the same node, the system reasonably arranges the execution order according to the priority mechanism, ensures that high-priority tasks are processed first, and improves the overall task processing efficiency and response speed. The present application effectively solves the problems of resource waste and task delay in traditional computing power scheduling.

[0007] With reference to the first aspect, in a possible implementation form of the first aspect, the analyzing the computing resource of the idle computing resource node comprises: analyzing a loss coefficient of the computing resource; calculating a used duration of the computing resource based on the loss coefficient; calculating a theoretical computing resource minus a product of the used duration and the loss coefficient to obtain the computing resource of the idle computing resource node; wherein the theoretical computing resource is a maximum computing capacity provided under ideal conditions.

[0008] With reference to the first aspect, in a possible implementation form of the first aspect, the analyzing the loss coefficient of the computing resource comprises: extracting actual computing resource demands of a plurality of computing resource demand tasks from historical running data; calculating a difference between a maximum actual computing resource demand and a minimum actual computing resource demand of the same type of computing resource demand task, and dividing the difference by a total execution duration of the same type of computing resource demand task to obtain a computing resource fluctuation coefficient of the computing resource in executing the same type of computing resource demand task within the total execution duration; performing mean value processing on the computing resource fluctuation coefficients of the computing resource in executing different types of computing resource demand tasks to obtain the loss coefficient of the computing resource.

[0009] With reference to the first aspect, in a possible implementation form of the first aspect, the same type of computing resource demand task requires the same type and size of computing resource.

[0010] With reference to the first aspect, in a possible implementation form of the first aspect, the calculating the difference index between the computing resource demand task and the idle computing resource node comprises: extracting demand computing resources of the computing resource demand task, calculating absolute values of differences between the demand computing resources and corresponding computing resources of the idle computing resource node, and multiplying the absolute values of the differences by weight coefficients corresponding to the demand computing resources to obtain the difference index between the computing resource demand task and the idle computing resource node; wherein the weight coefficients corresponding to the demand computing resources are determined based on a proportion of a demand size of the demand information to a rated size.

[0011] With reference to the first aspect, in a possible implementation form of the first aspect, the obtaining the matching computing resource node for the computing resource demand task comprises: determining whether the difference index is greater than a preset difference threshold; if yes, the corresponding idle computing resource node is marked as a candidate computing resource node; if no, no processing is performed; obtaining a candidate computing resource node with the minimum difference index for the computing resource demand task, and marking the candidate computing resource node as the matching computing resource node.

[0012] With reference to the first aspect, in a possible implementation form of the first aspect, when a plurality of computing resource demand tasks correspond to the same matching computing resource node, the analyzing the priority of the plurality of computing resource demand tasks comprises: extracting the computing power resource of the matched computing power node; counting the number of types of the computing power resource required by each computing power demand task; sorting the number of types of the computing power resource required by each computing power demand task in ascending order, and sorting the difference index in descending order, to obtain the bit sequence of the number of types and the bit sequence of the difference index; calculating the absolute value of the difference between the bit sequence of the number of types of the computing power resource and the bit sequence of the difference index, marked as the bit sequence difference value; determining whether the bit sequence difference value is less than a preset difference threshold value; if yes, the priority of the computing power demand task is the bit sequence of the bit sequence priority; if no, the priority of the computing power demand task is the average of the two bit sequences.

[0013] In combination with the first aspect, in a possible implementation manner, the priorities of the plurality of computing power demand tasks are the same, and then the analysis is performed on each computing power resource required by the plurality of computing power demand tasks and whether the sum of the required computing power resources is less than or equal to the sum of the corresponding computing power resources of the matched computing power node; if yes, the plurality of computing power demand tasks are simultaneously performed; if no, part of the computing power demand tasks are simultaneously performed; wherein the sum of the computing power required by the part of the computing power demand tasks is less than or equal to the sum of the corresponding computing power resources of the matched computing power node; and the relationship between the priority of the part of the computing power demand tasks and the priority of the rest of the computing power demand tasks is that the priority of the part of the computing power demand tasks is higher than the priority of the rest of the computing power demand tasks.

[0014] In combination with the first aspect, in a possible implementation manner, the analysis of the loss coefficient of the computing power resource includes that the rest of the computing power demand tasks can be executed by the idle candidate node.

[0015] The second aspect provides a computing power resource management and scheduling device, which includes a communication unit and a processing unit; the communication unit is configured to extract the current idle computing power node and the corresponding computing power resource, and to obtain the computing power demand task; the processing unit is configured to analyze the computing power resource of the idle computing power node, and to calculate the difference index between the computing power demand task and the idle computing power node; based on the difference index, the matched computing power node of the computing power demand task is obtained; when a plurality of computing power demand tasks correspond to the same matched computing power node, the priorities of the plurality of computing power demand tasks are analyzed, and the matched computing power node executes the tasks in turn based on the priorities of the computing power demand tasks.

[0016] The third aspect provides a computing power resource management and scheduling device, which includes a processor and a storage medium; the storage medium includes instructions, and the processor is configured to run the instructions to implement the method described in the first aspect and any possible implementation manner of the first aspect. The computing power resource management and scheduling device can be an electronic device, or a chip in the electronic device.

[0017] In a fourth aspect, the present application provides a management and scheduling system for computing power resources, comprising: an acquisition module, a matching module and a priority module; wherein the acquisition module is configured to extract current idle computing power nodes and corresponding computing power resources, and to acquire computing power demand tasks; the matching module is configured to analyze the computing power resources of the idle computing power nodes, and to calculate the difference index between the computing power demand tasks and the idle computing power nodes; based on the difference index, the matching module is configured to acquire the matching computing power nodes for the computing power demand tasks; and the priority module is configured to analyze the priorities of the plurality of computing power demand tasks when the plurality of computing power demand tasks correspond to the same matching computing power node, and to cause the matching computing power node to execute the tasks in turn based on the priorities of the computing power demand tasks.

[0018] In a fifth aspect, the present application provides a computer-readable storage medium having instructions stored therein, which, when executed on a management and scheduling device for computing power resources, causes the management and scheduling device for computing power resources to perform the method described in the first aspect and any possible implementation manner of the first aspect.

[0019] In a sixth aspect, the present application provides a computer program product comprising instructions, which, when executed on a management and scheduling device for computing power resources, causes the management and scheduling device for computing power resources to perform the method described in the first aspect and any possible implementation manner of the first aspect.

[0020] The present application provides a management and scheduling system and method for computing power resources, which can extract current idle computing power nodes and corresponding computing power resources in real time, ensure dynamic allocation of computing power resources, and adapt to changing task demands. By real-time monitoring and analyzing idle computing power nodes, the system can more efficiently utilize computing power resources and reduce resource idling and waste. By calculating the difference index between computing power demand tasks and idle computing power nodes, the client can accurately assess the matching degree of tasks and computing power nodes. Based on the difference index, the system can acquire the matching computing power nodes most suitable for executing specific computing power demand tasks, improve task execution efficiency and success rate, and when a plurality of computing power demand tasks correspond to the same matching computing power node, the system can analyze the priorities of these tasks to ensure that high-priority tasks can be executed first. The matching computing power node executes the tasks in turn based on the priorities of the computing power demand tasks, ensuring the fairness and orderliness of task execution and avoiding resource conflicts and task blocking. The present application can reduce the waiting time of tasks, improve the response speed and overall performance of the system through accurate task matching and priority-driven task scheduling. Reasonable resource allocation and task scheduling strategies can help enhance the stability of the system and reduce system crashes or performance degradation caused by insufficient resources or task conflicts.

[0021] It should be understood that the descriptions of technical features, technical solutions, advantages or similar language in this application do not imply that all features and advantages can be achieved in any single embodiment. On the contrary, it can be understood that the description of a feature or advantage means that the specific technical feature, technical solution or advantage is included in at least one embodiment. Therefore, the description of technical features, technical solutions or advantages in this specification does not necessarily refer to the same embodiment. Further, the technical features, technical solutions and advantages described in this embodiment can be combined in any appropriate manner. Those skilled in the art will understand that the embodiments can be implemented without one or more specific technical features, technical solutions or advantages of a specific embodiment. In other embodiments, additional technical features and advantages can be identified in specific embodiments that do not embody all embodiments. BRIEF DESCRIPTION OF DRAWINGS

[0022] Figure 1 A computing power resource scheduling communication system architecture diagram is provided for embodiments of the application; Figure 2 A flowchart of a computing power resource management and scheduling method is provided for embodiments of the application; Figure 3 A flowchart of a matching computing power node analysis method is provided for embodiments of the application; Figure 4 A structural diagram of a resource management and scheduling device is provided for embodiments of the application; Figure 5 A hardware structure diagram of a resource management and scheduling device is provided for embodiments of the application. DETAILED DESCRIPTION

[0023] In the description of the present application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this document is only a description of the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B, which means that there are three cases of A alone, A and B together, and B alone. In addition, "at least one" means one or more, and "multiple" means two or more. "First", "second", etc. do not limit the quantity and execution order, and "first", "second", etc. do not necessarily mean different.

[0024] It should be noted that in this application, "exemplary" or "for example" means to serve as an example, illustration or description. Any embodiment or design scheme described as "exemplary" or "for example" in this application should not be interpreted as more preferred or more advantageous than other embodiments or design schemes. Rather, the use of "exemplary" or "for example" is intended to present the relevant concept in a specific manner.

[0025] The computing resource management and scheduling method provided in this application embodiment can be applied to, for example, Figure 1 In the computing resource scheduling and communication system 100 shown, such as Figure 1 As shown, the communication system includes: communication equipment, edge computing equipment, and execution equipment.

[0026] Among them, the communication equipment is used to extract the current idle computing nodes and corresponding computing resources, as well as to obtain computing power demand tasks.

[0027] Edge computing devices are used to analyze the computing resources of idle computing nodes; calculate the difference index between computing power demand tasks and idle computing nodes; and obtain matching computing nodes for computing power demand tasks based on the difference index.

[0028] The execution device is used to analyze the priority of multiple computing power demand tasks when multiple computing power demand tasks correspond to the same matching computing power node, and the matching computing power node executes the tasks sequentially based on the priority of the computing power demand tasks.

[0029] To address the technical problem that existing resource allocation methods cannot be dynamically adjusted according to actual needs, resulting in a large amount of idle or wasted resources and difficulty in achieving efficient resource allocation and scheduling, this application provides a method for managing and scheduling computing resources. The method includes: a cloud server extracting current idle computing nodes and their corresponding computing resources, and analyzing the computing resources of the idle computing nodes; a client obtaining computing power demand tasks and calculating the difference index between the computing power demand tasks and idle computing nodes; based on the difference index, obtaining matching computing nodes for the computing power demand tasks; when multiple computing power demand tasks correspond to the same matching computing node, analyzing the priorities of the multiple computing power demand tasks, and the matching computing node executing tasks sequentially based on the priority of the computing power demand tasks. Based on this, by real-time monitoring and extraction of current idle computing nodes and their corresponding computing resources, the system achieves dynamic allocation of computing resources, flexibly responding to constantly changing task demands, effectively reducing resource idleness and waste, and significantly improving computing power resource utilization. Furthermore, through this precise task matching and priority-driven task scheduling strategy, the system successfully shortens task waiting time, significantly improving the system's response speed and overall performance.

[0030] like Figure 2 As shown in the figure, an embodiment of this application provides a method for managing and scheduling computing resources, including: S201. The cloud server extracts the current idle computing nodes and their corresponding computing resources, and analyzes the computing resources of the idle computing nodes.

[0031] Among them, computing nodes include cloud computing platforms and edge computing networks, and computing resources include CPUs and GPUs, whose computing power includes kernels and memory.

[0032] For example, the resource utilization and task status of all registered computing power nodes such as servers, edge devices, etc. are obtained in real time; Through the agent program: each computing power node deploys a lightweight agent (such as Prometheus Node Exporter, Telegraf), which regularly reports the CPU / GPU utilization, memory occupation, network bandwidth and delay of the computing power node, and sends an idle signal to the cloud server at regular intervals, that is, the computing power node is in an idle state.

[0033] S202, the client obtains the computing power demand task, calculates the difference index between the computing power demand task and the idle computing power node; based on the difference index, the matching computing power node of the computing power demand task is obtained.

[0034] The difference index is a quantitative index, which is usually a numerical value obtained by comprehensive evaluation according to multiple dimensions, used to measure whether a certain idle computing power node is suitable for executing the current computing power demand task; The lower the difference index of a certain idle computing power node, the more matched the current computing power demand task, and the computing power node corresponding to the minimum difference index in the plurality of difference indexes is the matching computing power node of the computing power demand task.

[0035] S203, when multiple computing power demand tasks correspond to the same matching computing power node, the priority of the multiple computing power demand tasks is analyzed, and the matching computing power node executes the tasks in turn based on the priority of the computing power demand tasks.

[0036] It should be pointed out that a high-performance computing power node may be selected as the best matching node by multiple tasks at the same time, but due to limited resources, it cannot handle all tasks in parallel, so it needs to execute the computing power demand tasks in turn based on the priority; the task priority is an index indicating the urgency, importance or user level of the task, usually represented by numbers or levels.

[0037] Based on the above technical solution, the application provides a management and scheduling method of computing power resources, which makes the evaluation of computing power resources more close to the actual situation by considering the performance decline and aging of computing power resources in long-term use. The introduction of the loss coefficient provides an intuitive index for the long-term performance change of the computing power resources, which helps the system to plan resource update or maintenance strategy in advance. Accurate idle computing power calculation provides an important basis for resource scheduling of cloud servers. By monitoring and calculating the idle computing power in real time, the system can more clearly understand the available computing power resources, so as to make more efficient and reasonable resource allocation decisions. In addition, by accurately matching the computing power demand task and the computing power resource, a reasonable resource allocation and task scheduling strategy is realized.

[0038] Further, in the embodiments of the present application, when the priorities of multiple computing power demand tasks are the same, by analyzing the respective computing power resources of these task demands and whether they are less than or equal to the corresponding computing power resources of the matching computing power nodes, it can be accurately judged whether they can be executed in parallel. If the condition is met, several computing power demand tasks are allowed to be performed at the same time, fully utilizing the computing power resources of the matching computing power nodes, and improving the resource utilization rate.

[0039] In a possible implementation manner of the embodiments of the present application, in combination with Figure 2 As shown in Figure 3 S201 can be implemented by the following S301 and S302, which will be described in detail below: S301, the cloud server extracts the actual computing power demand of several computing power demand tasks from the historical running data; calculates the difference between the maximum actual computing power demand and the minimum actual computing power demand of the same type of computing power demand task, and divides the total execution time of the same type of computing power demand task to obtain the computing power fluctuation coefficient of the computing power resource in the total execution time for executing the same type of computing power demand task; The computing power fluctuation coefficients of the computing power resource in executing different types of computing power demand tasks are processed by mean value to obtain the loss coefficient of the computing power resource; Wherein, the type and corresponding computing power of the computing power resource required by the same type of computing power demand task are the same; S302, the total used time of the computing power resource is calculated, and the product of the theoretical computing power resource and the loss coefficient is subtracted to obtain the computing power resource of the idle computing power node.

[0040] It should be pointed out that the theoretical computing power resource is the maximum computing power provided under ideal conditions.

[0041] For example, assume that a certain idle cloud computing platform is equipped with the following resources: CPU: 8 cores, theoretical computing power = 100 GIPS (billion instructions per second), GPU: NVIDIA T4, theoretical computing power = 15 TFLOPS; Extract the historical running data of several task types A (T4 GPU + 4 core CPU required) and several task types B (T4 GPU + 8 core CPU required) executed under this computing power node; task type A: the total execution time is 28h, and in this execution time, the maximum actual computing power of CPU is 90GIPS, and the minimum actual computing power is 70GIPS, the maximum actual computing power of GPU is 14TFLOPS, and the minimum actual computing power is 8TFLOPS; task type B: the total execution time is 30h, and in this execution time, the maximum actual computing power of CPU is 85GIPS, and the minimum actual computing power is 65GIPS, the maximum actual computing power of GPU is 10TFLOPS, and the minimum actual computing power is 8TFLOPS; The fluctuation coefficient of the CPU is (90-70) / 28≈0.71, and the fluctuation coefficient of the GPU is (14-8) / 28≈0.21. The fluctuation coefficient of the CPU is (85-65) / 30≈0.67, and the fluctuation coefficient of the GPU is (10-8) / 30≈0.067. The loss coefficient of the CPU is (0.71+0.67) / 2=0.69, and the loss coefficient of the GPU is (0.21+0.067) / 2≈0.14. The current CPU usage time of the cloud computing platform is extracted, and if the usage time is 30h, the current CPU power is 100-30 0.69≈80GIPS. The current GPU usage time of the cloud computing platform is extracted, and if the usage time is 30h, the current GPU power is 15-30 0.14≈11GIPS.

[0042] It should be noted that the loss coefficient can be set as the power resource loss amount per unit time or per unit time, and the unit of the unit time can be hour or minute, etc. When the power resource drops to the rated lower limit value, the loss amount is almost 0.

[0043] Based on the above technical solution, the actual power of different power demand tasks is extracted, the maximum and minimum actual power difference of the same type of task is calculated, and the fluctuation coefficient of the power is obtained by dividing the total execution time, which can accurately quantify the fluctuation of the power resource in the execution process of different tasks, and provide detailed data support for subsequent power resource management. The fluctuation coefficients of different types of power demand tasks are averaged to obtain the loss coefficient of the power resource, which fully considers the performance decline, aging and other factors that may occur in the long-term use of the power resource, so that the evaluation of the power resource is more close to the actual situation. Accurate idle power calculation provides an important basis for resource scheduling of cloud servers, which helps to realize more efficient and reasonable resource allocation, improve overall service quality and user experience.

[0044] In a possible implementation manner of the embodiment of the application, the above S202 can be implemented by the following S401 and S402. Figure 2 As shown in the following S401 and S402, the above S202 can be implemented by the following S401 and S402. Figure 3 The following S401 and S402 are specifically described as follows: S401, extract the demand computing resource of the computing power demand task, calculate the absolute value of the difference between the demand computing resource and the computing resource corresponding to the idle computing node, multiply the absolute value of the difference by the weight coefficient corresponding to each demand computing resource, and obtain the difference index between the computing power demand task and the idle computing node; wherein the weight coefficient corresponding to the demand computing resource is determined based on the proportion of the demand size of the demand information to the rated size, the larger the proportion, the larger the weight coefficient; S402, judge whether the difference index is greater than the preset difference threshold; if yes, the corresponding idle computing node is marked as a candidate computing node; if not, no processing is performed; Obtain the candidate computing node with the minimum difference index of the computing power demand task, and mark it as a matching computing node.

[0045] For example, the demand computing resource of a certain computing power demand task: GPU: NVIDIA A100 (computing power demand: 39TFLOPS) is required, CPU: 16 cores (computing power demand: 110GIPS) are required, and memory: 64GB (bandwidth demand: 200GB / s) is required; The weight coefficient is set based on the demand size: since the computing power demand of CPU is the largest, set CPU: 0.3 (main demand), GPU: 0.6, and memory: 0.1; Suppose the idle computing nodes are as shown in Table 1: Table 1 Idle computing nodes

[0046] The difference index of the computing node A is 0.6 |110-100|+0.3 |39-39|+0.1 |64-64|=6; The difference index of the computing node B is 0.6 |110-95|+0.3 |25-39|+0.1 |64-64|=13.2; Suppose the preset difference threshold is 14, then the computing node A and the computing node B are both candidate computing nodes for the computing power demand task, and the difference index corresponding to the computing node A is smaller than that of the computing node B, so the computing node A is the matching computing node for the computing power demand task.

[0047] Based on the above technical scheme, the difference absolute value between the idle computing power node computing power resource and the computing power demand task demand computing power resource is calculated, and the difference index is obtained in combination with the weight coefficient. This method can accurately quantify the matching difference between the computing power demand task and the idle computing power node, and provide a scientific basis for subsequent matching decision. The weight coefficient is determined based on the ratio of the demand size of the demand information to the rated size. The larger the ratio, the larger the weight coefficient. This setting can more reasonably reflect the importance of different demand computing power resources in the matching process, making the calculation of the difference index more in line with the actual situation; the candidate computing power node with the minimum difference index of the computing power demand task is obtained, and is marked as the matching computing power node. This method can ensure the optimality of the matching result, so that the computing power demand task can be supported by the most suitable computing power resource. By optimizing the matching result, waste and idling of computing power resources can be avoided, and overall resource utilization can be improved.

[0048] In a possible implementation manner of the embodiment of the application, the above S203 can be implemented by the following S501 and S502, and the following will be described in detail. Figure 2 As shown in the above S203, the above S203 can be implemented by the following S501 and S502, and the following will be described in detail. Figure 3 The above S203 can be implemented by the following S501 and S502, and the following will be described in detail. S501, extracting the computing power resource of the matching computing power node; S502, counting the type number of the required computing power resource of each computing power demand task; The type number of the required computing power resource of each computing power demand task is sorted in ascending order and the difference index is sorted in descending order, to obtain the bit sequence of the type number and the bit sequence of the difference index; The absolute value of the difference between the bit sequence of the type number of the computing power resource and the bit sequence of the difference index is calculated, and is marked as the bit sequence difference value. It is judged whether the bit sequence difference value is less than a preset difference threshold value. If yes, the priority of the computing power demand task is the bit sequence of the bit sequence priority. If no, the priority of the computing power demand task is the average of the bit sequences, and the average is rounded up.

[0049] It should be noted that the difference index directly reflects the matching quality. The smaller the difference index, the higher the matching degree of the task demand and the node resource, and the higher the execution efficiency (such as the GPU model being completely consistent and the memory bandwidth being sufficient). Prior execution of such tasks can reduce resource waste, avoid "big material small use" or "small material big use", and shorten the task completion time, so that the resources can be released faster for use by other tasks; The resource type number only reflects the complexity, and the task that needs more resource types (such as GPU+CPU+memory) is not necessarily the current optimal choice. If the matching degree is poor (the difference index is large), forced allocation may cause resource contention (such as CPU matching but GPU not matching, task lag), and the overall system throughput decreases.

[0050] Exemplarily, the existing computing power requirement tasks T1, T2, T3 and T4 are given the resource category number order (descending) and the difference index order (ascending) of each computing power requirement task, as shown in Table 2 and Table 3. Table 2 Bit order of resource category number of each computing power requirement task

[0051] Table 3 Bit order of difference index of each computing power requirement task

[0052] Assuming that the preset difference threshold is 1, the final priority of the computing power requirement task is shown in the following Table 4: Table 4 Priority of computing power requirement task

[0053] Based on the above technical solution, the method not only considers the number of computing power resource categories required by the computing power requirement task, but also combines the difference index between the task and the idle computing power node. The comprehensive consideration method can more comprehensively reflect the task characteristics and provide a more scientific and reasonable basis for priority determination. By judging whether the bit order of the number of computing power resource categories required by the computing power requirement task is consistent with the bit order of the difference index, the priority is determined. This mechanism not only considers the diversity of the task's demand for computing power resources, but also takes into account the matching degree of the task and the idle computing power node, making the priority ordering more flexible and reasonable. When the bit orders are inconsistent, the priority is determined according to the bit order of the difference index, ensuring that tasks with smaller difference indexes (i.e., tasks with higher matching degrees with idle computing power nodes) can be executed first, which helps to improve resource utilization and reduce resource waste. Through reasonable priority ordering, the system can more efficiently allocate computing power resources, ensuring that important tasks or tasks with high matching degrees can be processed first, thereby improving the overall system efficiency.

[0054] In addition, when the priorities of multiple computing power requirement tasks are the same, the analysis is performed on whether the required computing power resources of the multiple computing power requirement tasks are less than or equal to the corresponding computing power resources of the matching computing power nodes; if yes, the several computing power requirement tasks are executed simultaneously; if no, part of the computing power requirement tasks are extracted to be executed simultaneously, and the priority of the part of the computing power requirement tasks is higher than that of the remaining computing power requirement tasks; wherein the computing power required by the part of the computing power requirement tasks is less than or equal to the corresponding computing power resources of the matching computing power nodes; the remaining computing power requirement tasks can be executed by the idle candidate nodes.

[0055] Exemplarily, the allocation is attempted in the order of priority: T3 (level 1): requirement: GPU 39TFLOPS (occupying all GPUs), remaining resources: CPU 160GIPS, memory 200GB / s; result: T3 exclusively occupies GPU, other tasks need to wait or select other nodes; If T3 does not occupy all resources (assuming demand is 1 GPU): Remaining GPU: 19.5 TFLOPS, can continue to allocate: T2 (level 2): demand 1 GPU (19.5 TFLOPS) + 4-core CPU -> can be parallel; T1 / T4: Because the GPU has been exhausted, it needs to wait.

[0056] Based on the above technical solution, when the priorities of a plurality of computing power demand tasks are the same, by analyzing whether the computing power resources of these task demands are less than or equal to the computing power resources corresponding to the matching computing power nodes, it can be accurately judged whether they can be executed in parallel. If the condition is met, a plurality of computing power demand tasks are allowed to be performed at the same time, fully utilizing the computing power resources of the matching computing power nodes, and improving the resource utilization rate.

[0057] The above mainly introduces the scheme of the embodiments of the present application from the perspective of device implementation. It can be understood that each device, for example, the computing power resource management and scheduling apparatus, contains at least one of the corresponding hardware structure and software module for executing each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be realized in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0058] The embodiments of the present application can divide the functional units of the computing power resource management and scheduling apparatus according to the above method examples. For example, each functional unit can be divided according to each function, or two or more functions can be integrated in one processing unit. The integrated unit can be realized in the form of hardware or software functional unit. It should be noted that the division of units in the embodiments of the present application is illustrative, and is only a logical functional division. Actual implementation can have another division method.

[0059] In the case of integrated units, Figure 5 A possible structure schematic diagram of the computing power resource management and scheduling apparatus (denoted as resource management and scheduling apparatus 50) involved in the above embodiments is shown, which includes a processing unit 501 and a communication unit 502, and can also include a storage unit 503. Figure 5 The structure schematic diagram shown can be used to illustrate the structure of the resource management and scheduling apparatus involved in the above embodiments.

[0060] When Figure 5The shown structural schematic is used for illustrating the structure of the resource management and scheduling apparatus involved in the above embodiments. The processing unit 501 is configured to control and manage the actions of the resource management and scheduling apparatus. The communication unit 502 is configured to communicate with other devices by the resource management and scheduling apparatus. The storage unit 503 is configured to store the program code and data of the resource management and scheduling apparatus.

[0061] For example, the communication unit 502 is configured to extract the current idle computing power nodes and corresponding computing power resources, and obtain the computing power demand task. The processing unit 501 is configured to analyze the computing power resources of the idle computing power nodes, calculate the difference index between the computing power demand task and the idle computing power nodes, and obtain the matching computing power node of the computing power demand task based on the difference index. In a possible implementation, the processing unit 501 is further configured to, when a plurality of computing power demand tasks correspond to the same matching computing power node, analyze the priorities of the plurality of computing power demand tasks, and make the matching computing power node execute the tasks in turn based on the priorities of the computing power demand tasks.

[0062] The processing unit 501 can be a processor or a controller. The communication unit 502 can be a communication interface, a transceiver, a transceiver, a transceiver circuit, a transceiver device, etc. The communication interface is collectively referred to as an interface, which can include one or more interfaces. The storage unit 503 can be a memory. When the resource management and scheduling apparatus 50 is a chip, the processing unit 501 can be a processor or a controller, and the communication unit 502 can be an input interface and / or an output interface, a pin or a circuit, etc. The storage unit 503 can be a storage unit (for example, a register, a cache, etc.) in the chip, or a storage unit (for example, a read-only memory (ROM), a random access memory (RAM), etc.) located outside the chip.

[0063] The communication unit can also be referred to as a transceiving unit. The antenna and control circuit with transceiving function in the resource management and scheduling apparatus 50 can be regarded as the communication unit 502 of the resource management and scheduling apparatus 50, and the processor with processing function can be regarded as the processing unit 501 of the resource management and scheduling apparatus 50. Optionally, the device for realizing the receiving function in the communication unit 502 can be regarded as a communication unit, which is configured to perform the receiving steps in the embodiments of the present application, and the communication unit can be a receiver, a receiver, a receiving circuit, etc. The device for realizing the sending function in the communication unit 502 can be regarded as a sending unit, which is configured to perform the sending steps in the embodiments of the present application, and the sending unit can be a transmitter, a sender, a sending circuit, etc.

[0064] Figure 5If the integrated units in the process are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. Storage media for storing computer software products include various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory, random access memory, magnetic disks, or optical disks.

[0065] Figure 5 The units in the process can also be called modules; for example, a processing unit can be called a processing module.

[0066] This application embodiment also provides a hardware structure diagram of a computing resource management and scheduling device (denoted as resource management and scheduling device 60), see [link to diagram]. Figure 5 The resource management and scheduling device 60 includes a processor 601, and optionally, a memory 602 connected to the processor 601.

[0067] In the first possible implementation, see Figure 5 The resource management and scheduling device 60 also includes a transceiver 603. The processor 601, memory 602, and transceiver 603 are connected via a bus. The transceiver 603 is used to communicate with other devices or communication networks. Optionally, the transceiver 603 may include a transmitter and a receiver. The device in the transceiver 603 that implements the receiving function can be considered as a receiver, which is used to perform the receiving steps in the embodiments of this application. The device in the transceiver 603 that implements the transmitting function can be considered as a transmitter, which is used to perform the transmitting steps in the embodiments of this application.

[0068] Based on the first possible implementation method Figure 5 The structural diagram shown can be used to illustrate the structure of the resource management and scheduling device involved in the above embodiments.

[0069] in, ​ Alternatively, the system chip in the resource management and scheduling device can be illustrated. In this case, the actions performed by the aforementioned resource management and scheduling device can be implemented by this system chip; the specific actions performed can be found above and will not be repeated here.

[0070] In the implementation process, each step in the method provided by the embodiment can be completed by the integrated logic circuit of hardware in the processor or the instruction in the form of software. The steps of the method disclosed by the embodiment of the present application can be directly embodied as hardware processor execution completion, or execution completion by hardware and software module combination in the processor.

[0071] The processor in the present application can include but is not limited to at least one of the following: central processing unit (CPU), microprocessor, digital signal processor (DSP), microcontroller unit (MCU), or various types of computing devices running software such as artificial intelligence processors, each of which can include one or more cores for executing software instructions to perform operations or processing. The processor can be a separate semiconductor chip, or can be integrated with other circuits as a semiconductor chip, for example, it can form a SoC (system on chip) with other circuits (such as coding and decoding circuits, hardware acceleration circuits, or various bus and interface circuits), or it can be integrated as a built-in processor in the ASIC. The ASIC integrated with the processor can be packaged separately or packaged together with other circuits. In addition to including cores for executing software instructions to perform operations or processing, the processor can further include necessary hardware accelerators, such as field programmable gate arrays (FPGA), PLDs (programmable logic devices), or logic circuits that implement special logic operations.

[0072] The memory in the embodiment of the present application can include at least one of the following types: read-only memory (ROM) or other types of static storage devices that can store static information and instructions, random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, and electrically erasable programmable read-only memory (EEPROM). In some scenarios, the memory can also be a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited to this.

[0073] The embodiment of the present application further provides a computer readable storage medium, comprising instructions which, when executed on a computer, cause the computer to perform any of the above methods.

[0074] The embodiment of the present application further provides a computer program product comprising instructions which, when executed on a computer, cause the computer to perform any of the above methods.

[0075] The embodiment of the present application further provides a chip, comprising a processor and an interface circuit, wherein the interface circuit is coupled with the processor, the processor is configured to execute a computer program or instructions to implement the above method, and the interface circuit is configured to communicate with other modules outside the chip.

[0076] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product comprises one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network or other programmable devices. The computer instructions can be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (for example, coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (for example, infrared, wireless, microwave, etc.) mode. The computer readable storage medium can be any available medium that can be accessed by a computer or data storage device such as one or more servers, data centers, etc. integrated with one or more media. The available media can be magnetic media (for example, floppy disk, hard disk, magnetic tape), optical media (for example, DVD), or semiconductor media (for example, solid state disk (solid state disk, SSD)) and the like.

[0077] Although the present application is described herein in conjunction with various embodiments, other variations of the disclosed embodiments can be understood and implemented by those skilled in the art through viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. Some measures described in mutually different dependent claims can be combined and produce good results.

[0078] Although the present application has been described in connection with certain specific features and embodiments thereof, it is to be understood that it is not to be limited to the features and embodiments specifically described, but rather can be modified and adapted in various ways without departing from the scope of the present application. Accordingly, the description and drawings are to be regarded as illustrative in nature and are not to be viewed as limiting the scope of the present application. It is to be understood that the application is capable of variation and modification and is to be construed as including any and all such variations and modifications within the scope of the application. Accordingly, the description and drawings are to be regarded as illustrative in nature and are not to be viewed as limiting the scope of the present application. It is to be understood that the application is capable of variation and modification and is to be construed as including any and all such variations and modifications within the scope of the application.

[0079] Part of the data in the above formula is calculated by removing the dimension, and the formula is obtained by software simulation of a large amount of collected data to obtain a formula closest to the real situation; the preset parameters and the preset threshold in the formula are set by the person skilled in the art according to the actual situation or obtained by a large amount of data simulation.

Claims

1. A method for managing and scheduling computing power resources, characterized in that, The application relates to a method for matching a plurality of computing power demand tasks with a plurality of idle computing power nodes. The cloud server extracts current idle computing power nodes and corresponding computing power resources, and analyzes the computing power resources of the idle computing power nodes. The client obtains the computing power demand tasks, and calculates a difference index between the computing power demand tasks and the idle computing power nodes; the difference index is used to represent the difference between the computing power resources required by the computing power demand tasks and the computing power resources of the idle computing power nodes. Based on the difference index, the matching computing power nodes of the computing power demand tasks are obtained. When a plurality of computing power demand tasks correspond to the same matching computing power node, the priority of the plurality of computing power demand tasks is analyzed, and the matching computing power node executes the tasks in turn based on the priority of the computing power demand tasks. 2.The method of claim 1, wherein, The analysis of the computing power resources of the idle computing power nodes comprises the following steps. The loss coefficient of the computing power resources is analyzed; the used duration of the computing power resources is calculated based on the loss coefficient; the theoretical computing power resources are reduced by the product of the used duration and the loss coefficient to obtain the computing power resources of the idle computing power nodes; the theoretical computing power resources are the maximum computing capacity provided under ideal conditions. 3.The method of claim 2, wherein, The analysis of the loss coefficient of the computing power resources comprises the following steps. The cloud server extracts the actual computing power demand of a plurality of computing power demand tasks from historical operation data; the difference between the maximum actual computing power demand and the minimum actual computing power demand of the same type of computing power demand task is calculated, and then the difference is divided by the total execution duration of the same type of computing power demand task to obtain the computing power fluctuation coefficient of the computing power resources in the total execution duration for executing the same type of computing power demand task. The computing power fluctuation coefficients of the computing power resources in executing different types of computing power demand tasks are processed by mean value to obtain the loss coefficient of the computing power resources.

4. The management and scheduling method of computing resource according to claim 3, characterized in that, The computing power resources required by the same type of computing power demand task are of the same type and have the same corresponding computing power.

5. The method of claim 1, wherein, The obtaining of the matching computing power nodes of the computing power demand tasks comprises the following steps. It is judged whether the difference index is greater than a preset difference threshold; if yes, the corresponding idle computing power node is marked as a candidate computing power node; if no, no processing is performed. The candidate computing power node with the minimum difference index of the computing power demand task is obtained and marked as the matching computing power node.

6. The management and scheduling method of computing resource according to claim 5, characterized in that, The calculation of the difference index between the computing power demand tasks and the idle computing power nodes comprises the following steps. The required computing power resources of the computing power demand tasks are extracted, the absolute value of the difference between the required computing power resources and the corresponding computing power resources of the idle computing power nodes is calculated, the absolute value of the difference is multiplied by the weight coefficient corresponding to each required computing power resource to obtain the difference index between the computing power demand tasks and the idle computing power nodes; wherein the weight coefficient corresponding to the required computing power resource is determined based on the proportion of the demand size of the demand information to the rated size.

7. The method of claim 1, wherein, When a plurality of computing power demand tasks correspond to the same matching computing power node, the priority of the plurality of computing power demand tasks is analyzed, which comprises the following steps. The computing power resources of the matching computing power node are extracted. The number of types of the required computing power resources of each computing power demand task is counted. The number of types of the required computing power resources of each computing power demand task is sorted in ascending order, and the difference index is sorted in descending order to obtain the bit sequence of the number of types and the bit sequence of the difference index. The absolute value of the difference between the bit sequence of the number of types of computing power resources and the bit sequence of the difference index is marked as a bit sequence difference value; it is determined whether the bit sequence difference value is less than a preset difference threshold value; if yes, the priority of the power demand task is the bit sequence priority; if no, the priority of the power demand task is the average of the two bit sequences. 8.The method of claim 7, wherein, If the priorities of the plurality of power demand tasks are the same, it is analyzed whether each power resource required by the plurality of power demand tasks is less than or equal to the power resource corresponding to the matching power node; if yes, the plurality of power demand tasks are simultaneously performed; if no, part of the power demand tasks are simultaneously performed, wherein the power and of the part of the power demand tasks are less than or equal to the power resource corresponding to the matching power node.

9. The management and scheduling method of computing resource according to claim 8, characterized in that, The remaining power demand tasks can be executed by the idle candidate node.

10. A management and scheduling system of computing resources, based on the management and scheduling method of computing resources of any of claims 1-9, characterized in that, It comprises: a matching module, and an acquisition module and a priority module connected thereto; the acquisition module is used to extract the current idle power node and the corresponding power resource, and to acquire the power demand task; the matching module is used to analyze the power resource of the idle power node; and to calculate the difference index between the power demand task and the idle power node; based on the difference index, the matching power node of the power demand task is acquired; the priority module is used to analyze the priority of the plurality of power demand tasks when the plurality of power demand tasks correspond to the same matching power node, and the matching power node sequentially executes the task based on the priority of the power demand task.

Citation Information

Cited By

  • Calculation power allocation system and method fused with data processing platform

    CN121092326A

  • MaaS platform intelligent scheduling settlement method and system based on AI

    CN122115043A