Task processing method and system based on multiple processing units, electronic equipment and storage medium

By receiving processing unit status and task attribute information in a multi-processing unit system and dynamically matching tasks with processing units, the problems of resource fragmentation and load imbalance are solved, and the task processing efficiency and system performance are improved.

CN120687214APending Publication Date: 2025-09-23BEIJING QINGMU RUISI INTELLIGENT TECHNOLOGY CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510796723.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-04
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

In multi-processing unit systems, especially in heterogeneous computing environments, the existing technology uses a static task allocation method, which leads to resource fragmentation, inefficient utilization of heterogeneous resources and load imbalance. It is difficult to adapt to complex and changing application scenarios and has low task processing efficiency.

Method used

By receiving the processing unit status information and task attribute information, the second attribute information is generated, the task is intelligently matched with the processing unit based on the dynamic matching rule, a dynamic matching result is formed, and the task is sent to the corresponding unit for processing.

Benefits of technology

It improves task processing efficiency, optimizes processing unit performance, enhances system flexibility and adaptability, and solves resource fragmentation and load imbalance problems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120687214A_ABST
    Figure CN120687214A_ABST
Patent Text Reader

Abstract

The invention discloses a task processing method and system based on multiple processing units, electronic equipment and a computer readable storage medium. The task processing method comprises the steps that state information of the multiple processing units is received; receiving task information to be processed and related first attribute information; generating second attribute information based on the to-be-processed task information; dynamically matching the to-be-processed task with the plurality of processing units according to the first attribute information, the second attribute information and the state information to obtain a dynamic matching result; and based on a dynamic matching result, sending the to-be-processed task to a corresponding processing unit for processing. According to the method, the to-be-processed task can be decomposed into a plurality of sub-tasks, and the sub-tasks are matched, distributed and processed. Through a dynamic matching mechanism, intelligent allocation is performed according to the state of the processing unit and the task characteristics, the task processing efficiency is improved, the processing speed of the processing unit is improved, and the task processing flexibility and adaptability are enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer task processing, and in particular to a task processing method, system, electronic device and computer-readable storage medium based on multiple processing units. Background Art

[0002] With the development of computer technology, multi-processing unit systems have become an important part of modern computing architecture. In order to fully utilize the computing resources of multiple processing units, an efficient task allocation and processing mechanism is needed to reasonably allocate tasks to each processing unit.

[0003] Currently, in multi-processing unit systems, especially those in computing centers, task processing typically utilizes a static allocation approach. That is, tasks are directly assigned to idle processing units when they need processing. This static allocation approach leads to fragmented computing resources and fails to fully utilize the performance of the multi-processing unit system to efficiently process tasks. In heterogeneous computing environments, where different processing units have varying computing capabilities and characteristics, existing methods lack a comprehensive consideration of the real-time status of processing units, making them difficult to adapt to complex and changing application scenarios. This inability to efficiently process and utilize these heterogeneous resources significantly reduces task processing efficiency. Summary of the Invention

[0004] In order to solve the above problems, the present invention provides a task processing method based on multiple processing units, including: receiving status information of multiple processing units; receiving task information to be processed and related first attribute information; generating second attribute information based on the task information to be processed; dynamically matching the task to be processed with the multiple processing units according to the first attribute information, the second attribute information and the status information to obtain a dynamic matching result; based on the dynamic matching result, sending the task to be processed to the corresponding processing unit for processing.

[0005] Optionally, dynamically matching the task to be processed with the multiple processing units based on the first attribute information, the second attribute information and the status information to obtain a dynamic matching result includes: decomposing the task to be processed into multiple subtasks, and dynamically matching the multiple subtasks with the multiple processing units based on the first attribute information, the second attribute information and the status information; obtaining a matching relationship between the multiple subtasks and the multiple processing units; and obtaining the dynamic matching result based on the matching relationship.

[0006] Optionally, the task to be processed is dynamically matched with the multiple processing units based on the first attribute information, the second attribute information and the status information to obtain a dynamic matching result, including: based on the first attribute information, the second attribute information and the status information, one of the multiple processing units is used as the first processing unit of the task to be processed, and the first processing unit is used to process the task to be processed.

