Calculation task scheduling method and device in multivariate heterogeneous environment and medium

By monitoring and quantifying the state of computing resources in real time, combining task demand analysis, and using particle swarm optimization algorithm to generate intelligent scheduling strategies, the problem that traditional scheduling methods cannot effectively utilize multivariate heterogeneous resources is solved, and efficient and stable resource allocation and task execution are achieved.

CN119415240AInactive Publication Date: 2025-02-11SHANDONG INSPUR SCI RES INST CO LTD

Patent Information

Application Number
CN202510018689.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-07
Publication Date
2025-02-11
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Traditional task scheduling methods cannot effectively utilize multivariate heterogeneous computing resources and cannot flexibly adjust resource allocation, resulting in insufficient resource utilization and delayed task response.

Method used

By monitoring and quantifying the computing resource status in real time, combining task demand analysis, a particle swarm optimization algorithm is used to generate intelligent scheduling strategies, dynamically match tasks and resources, and optimize resource allocation.

Benefits of technology

It achieves more accurate task-resource matching, improves resource utilization, shortens task waiting and execution time, and ensures that the system maintains efficient and stable operation in a multivariate heterogeneous environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119415240A_ABST
    Figure CN119415240A_ABST
Patent Text Reader

Abstract

The invention discloses a computing task scheduling method and device in a multivariate heterogeneous environment and a medium, and relates to the technical field of parallel computing. The method comprises the following steps: monitoring resource states of various computing resources in a multivariate heterogeneous environment in real time, and quantifying the resource states to obtain corresponding resource information; under the condition that the to-be-processed calculation task is generated in the scheduling task list, performing demand analysis on the to-be-processed calculation task to determine a task demand report; calculating the task demand report and the resource information by using a preset scheduling strategy generation model to generate an intelligent scheduling strategy; according to the intelligent scheduling strategy, various computing resources are called to execute the to-be-processed computing task; and continuously monitoring the scheduling task list and the resource state so as to update the intelligent scheduling strategy corresponding to the to-be-processed calculation task based on the scheduling strategy strategy optimization logic.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of parallel computing technology, and in particular to a computing task scheduling method, device and medium in a multi-heterogeneous environment. Background Art

[0002] In the era of digitalization and informatization, the rapid development of computing technology has brought about the diversification of computing devices and the complexity of computing needs. From traditional central processing units (CPUs) to modern graphics processing units (GPUs), neural network processing units (NPUs) and other heterogeneous computing resources, the integration of these technologies provides powerful hardware support for the efficient processing of various computing tasks. However, with the increasing complexity of the computing environment, how to effectively schedule and manage these heterogeneous resources so that they can fully exert their performance has become an important challenge currently faced.

[0003] Traditional task scheduling methods, such as static scheduling strategies, often cannot be flexibly adjusted according to the real-time status of resources and the dynamic requirements of tasks. This results in that in some cases, computing resources may not be fully utilized, or the system may not be able to respond in time when task requirements surge. In addition, traditional scheduling methods often only consider the current occupancy of computing resources, while ignoring the correlation between computing tasks, the characteristics of computing devices, and the real-time requirements of tasks, which further limits the overall performance of computing devices. Summary of the invention The embodiments of the present application provide a computing task scheduling method, device and medium in a multi-heterogeneous environment to solve the following technical problems: for multi-mixed heterogeneous computing resources, traditional task scheduling methods can no longer meet the existing flexibility and efficiency requirements.

[0004] In the first aspect, an embodiment of the present application provides a computing task scheduling method in a multi-heterogeneous environment, the method comprising: real-time monitoring of the resource status of various computing resources in the multi-heterogeneous environment, and quantifying the resource status to obtain corresponding resource information; when a scheduling task list generates pending computing tasks, performing a demand analysis on the pending computing tasks to determine a task demand report; using a preset scheduling strategy generation model to calculate the task demand report and resource information to generate an intelligent scheduling strategy; according to the intelligent scheduling strategy, calling various computing resources to execute the pending computing tasks; continuously monitoring the scheduling task list and resource status to update the intelligent scheduling strategy corresponding to the pending computing tasks based on the scheduling strategy optimization logic.

[0005] In one implementation of the present application, the resource status is quantified to obtain corresponding resource information, specifically including: decomposing the resource status of each type of computing resources into multiple quantifiable indicators; standardizing each indicator so that it can be compared under the same dimension; and synthesizing the quantified values ​​of each indicator to generate a resource information set containing the real-time status of each type of computing resources.

[0006] In one implementation of the present application, a demand analysis is performed on the computing tasks to be processed to determine a task demand report, specifically including: using the Roofline model to analyze each code block of the computing tasks to be processed, and determining the theoretical performance upper limit of each code block on different computing resources based on the computing density requirements, hardware computing power and bandwidth requirements of each code block; based on the theoretical performance upper limit, performing type determination on each code block to determine whether each code block is a computing-intensive task or an input-output intensive task; according to the type determination result and the characteristics of each computing resource, matching computing resources for each code block, and generating a task demand report including the task type of each code block and the matching computing resources.

[0007] In one implementation of the present application, the scheduling strategy generation model adopts a particle swarm optimization algorithm as the core algorithm; using a preset scheduling strategy generation model, the task requirement report and resource information are calculated to generate an intelligent scheduling strategy, specifically including: initializing the particle swarm, and defining a fitness function based on the task requirement report and resource information; wherein the position of each particle represents a scheme for allocating each code block to different computing resources, and the speed represents the direction and step size of adjusting the resource allocation scheme; searching for the optimal scheduling strategy by iteratively updating the position and speed of each particle; in each iteration, evaluating the quality of each particle according to the fitness function, and updating the individual extreme value and the global extreme value; when the termination condition is met, outputting the intelligent scheduling strategy corresponding to the global optimal solution.

[0008] In one implementation of the present application, various types of computing resources are called to execute pending computing tasks according to an intelligent scheduling strategy, specifically including: determining the specific execution device of each code block in the pending computing task according to the intelligent scheduling strategy; for each code block, dynamically assigning the task to a specific execution device according to its task type and matching computing resources using a task allocator; forming a task execution queue with the allocation results, and calling the corresponding computing resources in sequence according to the queue order to execute each code block; and continuously monitoring the execution status and task progress of each computing resource to ensure that the pending computing task is smoothly executed with the intelligent scheduling strategy.

[0009] In one implementation of the present application, the scheduling task list and resource status are continuously monitored to update the intelligent scheduling strategy corresponding to the pending computing task based on the scheduling strategy optimization logic, specifically including: setting a monitoring cycle to trigger the monitoring process regularly or according to preset conditions; in each monitoring cycle, all backlog tasks in the monitoring scheduling task list are retrieved, and for each backlog task, its estimated completion time is obtained to compare the estimated completion time with the current time; if the estimated completion time of the pending computing task exceeds a preset threshold, it is determined that the execution status of the pending computing task deviates from the expectation of the intelligent scheduling strategy; the computing resource requirements and task priorities of the pending computing task are re-evaluated, and combined with the latest resource status information, the scheduling strategy generation model is used to recalculate to update the intelligent scheduling strategy corresponding to the pending computing task.

[0010] In one implementation of the present application, the method also includes: automatically evaluating whether it is necessary to expand or reduce backup computing resources based on the dynamic changes of computing tasks and resource usage; when the task volume surges and the existing resources are unable to meet the demand, automatically triggering the resource expansion process to add backup computing resources to the system; when the task volume decreases and some resources are idle for a long time, automatically triggering the resource reduction process to remove the reducible computing resources.

[0011] In one implementation of the present application, the method also includes: setting an anomaly detection mechanism to monitor the operating status and task execution status of various computing resources in real time; when a computing resource failure, task execution failure or other abnormal situation is detected, the exception handling process is immediately triggered to regenerate and execute the intelligent scheduling strategy.