[0007] Optionally, the task to be processed is dynamically matched with the multiple processing units based on the first attribute information, the second attribute information and the status information to obtain a dynamic matching result, including: based on the first attribute information, the second attribute information and the status information, one of the multiple processing units is used as the second processing unit of the task to be processed, and the other idle processing units are used as the third processing unit, the second processing unit is used to process part of the task to be processed, and the third processing unit is used to process the rest of the task to be processed.

[0008] Optionally, the status information includes one or more of usage information, processing unit type information, computing capability information, memory bandwidth information, power consumption limit information, and current load status information.

[0009] Optionally, the first attribute information includes one or more of task type information, real-time requirement information, priority information, and time interval information.

[0010] Optionally, the second attribute package information includes: one or more of: data scale information, computational complexity information, parallelization feasibility information, dependency information, resource availability information, workload processing information, task continuity information, matching information, historical data information and predictive analysis information.

[0011] The present invention provides a task processing system based on multiple processing units, comprising:

[0012] A first receiving module, configured to receive status information of a plurality of processing units;

[0013] A second receiving module is used to receive task information to be processed and related first attribute information;

[0014] A generating module, configured to generate second attribute information based on the task information to be processed;

[0015] a matching module, configured to dynamically match the task to be processed with the plurality of processing units according to the first attribute information, the second attribute information, and the state information, and obtain a dynamic matching result;

[0016] A processing module is used to send the tasks to be processed to the corresponding processing units for processing based on the dynamic matching results.

[0017] The present invention also provides an electronic device comprising: one or more processors; and one or more machine-readable media having instructions stored thereon, which, when executed by the one or more processors, enables the electronic device to perform the multi-processing unit-based task processing method as described above.

[0018] The present invention also provides a computer-readable storage medium, which stores a computer program that enables a processor to execute the above-mentioned task processing method based on multiple processing units.

[0019] Therefore, the advantages of this application are that the system solves the problems of resource fragmentation, inefficient heterogeneous resource management, and load imbalance caused by static resource partitioning in traditional methods by comprehensively evaluating the first attribute information, the second attribute information, and the status information. At the same time, the present invention uses a dynamic matching mechanism to intelligently allocate tasks based on the status of the processing unit and the characteristics of the task, thereby improving the processing efficiency of the task unit, optimizing the processing performance of the task unit, and enhancing the flexibility and adaptability of task processing. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The drawings described herein are used to provide a further understanding of the present invention, constitute a part of this application, and do not constitute a limitation of the present invention.

[0021] Figure 1 is a flowchart of a task processing method based on multiple processing units according to an embodiment of the present invention;

[0022] Figure 2 is a flowchart of a task processing method based on multiple processing units according to another embodiment of the present invention;

[0023] Figure 3 This is a structural block diagram of a task processing system based on multiple processing units according to an embodiment of the present invention. DETAILED DESCRIPTION

[0024] To make the above-mentioned objects, features, and advantages of the present invention more clearly understood, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the embodiments described are only a portion of the embodiments of the present invention, not all of them. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present invention without inventive effort are also within the scope of protection of the present invention.

[0025] In multi-processing unit systems, task processing typically uses static allocation, resulting in resource fragmentation and inability to fully utilize system resources. This is especially true in heterogeneous computing environments, where different processing units have varying computing capabilities and characteristics. Existing methods struggle to effectively manage such heterogeneous resources. Furthermore, existing methods lack comprehensive consideration of the real-time status of processing units, leading to load imbalances where some processing units are overloaded while others are idle. Furthermore, existing methods lack flexibility in task decomposition and subtask allocation, making it impossible to dynamically adjust allocation strategies based on task characteristics and system status. Therefore, a dynamic task processing method is needed that comprehensively considers processing unit status information, task attribute information, and task characteristics to achieve efficient task processing and full resource utilization in multi-processing unit systems.