[0012] In the second aspect, an embodiment of the present application also provides a computing task scheduling device in a multi-heterogeneous environment, characterized in that the device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute a computing task scheduling method in a multi-heterogeneous environment such as any one of the above items.

[0013] In a third aspect, an embodiment of the present application also provides a non-volatile computer storage medium for scheduling computing tasks in a multi-heterogeneous environment, which stores computer-executable instructions and is characterized in that, when the computer-executable instructions are executed, a computing task scheduling method in a multi-heterogeneous environment such as any of the above items is implemented.

[0014] The present invention provides a method, device and medium for scheduling computing tasks in a multi-heterogeneous environment, which has the following beneficial effects: By real-time monitoring and quantifying the status of various computing resources, combined with task demand analysis, tasks and resources can be matched more accurately to ensure the most reasonable use of resources. Using intelligent scheduling strategies such as particle swarm optimization algorithms, the optimal scheduling plan can be quickly generated and executed, significantly shortening the task waiting and execution time. Ming can dynamically adjust the scheduling strategy to cope with changes in resource status and task requirements. This flexibility enables the system to better adapt to diverse heterogeneous environments and maintain efficient and stable operation. The scheduling method can dynamically adjust the scheduling strategy according to changes in resource status and task requirements. This dynamic adjustment mechanism enables the system to better adapt to changes in diverse heterogeneous environments. Whether it is new computing resources or sudden task requirements, the system can respond quickly and maintain efficient and stable operation. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings: Figure 1 A flowchart of a computing task scheduling method in a multi-heterogeneous environment provided by an embodiment of the present application; Figure 2 A schematic diagram of a processing process of a computing task to be processed provided in an embodiment of the present application; Figure 3 A flow chart of intelligent scheduling strategy generation provided in an embodiment of the present application; Figure 4 A task allocation diagram provided for an embodiment of the present application; Figure 5 A schematic diagram of the internal structure of a computing task scheduling device in a multi-heterogeneous environment provided in an embodiment of the present application. DETAILED DESCRIPTION

[0016] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0017] The embodiments of the present application provide a computing task scheduling method, device and medium in a multi-heterogeneous environment to solve the following technical problems: for multi-mixed heterogeneous computing resources, traditional task scheduling methods can no longer meet the existing flexibility and efficiency requirements.

[0018] The technical solution proposed in the embodiments of the present application is described in detail below with reference to the accompanying drawings.

[0019] Figure 1 The present invention provides a flowchart of a method for scheduling computing tasks in a multi-heterogeneous environment. Figure 1 As shown, the embodiment of the present application provides a computing task scheduling method in a multi-heterogeneous environment, which specifically includes the following steps: Step 101: monitor the resource status of various computing resources in a multi-heterogeneous environment in real time, and quantify the resource status to obtain corresponding resource information.

[0020] In one embodiment of the present application, in order to implement computing task scheduling in a multi-heterogeneous environment, it is first necessary to monitor the resource status of various computing resources in the multi-heterogeneous environment in real time and quantify the resource status to obtain corresponding resource information.

[0021] Specifically, the resource status of various computing resources is decomposed into multiple quantifiable indicators; each indicator is standardized so that it can be compared under the same dimension; the quantitative values ​​of each indicator are combined to generate a resource information set containing the real-time status of various computing resources.

[0022] In one embodiment, a resource status monitoring module is used to collect underlying resource information, including CPU, NPU, GPU, DPU, TPU, DSP, FPGA, memory, video memory, bandwidth, etc. This method mainly collects underlying resource information with the help of underlying hardware drivers and health management tools, and quantifies the information of each resource (the information of each computing resource is converted into a percentage).

[0023] Step 102: When the scheduling task list generates pending computing tasks, a demand analysis is performed on the pending computing tasks to determine a task demand report.

[0024] In one embodiment of the present application, after the resource status is quantified to obtain the corresponding resource information, if a pending computing task is generated in the scheduling task list, a demand analysis is performed on the pending computing task to determine a task demand report.

[0025] Specifically, the Roofline model is used to analyze each code block of the computing task to be processed, and the theoretical performance upper limit of each code block on different computing resources is determined according to the computing density requirements, hardware computing power and bandwidth requirements of each code block. Based on the theoretical performance upper limit, the type of each code block is determined to determine whether each code block is a computing-intensive task or an input-output intensive task. According to the type determination results and the characteristics of each computing resource, computing resources are matched for each code block, and a task requirement report containing the task type of each code block and the matching computing resources is generated.

[0026] In one embodiment, the CPU parses the computing tasks issued, first divides the code in the program into a series of smaller code blocks, and uses the Roofline model to analyze the code blocks. According to the computing density of the program, the computing power of various hardware, and the bandwidth, the theoretical upper limit of each code block on different devices is determined, and a preliminarily determined whether a certain program block is a computing-intensive or input-output intensive task, and which device in the existing hardware is suitable for processing the program block, for example, DSP is suitable for processing digital signals, GPU is suitable for processing large-scale images and matrix operations, and CPU is good at processing logical tasks.

[0027] Step 103: Utilize the preset scheduling strategy generation model to calculate the task requirement report and resource information to generate an intelligent scheduling strategy.

[0028] In one embodiment of the present application, after determining the task requirement report, a preset scheduling strategy generation model is used to calculate the task requirement report and resource information to generate an intelligent scheduling strategy. It should be noted that the scheduling strategy generation model in the embodiment of the present application uses a particle swarm optimization algorithm as the core algorithm.

[0029] Specifically, the particle swarm is initialized, and the fitness function is defined according to the task requirement report and resource information. The position of each particle represents the scheme for allocating each code block to different computing resources, and the speed represents the direction and step size of adjusting the resource allocation scheme. The optimal scheduling strategy is searched by iteratively updating the position and speed of each particle. In each iteration, the quality of each particle is evaluated according to the fitness function, and the individual extreme value and the global extreme value are updated. When the termination condition is met, the intelligent scheduling strategy corresponding to the global optimal solution is output.

[0030] Figure 2 A schematic diagram of a processing process of a computing task to be processed provided in an embodiment of the present application; Figure 3 A flow chart of intelligent scheduling strategy generation provided in an embodiment of the present application.

[0031] In one embodiment, there are multiple forms of devices actually executed for each code block, and the situations of multiple devices actually executed by each code block are combined as the search space of the problem. Since the above problem is a multi-variable and multi-objective optimization problem, it is an NP-Hard problem, so it is difficult to model the above target search problem with polynomials and solve the problem mathematically. The most suitable search algorithm for NP-Hard problems is the heuristic search method. The present invention adopts the particle swarm optimization algorithm in the heuristic search algorithm. In the particle swarm algorithm, each particle has two characteristics, position and speed. The objective function value corresponding to the particle position coordinate can be used as the fitness value of the particle, and the speed determines the direction and distance of each particle flying in the search space.

[0032] The core idea of ​​this method is to first initialize the population and iteratively update the position of each particle. and speed , the quality of particles is measured by fitness, and the optimal solution is output. In each iteration, particles track individual extreme values. and global extremum Update itself, the individual extreme value is the current optimal solution found by the particle itself, and the global extreme value is the optimal solution currently found by the entire particle group. The formula for particle update speed and position is , ,in and is the learning factor, is a random number from a uniform distribution on the range [0,1].

[0033] In this application It represents the objective function under the condition of single factors such as computing resource occupation, computing task execution dependency, and computing device characteristics. is the motion vector corresponding to a certain factor. The objective function used in particle swarm modeling is ,in Represents the influencing factors of various factors, and the solution target of the overall function is .

[0034] Step 104: According to the intelligent scheduling strategy, various computing resources are called to execute the computing tasks to be processed.

[0035] In one embodiment of the present application, after the intelligent scheduling strategy is generated, various types of computing resources are called to execute the computing tasks to be processed according to the intelligent scheduling strategy.