[0026] The following is a specific embodiment of the present invention to disclose a task processing method based on multiple processing units, including the following steps:

[0027] S101: receiving status information of multiple processing units;

[0028] In an embodiment of the present invention, the method is applied to a computing system having multiple processing units, for example, a computer system including multiple heterogeneous processing units such as CPU, GPU, NPU, etc. The present application collects the operating status information of each processing unit in real time. The operating status information includes but is not limited to usage information, processing unit type information, computing power information, memory bandwidth information, power consumption limit information and current load status information. For example, for the CPU processing unit, its current core usage, frequency, temperature and other information are collected; for the GPU processing unit, its computing unit occupancy, video memory usage, current task queue length and other information are collected; for the NPU processing unit, its current AI inference load, available computing resources and other information are collected.

[0029] S102: Receive task information to be processed and related first attribute information;

[0030] In an embodiment of the present invention, a task processing center receives a task request from a server or a terminal, and the task processing center parses the task description information contained in the task request and extracts the first attribute information of the task. The first attribute information includes one or more of task type information, real-time requirement information, priority information, and time interval information. Task type information is used to identify the nature of the task, such as audio and video conferencing, video monitoring, live broadcast, on-demand, video processing, image processing, speech recognition, data analysis, etc.; real-time requirement information is used to identify the time sensitivity of the task, such as high real-time, medium real-time or low real-time in the delay requirement; priority information is used to identify the importance of the task, such as high priority task - system critical task, medium priority - user interaction task, low priority task - background task; time interval information is used to identify the expected execution time range of the task.

[0031] S103: Generate second attribute information based on the task information to be processed;

[0032] In an embodiment of the present invention, the task processing center generates second attribute information by analyzing task information. The second attribute information includes one or more of data scale information, computational complexity information, parallelization feasibility information, dependency information, resource availability information, workload processing information, task duration information, matching information, historical data information, and predictive analysis information. Data scale information reflects the amount of data processed by the task; computational complexity information reflects the algorithmic complexity of the task; parallelization feasibility information reflects whether the task can be decomposed into subtasks executed in parallel; dependency information reflects the dependency between the task and other tasks; resource availability information reflects the immediate minimum or maximum system resources required for task execution; workload processing information reflects the required computational load characteristics of the task; task duration information reflects the expected execution time of the task; matching information reflects the degree of adaptation of the task to various processing units; historical data information reflects the historical records of the processing unit executing similar tasks; and predictive analysis information reflects the prediction of the task execution effect based on the machine learning model.

[0033] S104: Dynamically matching the task to be processed with the multiple processing units according to the first attribute information, the second attribute information, and the state information to obtain a dynamic matching result;

[0034] In an embodiment of the present invention, the task processing center combines the first attribute information, the second attribute information, and the processing unit status information, and based on dynamic matching rules, dynamically evaluates the suitability of each processing unit for the current task. Factors considered include whether the computing power of the processing unit meets the task requirements, whether the characteristics of the processing unit are suitable for the task type, and whether the current load status of the processing unit allows for the acceptance of new tasks. Through dynamic matching, based on the highest system processing efficiency, the task center determines the optimal dynamic task allocation scheme and forms a dynamic matching result, that is, matching the most suitable processing unit to perform the task. Based on the results of each dynamic matching, the system transmits the task and its related data to the designated processing unit.

[0035] In an embodiment of the present invention, the status information includes one or more of usage information, processing unit type information, computing power information, memory bandwidth information, power consumption limit information, and current load status information. The usage information reflects the historical usage and current availability of the processing unit; the processing unit type information identifies the architecture type of the processing unit, such as x86 CPU, ARM CPU, NVIDIA GPU, dedicated ASIC, etc.; the computing power information includes performance indicators such as the number of cores, frequency, and FLOPS of the processing unit; the memory bandwidth information reflects the memory access speed and capacity of the processing unit; the power consumption limit information identifies the power consumption constraints of the processing unit; and the current load status information reflects the real-time workload of the processing unit.