[0036] Specifically, according to the intelligent scheduling strategy, the specific execution device of each code block in the pending computing task is determined; for each code block, according to its task type and matching computing resources, a task allocator is used to dynamically allocate the task to the specific execution device; the allocation result forms a task execution queue, and the corresponding computing resources are called in sequence according to the queue order to execute each code block; the execution status and task progress of each computing resource are continuously monitored to ensure that the pending computing task is smoothly executed with the intelligent scheduling strategy.

[0037] In one embodiment, after the scheduling strategy is generated, it is determined on which device each code block is executed. However, there may be multiple situations for each device. Therefore, it is necessary to implement a task allocation mechanism to determine the specific device on which the task is executed. To this end, it is necessary to build a task distribution model for a multi-heterogeneous environment. First, the computing devices are grouped according to their types and types and each device is numbered. The task allocator is used to dynamically allocate tasks to a fixed device, and relevant information such as estimated time consumption is saved and recorded. When allocating, the task allocator mainly considers the computing resource usage of the device, the load of the device, and other information. It makes a decision based on the above information and puts the task into the task queue of a specific device. The final decision basis for task allocation is the shortest execution time after all tasks are superimposed.

[0038] Figure 4 A task allocation diagram provided for an embodiment of the present application; Step 105: Continuously monitor the scheduling task list and resource status to update the intelligent scheduling strategy corresponding to the pending computing task based on the scheduling strategy optimization logic.

[0039] In one embodiment of the present application, during the execution of the pending computing task, the scheduling task list and resource status are continuously monitored to update the intelligent scheduling policy corresponding to the pending computing task based on the scheduling policy optimization logic.

[0040] Specifically, a monitoring cycle is set to trigger the monitoring process regularly or according to preset conditions; in each monitoring cycle, all backlog tasks in the monitoring scheduling task list are retrieved, and for each backlog task, its estimated completion time is obtained to compare the estimated completion time with the current time; if the estimated completion time of the pending computing task exceeds the preset threshold, it is determined that the execution status of the pending computing task deviates from the expectation of the intelligent scheduling strategy; the computing resource requirements and task priorities of the pending computing task are re-evaluated, and combined with the latest resource status information, the scheduling strategy generation model is used to recalculate to update the intelligent scheduling strategy corresponding to the pending computing task.

[0041] In one embodiment, taking into account that in an actual environment, tasks may change due to external factors such as ambient temperature, power supply voltage, and hardware differences, it is necessary to dynamically adjust the execution of tasks according to actual conditions. At this time, the task allocator needs to take out the backlog of tasks from the task queues of each device, obtain the estimated completion time of the task and compare it with the current time. When the threshold is exceeded, it indicates that there is a certain deviation between the actual execution of the task and the initial task allocation, so the task needs to be reallocated.

[0042] In one embodiment of the present application, the method also includes: automatically evaluating whether it is necessary to expand or reduce backup computing resources based on the dynamic changes of computing tasks and resource usage; when the task volume surges and the existing resources are unable to meet the demand, automatically triggering the resource expansion process to add backup computing resources to the system; when the task volume decreases and some resources are idle for a long time, automatically triggering the resource reduction process to remove the reducible computing resources.

[0043] In one embodiment of the present application, the method also includes: setting an anomaly detection mechanism to monitor the operating status and task execution status of various computing resources in real time; when a computing resource failure, task execution failure or other abnormal situation is detected, immediately triggering the exception handling process to regenerate and execute the intelligent scheduling strategy.

[0044] The above is an embodiment of the method proposed in this application. Based on the same inventive concept, the embodiment of this application also provides a computing task scheduling device in a multi-heterogeneous environment, whose structure is as follows: Figure 5 shown.

[0045] Figure 5 The internal structure diagram of a computing task scheduling device in a multi-heterogeneous environment provided by the embodiment of the present application. Figure 5 As shown, the device includes: at least one processor 501; and, a memory 502 communicatively connected to the at least one processor; The memory 202 stores instructions that can be executed by at least one processor, and the instructions are executed by at least one processor 501 to enable at least one processor 501 to: Monitor the resource status of various computing resources in a multi-heterogeneous environment in real time, and quantify the resource status to obtain the corresponding resource information; When the scheduling task list generates pending computing tasks, a demand analysis is performed on the pending computing tasks to determine a task demand report; Using the preset scheduling strategy generation model, the task demand report and resource information are calculated to generate an intelligent scheduling strategy; According to the intelligent scheduling strategy, various computing resources are called to execute pending computing tasks; Continuously monitor the scheduling task list and resource status to update the intelligent scheduling strategy corresponding to the pending computing tasks based on the scheduling strategy optimization logic.

[0046] Some embodiments of the present application provide corresponding Figure 1 A non-volatile computer storage medium for scheduling computing tasks in a multi-heterogeneous environment stores computer executable instructions, and the computer executable instructions are set as: Monitor the resource status of various computing resources in a multi-heterogeneous environment in real time, and quantify the resource status to obtain the corresponding resource information; When the scheduling task list generates pending computing tasks, a demand analysis is performed on the pending computing tasks to determine a task demand report; Using the preset scheduling strategy generation model, the task demand report and resource information are calculated to generate an intelligent scheduling strategy; According to the intelligent scheduling strategy, various computing resources are called to execute pending computing tasks; Continuously monitor the scheduling task list and resource status to update the intelligent scheduling strategy corresponding to the pending computing tasks based on the scheduling strategy optimization logic.

[0047] Each embodiment in this application is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the IoT device and medium embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.

[0048] The system and medium provided in the embodiments of the present application correspond one-to-one to the method. Therefore, the system and medium also have similar beneficial technical effects to the corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the system and medium will not be repeated here.

[0049] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

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

[0051] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

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

[0053] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0054] Memory may include non-permanent storage in a computer-readable medium, in the form of random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0055] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0056] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0057] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A computing task scheduling method in a multi-heterogeneous environment, characterized in that: The method comprises: Real-time monitoring of the resource status of various computing resources in a multi-heterogeneous environment, and quantification of the resource status to obtain corresponding resource information; When the scheduling task list generates pending computing tasks, performing demand analysis on the pending computing tasks to determine a task demand report; Using a preset scheduling strategy generation model, the task requirement report and the resource information are calculated to generate an intelligent scheduling strategy; According to the intelligent scheduling strategy, calling the various computing resources to execute the pending computing tasks; The scheduling task list and the resource status are continuously monitored to update the intelligent scheduling policy corresponding to the pending computing task based on the scheduling policy optimization logic.

2. The computing task scheduling method in a multi-heterogeneous environment according to claim 1, characterized in that: Quantifying the resource status to obtain corresponding resource information includes: Decompose the resource status of various computing resources into multiple quantifiable indicators; Each indicator is standardized so that it can be compared under the same dimension; The quantitative values ​​of various indicators are combined to generate a resource information set containing the real-time status of various computing resources.

3. The computing task scheduling method in a multi-heterogeneous environment according to claim 1, characterized in that: Performing a demand analysis on the computing task to be processed to determine a task demand report, specifically including: The Roofline model is used to analyze each code block of the computing task to be processed, and the theoretical performance upper limit of each code block on different computing resources is determined according to the computing density requirements, hardware computing power and bandwidth requirements of each code block; Based on the theoretical performance upper limit, each code block is type-determined to determine whether each code block is a computation-intensive task or an input-output-intensive task; According to the type determination results and the characteristics of each computing resource, the computing resources are matched for each code block, and a task requirement report including the task type of each code block and the matching computing resources is generated.

4. The computing task scheduling method in a multi-heterogeneous environment according to claim 3 is characterized in that: The scheduling strategy generation model adopts particle swarm optimization algorithm as the core algorithm; The task requirement report and the resource information are calculated using a preset scheduling strategy generation model to generate an intelligent scheduling strategy, which specifically includes: Initialize the particle swarm and define the fitness function based on the task requirement report and resource information. The position of each particle represents the scheme of allocating each code block to different computing resources, and the speed represents the direction and step size of adjusting the resource allocation scheme. Search for the optimal scheduling strategy by iteratively updating the position and velocity of each particle; In each iteration, the quality of each particle is evaluated according to the fitness function, and the individual extremum and the global extremum are updated; When the termination condition is met, the intelligent scheduling strategy corresponding to the global optimal solution is output.