[0036] In an embodiment of the present invention, the first attribute information includes one or more of task type information, real-time requirement information, priority information, and time interval information. Task type information can be subdivided into categories such as compute-intensive, memory-intensive, and I / O-intensive; real-time requirement information can be divided into three categories based on latency requirements: high real-time, medium real-time, and low real-time; priority information can be set to high, medium, and low, or more detailed multi-level priorities based on the urgency of the task; and time interval information includes the earliest start time, latest completion time, and expected execution duration of the task.

[0037] In an embodiment of the present invention, the second attribute information includes one or more of data scale information, computational complexity information, parallelization feasibility information, dependency information, resource availability information, workload processing information, task duration information, matching information, historical data information, and predictive analysis information. Data scale information can be represented by the number of bytes; computational complexity information can be described by Big O notation; parallelization feasibility information can be represented by a parallelism index; dependency information can be represented by a directed graph to represent the dependencies between tasks; resource availability information includes resources such as memory, storage, and network bandwidth required for the task; workload processing information reflects the computational characteristics of the task, such as floating-point operation intensiveness, integer operation intensiveness, etc.; task duration information estimates the execution time of the task; matching information quantifies the degree of adaptation of the task to each processing unit; historical data information records the execution effect of similar tasks on each processing unit; and predictive analysis information predicts the execution effect of the task on each processing unit based on a machine learning model.

[0038] In an example of implementation of the present invention, one of the plurality of processing units is used as a first processing unit of the task to be processed according to the first attribute information, the second attribute information and the state information, and the first processing unit is used to process the task to be processed;

[0039] In an embodiment of the present invention, the system evaluates the characteristics of the task and the status of each processing unit, and selects the processing unit that is most suitable for executing the entire task as the first processing unit. During the selection process, the system will consider factors such as the computing characteristics and real-time requirements of the task, while also considering the current load status, computing power, and characteristics of each processing unit. For example, for tasks that require complex control flow, the system may select the CPU as the first processing unit; for large-scale data computing tasks suitable for parallel processing, the system may select the GPU as the first processing unit; for specialized AI reasoning tasks, the system may select the NPU as the first processing unit. The system assigns the task to be processed to the first processing unit for execution. In other words, the first processing unit is responsible for the entire processing process of the task to be processed, from receiving input data to generating results. The system monitors the execution status of the task to ensure that the task is executed as expected, and collects execution data after the task is completed for subsequent task scheduling optimization.

[0040] In another feasible example of the present invention, based on the first attribute information, the second attribute information and the status information, one of the plurality of processing units is used as the second processing unit of the task to be processed, and the other idle processing units are used as the third processing unit.

[0041] In an embodiment of the present invention, the second processing unit is used to process part of the task to be processed, and the third processing unit is used to process the remaining part of the task to be processed. The system will first select a main processing unit as the second processing unit, which will be responsible for the main processing and coordination work of the task, such as the processing of control signaling; and then use other idle or lightly loaded processing units in the system as the third processing unit for part of the data calculation and processing work. During the selection process, the system will consider the decomposability of the task, the characteristics and current status of each processing unit, and the communication overhead between the processing units. For example, the system may select the CPU as the second processing unit to be responsible for the control flow and coordination work of the task, and select the GPU and NPU as the third processing unit to be responsible for specific types of computing work.

[0042] In another embodiment of the present invention, the second processing unit is responsible for the main processing of the task, while the third processing unit is responsible for processing subtasks assigned by the second processing unit, such as specific computing modules and data processing steps. Data exchange and synchronization between the second and third processing units is achieved through a data transmission channel, ensuring the correct execution of the task. This collaborative model allows the system to fully utilize heterogeneous computing resources and improve task processing efficiency.

[0043] S105: Based on the dynamic matching result, the task to be processed is sent to the corresponding processing unit for processing;

[0044] In this embodiment of the present invention, based on the dynamic matching results, the task and its associated data are transmitted to the designated processing unit. Simultaneously, the system monitors the task's execution status and collects execution data for subsequent task scheduling optimization. Upon task completion, the processing unit returns the execution result, which the system then returns to the requesting party and updates the processing unit's status information.

[0045] The beneficial effects of the present invention are that the system addresses core issues of traditional static task allocation schemes, such as resource fragmentation, inefficient utilization of heterogeneous resources, and load imbalance, by comprehensively evaluating the first and second attribute information of tasks and the status information of processing units. Furthermore, the present invention uses this multi-dimensional information to dynamically match and intelligently allocate tasks, significantly improving task processing efficiency, optimizing processing unit performance, and significantly enhancing the system's flexibility and adaptability to dynamic loads and diverse tasks.

[0046] The present invention further provides a specific embodiment of a task processing method based on multiple processing units, comprising the following steps:

[0047] S201: receiving status information of multiple processing units;

[0048] S202: Receive task information to be processed and related first attribute information;

[0049] S203: Generate second attribute information based on the task information to be processed;

[0050] S204: Decompose the task to be processed into multiple subtasks, and dynamically match the multiple subtasks with the multiple processing units according to the first attribute information, the second attribute information and the status information; obtain the matching relationship between the multiple subtasks and the multiple processing units; and obtain the dynamic matching result based on the matching relationship.

[0051] In an embodiment of the present invention, after analyzing pending tasks, the system divides them into multiple relatively independent subtasks. For example, an image processing task can be divided into multiple subtasks based on image regions; a data analysis task can be divided into multiple subtasks based on data blocks. During the task decomposition process, the system considers the dependencies between subtasks and data sharing requirements to ensure the rationality of the decomposition plan. The system evaluates the most suitable processing unit for each subtask. During this evaluation process, the system considers the characteristics of the subtask, the characteristics of the processing unit, and the current system state. Heuristic algorithms, greedy algorithms, or dynamic programming algorithms are used to optimize the overall task allocation plan. Simultaneously, the system generates a mapping that records the processing unit assigned to each subtask, as well as related execution parameters such as priority, expected start time, and expected completion time. This mapping considers dependencies between subtasks to ensure that these dependencies are met. For example, if subtask B depends on the output of subtask A, the system ensures that subtask A executes before subtask B, or initiates subtask B only after subtask A reaches a certain stage of execution.

[0052] In another feasible example of the present invention, based on the first attribute information, the second attribute information and the status information, one of the plurality of processing units is used as the second processing unit of the subtask to be processed, and the other idle processing units are used as the third processing unit.

[0053] In one embodiment of the present invention, the second processing unit is used to process part of the subtasks to be processed, and the third processing unit is used to process the remaining subtasks of the task to be processed. The system will first select a main processing unit as the second processing unit, which will be responsible for the main processing and coordination work of the task, such as the processing of control signaling; and then use other idle or lightly loaded processing units in the system as the third processing unit for part of the data calculation and processing work. During the selection process, the system will consider the decomposability of the task, the characteristics and current status of each processing unit, and the communication overhead between processing units. For example, the system may select the CPU as the second processing unit to be responsible for the control flow and coordination work of the task, and select the GPU and NPU as the third processing unit to be responsible for specific types of computing work.

[0054] In another embodiment of the present invention, the second processing unit is responsible for the main processing of the task, while the third processing unit is responsible for processing subtasks assigned by the second processing unit, such as specific computing modules and data processing steps. Data exchange and synchronization between the second and third processing units is achieved through a data transmission channel, ensuring the correct execution of the task. This collaborative model allows the system to fully utilize heterogeneous computing resources and improve task processing efficiency.

[0055] S205: Based on the dynamic matching result, the task to be processed is sent to the corresponding processing unit for processing;

[0056] In an embodiment of the present invention, the system transmits the decomposed subtasks and related data packets to the matching processing unit based on the results generated by dynamic matching. For subtasks with dependencies, the system establishes a data monitoring mechanism (such as ensuring that the output of subtask A is completed before starting subtask B that depends on it). Alternatively, when the system adopts a master-slave collaboration mode, for example, when the second processing unit is the main control unit and the third processing unit is the co-processing unit, the second processing unit (such as the CPU) is responsible for task initialization, key calculations and result integration, and dynamically dispatches parallel subtasks to the third processing unit (such as the GPU / NPU), and the two parties exchange data through communication.