5. The method for scheduling computing tasks in a multi-heterogeneous environment according to claim 4, characterized in that: According to the intelligent scheduling strategy, calling the various computing resources to execute the pending computing tasks specifically includes: Determine the specific execution device of each code block in the pending computing task according to the intelligent scheduling strategy; For each code block, a task allocator is used to dynamically allocate tasks to specific execution devices based on their task type and matching computing resources; The allocation results are formed into a task execution queue, and the corresponding computing resources are called in sequence to execute each code block according to the queue order; The execution status and task progress of each computing resource are continuously monitored to ensure that the pending computing tasks are smoothly executed according to the intelligent scheduling strategy.

6. The computing task scheduling method in a multi-heterogeneous environment according to claim 1, characterized in that: Continuously monitoring the scheduling task list and the resource status to update the intelligent scheduling strategy corresponding to the pending computing task based on the scheduling strategy optimization logic, specifically including: Set monitoring cycles and trigger monitoring processes regularly or according to preset conditions; In each monitoring cycle, all backlog tasks in the scheduled task list are retrieved and monitored, and for each backlog task, its estimated completion time is obtained to compare the estimated completion time with the current time; If the estimated completion time of the pending computing task exceeds a preset threshold, it is determined that the execution status of the pending computing task deviates from the expectation of the intelligent scheduling strategy; Re-evaluate the computing resource requirements and task priorities of the pending computing tasks, and recalculate using the scheduling strategy generation model in combination with the latest current resource status information to update the intelligent scheduling strategy corresponding to the pending computing tasks.

7. The method for scheduling computing tasks in a multi-heterogeneous environment according to claim 1, characterized in that: The method further comprises: Automatically evaluate whether to expand or reduce backup computing resources based on dynamic changes in computing tasks and resource usage; When the amount of tasks increases sharply and the existing resources cannot meet the demand, the resource expansion process is automatically triggered to add backup computing resources to the system; When the amount of tasks decreases and some resources are idle for a long time, the resource reduction process is automatically triggered to remove the reducible computing resources.

8. The computing task scheduling method in a multi-heterogeneous environment according to claim 1, characterized in that: The method further comprises: Set up anomaly detection mechanisms to monitor the operating status of various computing resources and task execution in real time; When a computing resource failure, task execution failure, or other abnormal situation is detected, the exception handling process is immediately triggered to regenerate and execute the intelligent scheduling strategy.

9. A computing task scheduling device in a multi-heterogeneous environment, characterized in that: The device comprises: at least one processor; and, a memory communicatively coupled to the at least one processor; The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute a computing task scheduling method in a multi-heterogeneous environment as described in any one of claims 1-8.

10. A non-volatile computer storage medium for scheduling computing tasks in a multi-heterogeneous environment, storing computer executable instructions, characterized in that: When the computer executable instructions are executed, a computing task scheduling method in a multi-heterogeneous environment as described in any one of claims 1 to 8 is implemented.

Citation Information

Patent Citations

  • Multitask scheduling method and device based on heterogeneous distributed cluster

    CN118227291A

  • Method and system for improving computing power efficiency

    CN118550711A

  • Computing power resource scheduling system based on particle swarm optimization algorithm

    CN118819853A

Cited By

  • Heterogeneous computing power scheduling method and device, equipment, storage medium and product

    CN119781990A

  • Workflow calculation task high-dynamic scheduling method and system

    CN119886786A

  • Dynamic allocation method and system for workload of CPU-GPU (Central Processing Unit-Graphics Processing Unit) heterogeneous system

    CN120066791A

  • Data processing method and device for edge calculation, equipment, medium and product

    CN120540819A

  • Power system resource scheduling method and device, storage medium and terminal equipment

    CN120653448A