[0057] The present invention also provides a task processing system based on multiple processing units, comprising:

[0058] A first receiving module 301 is configured to receive status information of multiple processing units;

[0059] The second receiving module 302 is used to receive task information to be processed and related first attribute information;

[0060] A generating module 303 is configured to generate second attribute information based on the task information to be processed;

[0061] A matching module 304 is configured to dynamically match the task to be processed with the plurality of processing units according to the first attribute information, the second attribute information, and the state information to obtain a dynamic matching result;

[0062] The processing module 305 is configured to send the task to be processed to the corresponding processing unit for processing based on the dynamic matching result.

[0063] In this embodiment, the system is applied to a computing platform with multiple processing units, such as a server cluster, computing platform, or computing device. The system uses an intelligent scheduling mechanism to achieve the optimal match between tasks and processing resources, improving overall system performance and resource utilization efficiency.

[0064] The first receiving module 301 collects status information periodically or in an event-driven manner, triggering data collection when a significant change occurs in the processing unit status. The collected status information includes usage information, processing unit type information, computing power information, memory bandwidth information, power consumption limit information, and current load status information.

[0065] The second receiving module 302 supports processing of multiple types of task requests, such as a single serial task, multiple parallel tasks, or a combination of a single serial task and multiple parallel tasks.

[0066] The matching module may also include a task decomposition submodule 3401, which is used to decompose the task to be processed into multiple subtasks; a subtask matching submodule, which is used to dynamically match multiple subtasks with multiple processing units based on the first attribute information, the second attribute information and the status information; a relationship generation submodule, which is used to generate matching relationships between multiple subtasks and multiple processing units; and a result integration submodule, which is used to generate dynamic matching results based on the matching relationships.

[0067] The present invention provides an electronic device comprising: one or more processors; and one or more machine-readable media having instructions stored thereon, which, when executed by the one or more processors, enables the electronic device to perform the multi-processing unit-based task processing method as described in Example 1.

[0068] In this embodiment, the electronic device can be a smartphone, tablet computer, laptop computer, server, edge computing device, or other computing device with multiple processing units. The electronic device includes various types of processing units, such as general-purpose CPUs, graphics processing units (GPUs), neural network processors (NPUs), and digital signal processors (DSPs). These processing units have different architectural characteristics and computing capabilities, making them suitable for processing different types of tasks. The electronic device may include at least one main processor, such as a multi-core CPU, responsible for basic device operations and task scheduling; it may also include one or more coprocessors, such as GPUs, NPUs, and DSPs, for processing specific types of computing tasks. These processors may use different architectures, such as x86, ARM, and RISC-V, with different instruction sets and performance characteristics. The processors communicate with each other via a system bus or dedicated channels, and together form the computing platform of the device. The electronic device also includes a storage system, such as memory (RAM), flash memory, a solid-state drive (SSD), or a hard disk drive (HDD), for storing the operating system, applications, and data. The storage system contains program code that implements the task processing method based on multiple processing units. This code is organized into modules or libraries and can be loaded and executed by the processor. The storage system may adopt a layered architecture, including cache, main memory, and external storage, to balance access speed and storage capacity. The electronic device's operating system or task management system loads and executes program code stored on machine-readable media, implementing a multi-processing unit-based task processing approach. During execution, the system monitors the status of each processing unit, receives task requests, analyzes task characteristics, dynamically matches tasks with processing units, and assigns tasks to the appropriate processing unit for execution. The system may run continuously in the background, providing intelligent task scheduling services for various applications on the device, optimizing device performance and energy efficiency.

[0069] The present invention also provides a computer-readable storage medium, which stores a computer program that enables a processor to execute a task processing method based on multiple processing units as described in the embodiment.

[0070] In this embodiment, the computer-readable storage medium may be a non-transitory storage medium, such as a flash memory, a solid-state drive, a hard disk drive, an optical disc, or other persistent storage device. The computer program stored in the storage medium contains instruction codes for implementing a task processing method based on a multi-processing unit, and these codes can be loaded and executed by the processor of the computer system. The storage medium uses a standard file system format, such as FAT32, NTFS, ext4, etc., to store executable files, library files, configuration files, and data files of the computer program. The program file may be in a compiled binary format or in an interpreted script format. The storage medium may contain multiple versions of the program, suitable for different operating systems or hardware platforms.

[0071] It should be noted that the multiple embodiments provided by the present invention are all based on a task processing method of multiple processing units.

Claims

1. A task processing method based on multiple processing units, characterized in that: include: receiving status information of a plurality of processing units; Receiving task information to be processed and related first attribute information; generating second attribute information based on the task information to be processed; Dynamically matching the task to be processed with the plurality of processing units according to the first attribute information, the second attribute information and the state information to obtain a dynamic matching result; Based on the dynamic matching result, the task to be processed is sent to the corresponding processing unit for processing.

2. The method according to claim 1, characterized in that The dynamically matching the task to be processed with the multiple processing units according to the first attribute information, the second attribute information, and the state information to obtain a dynamic matching result includes: Decomposing the task to be processed into a plurality of subtasks, and dynamically matching the plurality of subtasks with the plurality of processing units according to the first attribute information, the second attribute information, and the state information; Obtaining a matching relationship between the plurality of subtasks and the plurality of processing units; Based on the matching relationship, the dynamic matching result is obtained.

3. The method according to claim 1 or 2, wherein dynamically matching the task to be processed with the plurality of processing units based on the first attribute information, the second attribute information, and the state information to obtain a dynamic matching result comprises: According to the first attribute information, the second attribute information and the state information, one of the plurality of processing units is used as a first processing unit for the task to be processed, the first processing unit being used to process the task to be processed; The first attribute information, the second attribute information and the status information.

4. The method according to claim 1 or 2, wherein dynamically matching the task to be processed with the plurality of processing units based on the first attribute information, the second attribute information, and the state information to obtain a dynamic matching result comprises: According to the first attribute information, the second attribute information and the status information, one of the multiple processing units is used as the second processing unit of the task to be processed, and the other idle processing units are used as the third processing unit. The second processing unit is used to process part of the task to be processed, and the third processing unit is used to process the rest of the task to be processed.

5. The method according to claim 1, wherein The status information includes one or more of usage information, processing unit type information, computing capability information, memory bandwidth information, power consumption limit information, and current load status information.

6. The method according to claim 1, characterized in that The first attribute information includes one or more of task type information, real-time requirement information, priority information, and time interval information.

7. The method according to claim 1, characterized in that The second attribute package information includes: one or more of: data scale information, computational complexity information, parallelization feasibility information, dependency information, resource availability information, workload processing information, task duration information, matching information, historical data information, and predictive analysis information.

8. A task processing system based on multiple processing units, characterized in that: include: A first receiving module, configured to receive status information of a plurality of processing units; A second receiving module is used to receive task information to be processed and related first attribute information; A generating module, configured to generate second attribute information based on the task information to be processed; a matching module, configured to dynamically match the task to be processed with the plurality of processing units according to the first attribute information, the second attribute information, and the state information, and obtain a dynamic matching result; A processing module is used to send the task to be processed to the corresponding processing unit for processing based on the dynamic matching result.

9. An electronic device, characterized in that: include: one or more processors; and One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, enable the electronic device to perform the multi-processing unit-based task processing method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that The computer program stored therein enables the processor to execute the task processing method based on multiple processing units as claimed in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Task scheduling method and device, electronic equipment and computer readable storage medium

    CN116680044A

  • Heterogeneous computing resource virtualization processing method, electronic equipment and storage medium

    CN118626275A

  • Multi-task dynamic reconfigurable parallel computing method and system based on systolic array

    CN119806761A

  • Resource scheduling method, data processing system, computing device, medium and product

    CN119847773A