Task allocation optimization method and device for multi-core heterogeneous ASIC (Application Specific Integrated Circuit) computing mainboard
By building a computing performance model and using optimization algorithms to generate task allocation plans, the problem of real-time task allocation delays on multi-core heterogeneous ASIC computing motherboards is solved, and efficient task allocation and resource utilization are achieved.
Patent Information
- Application Number
- CN202510176567.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-18
- Publication Date
- 2025-03-18
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, there is a problem of execution delay in real-time task allocation for multi-core heterogeneous ASIC computing motherboards.
By obtaining the computing core setting information of the computing motherboard, building a motherboard computing performance model, and performing performance scheduling simulation analysis of the computing requirements set through optimization algorithms, generating a task allocation plan, identifying and generating the task execution characteristics of the current execution task, allocating the task execution characteristics based on the task allocation plan, and scheduling computing resources to process the current task.
It has achieved the optimization of real-time task allocation for multi-core heterogeneous ASIC computing motherboards, improved system performance, responded to task changes in real time, maximized the utilization of heterogeneous computing resources, and improved overall computing efficiency.
Smart Images

Figure CN119645667A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of chip task allocation, and in particular to a task allocation optimization method and device for a multi-core heterogeneous ASIC computing motherboard. Background Art
[0002] A multi-core heterogeneous ASIC computing motherboard refers to a computing motherboard that contains multiple computing cores with different characteristics and performance in a computing system. The computing cores include general-purpose processors (CPUs), graphics processing units (GPUs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), etc. The purpose of this architectural design is to improve the computing power and efficiency of the overall system by leveraging the advantages of different types of computing cores.
[0003] When executing tasks with different task requirements, the tasks can be assigned to one or more most suitable computing cores for execution, so as to achieve the best efficiency and energy consumption. However, in the prior art, in order to obtain the best computing core allocation plan for the currently executed task, it is necessary to consume computing resources and computing time, so there is a certain delay in the allocation of execution efficiency. Summary of the invention
[0004] The purpose of the present invention is to provide a method and device for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard, aiming to solve the problem of execution delay when allocating real-time tasks to a multi-core heterogeneous ASIC computing motherboard in the prior art.
[0005] The present invention is implemented in this way. In a first aspect, the present invention provides a method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard, comprising: Acquiring computing core setting information of a computing mainboard, and performing digital feedback processing of the computing core on the computing mainboard according to the computing core setting information, so as to obtain a mainboard computing performance model; Obtaining an executable task set of the computing mainboard, and analyzing task computing requirements of each executable task in the executable task set to obtain a computing requirement set corresponding to the executable task set; Performing a performance scheduling simulation analysis on the computing demand set according to the motherboard computing performance model through an optimization algorithm to obtain a task allocation plan corresponding to the computing demand set by the motherboard computing performance model; Acquire the currently executed task of the computing mainboard, match and identify the currently executed task according to the executable task set, and generate a task execution feature of the currently executed task according to the result of the matching and identification; The task execution characteristics are assigned tasks according to the task assignment plan to obtain the task assignment mode of the currently executed task, and the computing resources of the computing mainboard are scheduled according to the task assignment mode to perform task assignment processing on the currently executed task.
[0006] In a second aspect, the present invention provides a task allocation optimization device for a multi-core heterogeneous ASIC computing motherboard, which is used to implement a task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard as described in any one of the first aspects.
[0007] The present invention provides a task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard, which has the following beneficial effects: The present invention collects computing core setting information of a computing mainboard, generates a mainboard computing performance model through digital feedback processing, obtains an executable task set and analyzes the computing requirements of each task to form a computing requirement set, uses an optimization algorithm to simulate and analyze the computing requirement set based on the performance model, generates a task allocation plan, identifies and generates task execution characteristics of the currently executed task, allocates the task execution characteristics according to the task allocation plan, schedules computing resources to process the current task, accurately simulates resource performance through a performance model, ensures efficient resource allocation through an optimization algorithm, improves system performance, responds to task changes in real time, ensures system flexibility and stability, maximizes the utilization of heterogeneous computing resources, improves overall computing efficiency, and solves the problem of execution delay when allocating real-time tasks to a multi-core heterogeneous ASIC computing mainboard in the prior art. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Figure 1 It is a schematic diagram of the steps of a method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0009] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0010] The implementation of the present invention is described in detail below in conjunction with specific embodiments.
[0011] Reference Figure 1 As shown, a preferred embodiment of the present invention is provided.
[0012] In a first aspect, the present invention provides a method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard, comprising: S1: obtaining computing core setting information of a computing mainboard, and performing digital feedback processing of the computing core on the computing mainboard according to the computing core setting information, so as to obtain a mainboard computing performance model; S2: Obtaining an executable task set of the computing mainboard, and analyzing task computing requirements of each executable task in the executable task set to obtain a computing requirement set corresponding to the executable task set; S3: Performing a performance scheduling simulation analysis on the computing demand set according to the motherboard computing performance model through an optimization algorithm to obtain a task allocation plan corresponding to the computing demand set by the motherboard computing performance model; S4: Acquire the currently executed task of the computing mainboard, match and identify the currently executed task according to the executable task set, and generate a task execution feature of the currently executed task according to the result of the matching and identification; S5: Perform task allocation on the task execution characteristics according to the task allocation plan to obtain the task allocation mode of the currently executing task, and schedule computing resources on the computing mainboard according to the task allocation mode to perform task allocation processing on the currently executing task.
[0013] Specifically, in step S1 of the embodiment provided by the present invention, the computing core setting information of the computing motherboard is obtained through a hardware management tool or a system command, and the computing core setting information includes the type, model and performance index of each computing core set on the multi-core heterogeneous ASIC computing motherboard.
[0014] It is understandable that by obtaining detailed information about hardware resources, we can understand the computing power and topology of the system, providing an important basis for subsequent task scheduling, resource allocation, and performance optimization. Understanding the performance characteristics of each computing core helps to evaluate how to allocate tasks based on load characteristics (computation-intensive, I / O-intensive, etc.).
[0015] More specifically, you can further run a series of benchmark tests (such as Linpack, Stress-ng, etc.) or specific tasks under the actual computing load, record the system's performance under different loads and core configurations, monitor the parameters of the computing core, including CPU utilization, memory usage, load balancing, response time, etc., experiment with different task scheduling strategies, collect indicators such as task execution time, throughput, and latency, and based on the test results, associate the system's execution feedback (such as resource consumption and task execution time, etc.) with the computing core setting information (such as the number of cores, number of threads, frequency, etc.) to extract performance bottlenecks and advantages.
[0016] More specifically, based on the performance data obtained from digital feedback processing, a computing performance model is constructed using mathematical twin technology and algorithm model technology to express the relationship between resource utilization and task load. This allows the execution time of tasks under different numbers of cores, threads, and frequency settings to be predicted based on the task's resource requirements and hardware performance. For computing tasks that support multi-cores, the model needs to consider how to reasonably allocate tasks among multiple cores to avoid resource waste and improve parallelism. Based on real-time monitoring feedback, the model can dynamically adjust task scheduling strategies to achieve load balancing.
[0017] Specifically, in step S2 of the embodiment provided by the present invention, a set of all executable tasks on the computing mainboard is collected. These executable tasks are tasks that can be run by the computing mainboard. That is, the executable tasks are simulated in advance on the computing mainboard to obtain the performance requirements of the executable tasks, and the best task allocation plan is obtained based on the performance requirements. Thereafter, in actual work, there is no need to analyze and allocate the execution tasks in real time, but the allocation method of the computing mainboard corresponding to these executable tasks is obtained directly through the pre-allocated plan.
[0018] It can be understood that what are collected in the executable task set are representative executable tasks, which can represent the types of tasks that can be performed on the computing motherboard. When there are executable tasks in the subsequent actual work that cannot be completely matched with the executable task set, the executable task can be pattern matched through the executable task set to obtain executable tasks that can be used for reference, and then the reference and degree of task allocation mode can be adjusted according to the executable tasks to quickly derive the task allocation plan for the execution tasks.
[0019] More specifically, the set of executable tasks includes compute-intensive tasks: such as scientific computing, image processing, machine learning training, etc., memory-intensive tasks: such as large-scale data analysis, database operations, memory cache processing, etc., I / O-intensive tasks: such as file reading / writing, network transmission, database query, etc., and mixed tasks: tasks that include multiple requirements such as computing, memory, and I / O.
[0020] More specifically, conduct an in-depth analysis of each task to identify its specific computing resource requirements. Specific analysis items include CPU requirements: how many CPU cores each task requires (single-core, dual-core, multi-core), whether parallel computing is supported, whether thread scheduling and parallelization can be performed, CPU usage frequency (for example, for high-performance computing, it may need to run on a high-frequency CPU), memory requirements: the amount of memory (RAM) required for each task, whether there is a memory bottleneck or a large amount of cache is required, I / O requirements: file read and write speed requirements (for data processing tasks, database operations, etc.), network bandwidth requirements (for distributed computing or network transmission intensive tasks), storage requirements: temporary storage (such as cache, log files, etc.) and long-term storage requirements (such as database files, data backup, etc.).
[0021] More specifically, the results of each task analysis will be organized to form a comprehensive set of task computing requirements, which may include the following: resource requirements for each task: such as the required number of CPU cores, memory size, I / O bandwidth, etc., priority of each task: set the priority level according to the nature of the task and real-time requirements, execution time estimation of each task: estimate the execution time of the task based on resource requirements and task size, resource competition information: for situations where multiple tasks compete for the same resources, mark possible resource conflicts, especially shared resources such as CPU, memory, I / O, etc., and output the computing requirement set as structured data (such as JSON, XML, database tables, etc.) to facilitate use by subsequent scheduling systems and optimization algorithms.
[0022] It is understandable that through in-depth analysis of the computing requirements of each task, the type and degree of demand for computing motherboard resources of various tasks can be clarified. Through the classification of tasks and analysis of resource requirements, a set of computing requirements is generated, forming a comprehensive understanding of the relationship between tasks and resources, and providing data support for subsequent performance scheduling and optimization. By analyzing the computing requirements of each task, a more reasonable resource scheduling strategy can be designed to maximize the performance of the computing motherboard and avoid resource conflicts and bottlenecks.
[0023] Specifically, in step S3 of the embodiment provided by the present invention, according to the computing requirement set, the optimization goal is first defined. Generally speaking, the goal is to maximize system performance or minimize resource waste, which may include the following goals: Minimize task execution time: The goal of task scheduling is to minimize the time required to complete the overall task as much as possible, maximize resource utilization: rationally utilize CPU, memory, I / O and other resources to avoid idle or excessive use of resources, load balancing: ensure balanced distribution of tasks among different computing cores, memory, storage and other resources to avoid overload or resource bottlenecks, and reduce task waiting time: optimize task queuing waiting time and reduce system delays.
[0024] More specifically, based on the motherboard computing performance model, the specific constraints in the resource requirement set of each task (such as the number of CPU cores, memory requirements, I / O bandwidth, etc.) are considered, and constraints are established, such as: computing resource constraints: the number of CPU cores cannot exceed the number of available cores, and the memory usage cannot exceed the total system memory. Task priority constraints: high-priority tasks should be scheduled first. Task mutual exclusion constraints: some tasks may not be executed simultaneously due to resource conflicts. Parallel execution constraints: whether a specific task supports parallel execution and whether it needs to rely on the completion of other tasks before it can be started.
[0025] More specifically, a mathematical model of the task scheduling optimization problem is constructed, the objective function and constraints are combined to form a linear or nonlinear optimization problem, and the appropriate optimization algorithm is selected according to the complexity of the task scheduling and the characteristics of the problem.
[0026] More specifically, commonly used optimization algorithms include: Genetic Algorithm (GA): suitable for complex task scheduling problems, capable of global search, and can handle complex constraints, Simulated Annealing (SA): suitable for large-scale optimization problems, able to avoid falling into local optimal solutions, and explore the global optimal solution by gradually lowering the temperature, Particle Swarm Optimization (PSO): searches by simulating the foraging behavior of bird flocks, suitable for dynamic resource scheduling problems, Reinforcement Learning (RL): learns the optimal strategy through interaction with the environment, suitable for situations that require real-time adjustment in task scheduling, *Heuristic Algorithms (such as A, Best-FirstSearch, etc.)**: can quickly find approximate optimal solutions, suitable for scheduling problems with strong constraints.
[0027] More specifically, the selected optimization algorithm is applied to the task scheduling model, and the optimal or approximately optimal task scheduling scheme is found through repeated iterations and updates. In each iteration, the objective function is evaluated according to the current task scheduling scheme, and indicators such as task execution time and resource utilization are calculated. According to the algorithm's search process, the task allocation scheme is continuously adjusted to meet the optimization requirements of the objective function. When the optimization algorithm reaches a certain convergence standard (such as the objective function change is less than a certain threshold or the maximum number of iterations is reached), the optimization process ends.
[0028] It is understandable that through appropriate optimization algorithms, the optimal or near-optimal task scheduling solution can be found, making the use of computing resources more efficient. The optimization algorithm can handle complex task scheduling constraints, such as task dependencies, resource sharing restrictions, etc., and avoid unreasonable scheduling strategies.
[0029] More specifically, a scheduling simulation is performed according to the optimized task allocation plan. The effect of the scheduling scheme in actual application is verified through simulation. The execution of task scheduling is simulated in a virtual environment, and the execution time, resource consumption, load status, etc. of the task are recorded. The execution effect of the scheduling plan is tested in the physical system, and indicators such as resource utilization, task completion time, and system response time are monitored. The task execution time before and after scheduling is compared to evaluate the optimization effect. After task scheduling, the usage of system resources (such as CPU, memory, and I / O) is analyzed to ensure that resources are fully utilized. It is checked whether tasks are evenly distributed to each computing core to avoid overloading some cores while other cores are idle. According to the simulation analysis results, the task allocation plan is further adjusted to optimize the resource scheduling strategy. For example, some tasks may not be effectively parallelized, or some resources (such as I / O bandwidth) may become bottlenecks, resulting in performance degradation.
[0030] More specifically, the optimized task scheduling scheme is organized into a complete task allocation plan, including information such as resource allocation, scheduling order, execution nodes, etc. of each task, clarifying the CPU cores, memory size, I / O bandwidth and other resources used by each task, determining the order of task execution, ensuring that high-priority tasks are executed first, and avoiding resource conflicts. If the task supports parallelization, the execution arrangement and allocation strategy of parallel tasks are indicated, and the generated task allocation plan is output in a structured format (such as JSON, XML, table, etc.) to provide a specific plan for the system's resource scheduling and task execution.
[0031] It can be understood that by using the optimization algorithm to obtain in advance the task allocation plan corresponding to each executable task of the computing mainboard, in the subsequent actual work of the computing mainboard, there is no need to use the optimization algorithm again to obtain the task allocation plan, but the corresponding plan can be directly scheduled, thereby achieving fast and efficient task allocation and resource scheduling.
[0032] Specifically, in step S4 of the embodiment provided by the present invention, the task currently being executed by the computing mainboard is obtained through the task management module of the operating system. In the Linux system, the current process list can be obtained through commands such as ps, top, htop, etc. In the Windows system, the running process information can be obtained through the task manager, tasklist command or PowerShell script. In a real-time system or embedded system, obtaining task execution information can be completed through the API provided by the task scheduler or the real-time operating system (RTOS).
[0033] More specifically, relevant information of each executed task is collected, such as process ID, CPU usage, memory usage, I / O operations, and execution time. All tasks being executed on the computing motherboard are acquired in real time to provide basic data for subsequent analysis and scheduling. Multi-dimensional information of tasks is collected through task management tools to ensure the comprehensiveness of task feature data.
[0034] More specifically, based on a pre-defined set of executable tasks (including known task types and their computing requirement characteristics), the currently executing task is identified and classified, and the resource usage (such as CPU, memory, I / O) of the current task is compared with the computing requirements of the tasks in the executable task set.
[0035] More specifically, the type that best matches the current task is matched based on the task's execution time, resource consumption, priority, etc., that is, the closest executable task is selected from the executable task set and used as the task execution feature of the current task.
[0036] More specifically, if there is a large deviation between the currently executed task and any executable task in the executable task set, a deeper analysis of the currently executed task is required to obtain the correlation between the currently executed task and each executable task in the executable task set, and generate the task execution features of the currently executed task based on the correlation.
[0037] It can be understood that the task execution characteristics are used to feedback the correlation between the current execution task and each executable task in the executable task set in terms of specific execution. Since the executable task set has been analyzed in advance to obtain the corresponding optimal task allocation plan, the current execution task can be quickly and quickly assigned the optimal task based on the optimal task allocation plan corresponding to the executable task set analyzed in advance.
[0038] Specifically, in step S5 of the embodiment provided by the present invention, the current task is matched and assigned according to a formulated task allocation plan (generally a predetermined task allocation plan calculated by an optimization algorithm), the task is disassembled and assigned to the corresponding computing cores on the computing motherboard, and reasonable load balancing is performed according to the resource requirements of the current task and the available resources to avoid overload or idle resources. According to the hardware resource limitations of the motherboard (such as CPU core, memory size), the resource limit is avoided from being exceeded, and the task is assigned to suitable computing resources according to the task characteristics and the strategies in the plan.
[0039] It is understandable that in a multi-core heterogeneous ASIC computing motherboard, there are usually multiple types of computing cores, including CPU and GPU, etc. Different computing cores are adapted to different types of work. Therefore, when corresponding to each executable task in the executable task set, the optimal mode of resource scheduling and task allocation for multiple computing cores is also different. By analyzing the corresponding optimal solution for a representative executable task set in advance, a task allocation plan is obtained. When the current execution task is actually executed, the relationship between the execution characteristics of the current execution task and the executable task is obtained by analyzing the association between the current execution task and each executable task. The relationship between the execution characteristics of the current execution task and the executable task can be fed back to the task allocation plan corresponding to the executable task, thereby obtaining the optimal task allocation mode corresponding to the current execution task.
[0040] The present invention provides a task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard, which has the following beneficial effects: The present invention collects computing core setting information of a computing mainboard, generates a mainboard computing performance model through digital feedback processing, obtains an executable task set and analyzes the computing requirements of each task to form a computing requirement set, uses an optimization algorithm to simulate and analyze the computing requirement set based on the performance model, generates a task allocation plan, identifies and generates task execution characteristics of the currently executed task, allocates the task execution characteristics according to the task allocation plan, schedules computing resources to process the current task, accurately simulates resource performance through a performance model, ensures efficient resource allocation through an optimization algorithm, improves system performance, responds to task changes in real time, ensures system flexibility and stability, maximizes the utilization of heterogeneous computing resources, improves overall computing efficiency, and solves the problem of execution delay when allocating real-time tasks to a multi-core heterogeneous ASIC computing mainboard in the prior art.
[0041] Preferably, the step of obtaining the computing core setting information of the computing mainboard, and performing digital feedback processing of the computing core on the computing mainboard according to the computing core setting information to obtain the mainboard computing performance model includes: S11: Obtaining computing core setting information of a computing mainboard; wherein the computing core setting information includes performance indicators of a plurality of computing cores set on the computing mainboard, and a layout association relationship between the computing cores; S12: performing digital simulation on each computing core on the computing mainboard according to the performance index of each computing core in the computing core setting information, so as to obtain a unit performance model corresponding to each computing core; S13: performing resource parallel scheduling analysis on each computing core on the computing mainboard according to the layout association relationship of each computing core in the computing core setting information, so as to obtain parallel working characteristics corresponding to each of the unit performance models; S14: Associating and combining the performance models of each unit according to the parallel working characteristics to obtain a mainboard computing performance model.
[0042] Specifically, the performance indicators of each computing core are obtained, including: Clock frequency: the operating frequency of each computing core, usually in GHz, Computing power: the computing power of each computing core, such as the number of instructions executed per second, the number of floating-point operations per second, etc., Core load: the current load or resource usage of each computing core, Power consumption: the power consumption characteristics of each computing core, which is crucial for thermal management and power optimization, Cache size: the cache capacity of each computing core, which affects its efficiency in processing data.
[0043] More specifically, the layout association relationship between computing cores is obtained: the physical layout and logical layout of computing cores on the motherboard, including: physical location: the location of each computing core at the physical level, such as a specific area on the chip, data transmission path: the data exchange path between computing cores, which may include data transmission through shared memory, network bus or cache, connection topology: the connection topology between different computing cores, including ring, mesh or star structure, which affects task scheduling and data access efficiency.
[0044] It can be understood that by collecting the performance indicators and layout associations of the computing cores, it is ensured that task scheduling and computing resource allocation can fully reflect the actual operating status of the computing motherboard, and by accurately obtaining core information, subsequent simulation analysis and performance modeling are supported.
[0045] More specifically, each computing core is digitally simulated based on its performance indicators (such as clock frequency, computing power, power consumption, etc.), and the computing power of the computing core is modeled using a simulator (such as a CPU simulator) or a computing model (such as a floating-point operation, integer operation, etc.). Through the numerical model, the processing power, response time, power consumption, etc. of each computing core when running alone are evaluated, the performance of the computing core under different load conditions is simulated, and the impact of different tasks (such as computing-intensive tasks or I / O-intensive tasks) on the core performance is tested.
[0046] More specifically, based on the layout association between computing cores, we analyze how computing cores coordinate their work in parallel processing to improve the overall system performance. We also analyze the data transmission delay between different computing cores, especially the time and bandwidth of data transmission across cores. We also analyze the synchronization and consistency issues when computing cores share cache and memory to avoid performance degradation due to data inconsistency. We simulate the scheduling of parallel tasks on multiple computing cores to ensure that tasks can be efficiently allocated to each core to avoid resource conflicts and uneven loads.
[0047] More specifically, based on the results of parallel scheduling, the collaborative working characteristics of each computing core are evaluated, such as: Bandwidth utilization: analyzing the data transmission bandwidth usage of tasks between multiple computing cores, Parallelism benefit: analyzing the improvement of computing efficiency brought by parallel processing, calculating the changes in task execution time under different degrees of parallelism, and being able to maximize the advantages of multi-core processing and reduce resource conflicts in task scheduling by analyzing the parallel scheduling between cores. Parallel scheduling analysis can effectively improve resource utilization in multi-core systems and reduce waiting time and data transmission delays.
[0048] More specifically, the unit performance model of each computing core is associated with the results of parallel scheduling analysis to form a system-level performance model. The association method includes: weighted combination of each unit model according to the performance, load and parallel working characteristics of the computing core to obtain a comprehensive motherboard computing performance model, combining the individual model of each computing core with the synergy between multiple cores to evaluate the overall performance of the motherboard, identify bottlenecks in the motherboard computing performance, such as computing power limitations, data transmission bottlenecks, etc., and generate a global computing performance model that can dynamically adjust computing strategies based on load, task requirements, resource status, etc.
[0049] It can be understood that the motherboard computing performance model can predict the overall computing performance of the motherboard under different loads and configurations, provide decision-making basis for task scheduling, resource allocation and system optimization, and dynamically adjust the allocation method of computing resources by associating and combining the performance models of each unit to achieve more efficient resource utilization and task scheduling.
[0050] Preferably, the steps of obtaining the executable task set of the computing mainboard, analyzing the task computing requirements of each executable task in the executable task set to obtain the computing requirement set corresponding to the executable task set include: S21: performing a prediction analysis on the executable tasks of the computing mainboard to obtain an executable task set of the computing mainboard; S22: analyzing the task computing requirements of each executable task in the executable task set to obtain the task computing requirements corresponding to each executable task; S23: combining the task computing requirements of each executable task to obtain a computing requirement set corresponding to the executable task set.
[0051] Specifically, predictive analysis is performed on the computing motherboard to identify and determine the set of tasks that may be executed on the motherboard in the future. The tasks that may be executed can be identified and predicted through historical data analysis, machine learning model prediction, task scheduling strategies and other methods to obtain a set of all tasks that may be executed, called the "executable task set."
[0052] More specifically, each task in the set of executable tasks is analyzed separately to clarify its specific computing requirements. Based on the task code and configuration file, its computing requirements (such as CPU, memory, storage, etc.) are analyzed. By simulating or actually running tasks, monitoring and counting resource usage, a task computing requirement description is generated for each task, including the required computing resources and their quantity.
[0053] More specifically, the computing requirements of all tasks are summarized and combined to obtain the comprehensive computing requirements of the entire set of executable tasks. According to the computing requirements of each task, appropriate algorithms or strategies (such as superposition, parallel computing requirements analysis, etc.) are used to combine them. A comprehensive computing requirement set represents the total computing resources required by the computing motherboard when executing these tasks.
[0054] It is understandable that by predicting and analyzing the task requirements on the computing motherboard in advance, resource planning can be effectively carried out to avoid waste or shortage of resources. Understanding the specific computing requirements of the task can help the scheduling system better allocate resources, ensure that key tasks are given priority, improve overall system performance, reduce bottlenecks in the task execution process, and improve task execution efficiency. Through comprehensive computing demand analysis, possible resource conflicts and bottlenecks can be identified in advance, and preventive measures can be taken to improve the reliability and stability of the system.
[0055] Preferably, the step of analyzing the task computing requirements of each executable task in the executable task set to obtain the task computing requirements corresponding to each executable task includes: S221: Analyze the computational load and memory requirements of the executable task to obtain the performance resource requirements of the executable task; S222: Analyze the computational parallelism and delay sensitivity of the executable task to obtain the execution standard requirement of the executable task; S223: Analyze the data transmission dependency of the executable task to obtain the transmission performance requirement of the executable task; S224: Combine the performance resource requirement, execution standard requirement, and transmission performance requirement of the executable task to obtain the task computing requirement of the executable task.
[0056] Specifically, determine the computing resources and memory resources required for each task, estimate its computing amount and memory requirements by analyzing the task's code structure, algorithm complexity, memory allocation, etc., monitor the actual CPU usage and memory occupancy by running task instances, obtain more accurate data, and generate the performance resource requirements for each task, including CPU cycles, memory size, etc.
[0057] More specifically, evaluate the parallel execution capability and sensitivity to delay of each task, analyze whether the task has the potential for parallel execution, such as multi-threading, multi-process or distributed computing, evaluate its parallelism, determine its sensitivity to execution delay by analyzing the performance of the task under different delay conditions, and generate the execution standard requirements for each task, including parallelism and delay sensitivity.
[0058] More specifically, analyze the dependence of each task on data transmission during execution, determine the amount of data, data source and data transmission path that the task needs to access, evaluate the bandwidth requirements, transmission delay and data integrity requirements of data transmission, and generate the transmission performance requirements of each task, including data transmission bandwidth, transmission delay, etc.
[0059] More specifically, the above three requirements are integrated to form the overall computing requirements of each task, integrating performance resource requirements, execution standard requirements and transmission performance requirements, considering the relationship and comprehensive impact of each requirement, forming a complete task computing requirement description, and obtaining a set of complete computing requirements for each task, including detailed descriptions of computing resources, parallelism, delay sensitivity and transmission performance.
[0060] It can be understood that by decomposing and analyzing various aspects of the task in detail, a comprehensive description of computing requirements is formed, the accuracy and effectiveness of resource allocation are ensured, the computing amount, memory requirements, parallelism, delay sensitivity and data transmission requirements of the task are accurately understood, and the system is supported to perform more accurate resource allocation and scheduling to avoid waste or shortage of resources.
[0061] Preferably, the step of performing a performance scheduling simulation analysis on the computing requirement set according to the motherboard computing performance model by using an optimization algorithm to obtain a task allocation plan corresponding to the computing requirement set by the motherboard computing performance model includes: S31: defining a performance scheduling simulation target for the motherboard computing performance model; wherein the performance scheduling simulation target includes execution time efficiency, resource utilization efficiency and computing energy efficiency; S32: using the performance scheduling simulation target as an optimization constraint of the optimization algorithm, and simulating the performance scheduling scheme for each task computing requirement in the computing requirement set according to the motherboard computing performance model through the optimization algorithm with the optimization constraint, so as to obtain a task allocation plan corresponding to each task computing requirement of the motherboard computing performance model; wherein the optimization algorithm includes a genetic algorithm, an ant colony algorithm and a particle swarm algorithm; S33: The task allocation plans corresponding to the task computing requirements of the motherboard computing performance model together constitute the task allocation plan corresponding to the computing requirement set of the motherboard computing performance model.
[0062] Specifically, the goals of the performance scheduling simulation are clearly defined. These goals will serve as optimization constraints for the optimization algorithm. The goals include: execution time efficiency: minimize the total execution time of the task and increase the speed of task completion; resource utilization efficiency: maximize the utilization of computing resources on the motherboard (such as CPU, memory, I / O) to avoid resource waste; computing energy efficiency: minimize energy consumption during the computing process and improve the energy efficiency ratio of the system.
[0063] More specifically, a suitable optimization algorithm is selected, and the performance scheduling simulation target is applied as a constraint to the optimization algorithm. The algorithm selection includes: Genetic algorithm: simulates natural selection and genetic mechanism, suitable for complex multi-peak optimization problems, Ant colony algorithm: imitates the foraging behavior of ants, suitable for solving path optimization problems, especially for finding the optimal path in multi-task scheduling, Particle swarm algorithm: simulates the foraging behavior of bird flocks, suitable for continuous space optimization, and has fast convergence characteristics.
[0064] More specifically, execution time, resource utilization, and energy efficiency are taken as objective functions and constraints of the optimization algorithm.
[0065] More specifically, the optimization algorithm is used to simulate the performance scheduling of each task in the motherboard computing performance model and the computing requirement set, and a task allocation plan is generated. The parameters and initial solution of the optimization algorithm are initialized according to the motherboard computing performance model and the task requirement set. In each iteration, the task allocation plan is adjusted according to the optimization constraints, and the execution time, resource utilization and energy efficiency are gradually optimized. The completion of the optimization is judged according to the preset convergence conditions (such as a fixed number of iterations, the range of change of the objective function), and the specific allocation plan for each task on the motherboard is generated to form a task allocation plan.
[0066] More specifically, the allocation plans of each task are combined to form a complete task allocation plan for the computing performance model corresponding to the computing demand set. The allocation plans of each task are integrated to form an overall task scheduling plan to ensure that all tasks are optimally allocated while meeting the constraints. The final task allocation plan includes the detailed allocation of all tasks.
[0067] It is understandable that through the application of optimization algorithms, the optimal task allocation solution can be found under multi-objective constraints, thereby improving task execution speed and overall system performance. The optimization algorithm can effectively allocate computing resources on the motherboard, maximize resource utilization, and avoid resource idleness or overload due to improper resource allocation. By optimizing energy efficiency, the system's power consumption is reduced and the energy efficiency ratio is improved. It is suitable for energy-sensitive application scenarios such as mobile devices and green computing.
[0068] Preferably, the performance scheduling simulation target is used as an optimization constraint of the optimization algorithm, and the steps of simulating the performance scheduling scheme for each task computing requirement in the computing requirement set according to the motherboard computing performance model by using the optimization algorithm with the optimization constraint to obtain the task allocation plan corresponding to each task computing requirement of the motherboard computing performance model include: S321: generating an initialization scheme for the motherboard computing performance model by using a selected optimization algorithm to obtain several initial scheduling schemes of the motherboard computing performance model corresponding to the task computing requirements; S322: performing scheme evaluation on each initial scheduling scheme according to the performance scheduling simulation target to obtain scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target; S323: Based on the scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target, the optimization algorithm is subjected to constraint processing of the optimization direction to obtain an execution framework of the optimization algorithm; S324: Optimizing the initial scheduling scheme of the mainboard computing performance model through the execution framework of the optimization algorithm to obtain a plurality of optimized scheduling schemes; S325: Evaluate each optimization scheduling scheme according to preset standards. If there is no optimization scheduling scheme that meets the preset standards, use each optimization scheduling scheme as an initial scheduling scheme, and return to the step of evaluating each initial scheduling scheme according to the performance scheduling simulation target to obtain the scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target. If there is an optimization scheduling scheme that meets the preset standards, use the optimization scheduling scheme as the task allocation plan corresponding to the task computing requirements of the mainboard computing performance model.
[0069] Specifically, an optimization algorithm (such as genetic algorithm, ant colony algorithm, particle swarm algorithm, etc.) is selected and initialized, and several initial scheduling schemes are generated randomly or based on heuristic rules according to the motherboard computing performance model and computing demand set.
[0070] More specifically, we determine the evaluation indicators (such as execution time, resource utilization, and energy consumption), evaluate each initial scheduling plan, calculate its performance on each evaluation indicator, form the plan evaluation characteristics, and determine the optimization direction based on the evaluation characteristics (such as the need to reduce execution time and improve resource utilization). We then adjust the parameters and operations of the optimization algorithm to search and optimize in the optimization direction.
[0071] More specifically, within the execution framework of the optimization algorithm, the initial scheduling scheme is iteratively optimized to generate a new scheduling scheme, generate several optimized scheduling schemes, evaluate each optimized scheduling scheme according to preset standards, determine preset evaluation standards (such as reaching a threshold of a certain performance indicator), and evaluate whether the optimized scheduling scheme meets the preset standards.
[0072] More specifically, if there is no optimized scheduling plan that meets the preset standards, each optimized scheduling plan will be used as the initial scheduling plan and return to the initial scheduling plan evaluation step; if there is an optimized scheduling plan that meets the preset standards, the optimized scheduling plan will be used as the task allocation plan corresponding to the task computing requirements of the mainboard computing performance model.
[0073] It is understandable that through multiple iterations and evaluations of the optimization algorithm, it is possible to gradually converge to the optimal or suboptimal task allocation plan, improve scheduling efficiency and accuracy, and in the evaluation and optimization process, fully consider resource utilization to avoid resource waste and improve the resource utilization efficiency of the system. Through energy consumption evaluation and optimization, the overall energy consumption of the system can be effectively reduced and the energy efficiency ratio can be improved. It is especially suitable for application scenarios that require energy saving. Through the flexibility of the optimization algorithm, it can adapt to various complex task requirements and computing environments to form a task allocation plan that meets multi-objective constraints.
[0074] Preferably, the steps of obtaining the currently executed task of the computing mainboard, matching and identifying the currently executed task according to the executable task set, and generating the task execution feature of the currently executed task according to the matching and identification result include: S41: performing identification authentication on the current execution task of the computing mainboard through the process monitoring system of the computing mainboard to obtain the current execution task of the computing mainboard; S42: matching and identifying the currently executed task according to the executable task set to obtain an identification matching degree between the currently executed task and each executable task in the executable task set; S43: If the recognition matching degree between the currently executed task and a certain executable task in the executable task set meets the preset standard, the executable task whose recognition matching degree meets the preset standard is used as the recognition object of the currently executed task, and the task execution feature of the currently executed task is generated according to the recognition object; S44: If the recognition matching degree between the currently executed task and any executable task in the executable task set does not meet the preset standard, a threshold evaluation applicable to summarization is performed on the recognition matching degree between the currently executed task and each executable task in the executable task set to obtain a number of recognition matching degrees that meet the threshold evaluation; S45: Marking the executable tasks corresponding to the plurality of recognition matching degrees that meet the threshold evaluation as summary objects, summarizing the recognition matching degrees corresponding to the respective summary objects, so as to obtain the task execution characteristics of the currently executed task.
[0075] Specifically, all the tasks being executed are identified and authenticated using the process monitoring system on the computing motherboard. This step ensures that all the currently executing tasks are obtained and a unique identifier is assigned to each task.
[0076] More specifically, the currently executed task after identification authentication is matched with a predefined set of executable tasks, and the recognition matching degree between the currently executed task and each executable task is calculated.
[0077] It should be noted that the task computing requirements of each executable task in the executable task set include shallow demand characteristics and deep demand characteristics, among which the deep demand characteristics are used to analyze the corresponding optimal task allocation plan for the executable tasks. When identifying and matching the currently executed task, there is no need to identify and match the deep demand characteristics, but directly identify the shallow requirements of the currently executed task and match them with the executable task set. In other words, the matching of the currently executed task with the executable task set is based on identifying the obvious features of the currently executed task and matching them with the corresponding parts in the executable task set. These features include computing power, memory requirements, etc.
[0078] More specifically, if the matching degree of a task reaches or exceeds the preset standard, the task is marked as the identification object of the currently executed task, and the task execution feature is generated based on this identification object. If the matching degree of no task reaches the preset standard, the next step is entered.
[0079] More specifically, a threshold evaluation is performed on the matching degrees that do not meet the preset standards, and several matching degrees that meet the threshold are selected. These tasks that meet the threshold evaluation are marked as summary objects, and the recognition matching degrees corresponding to these summary objects are summarized and summarized to extract the characteristics of the currently executed task.
[0080] It can be understood that through the process monitoring system and the matching identification process, the currently executed tasks can be accurately identified to avoid missed detections or false detections. Through matching evaluation and threshold evaluation, the system can dynamically adapt to changes in different tasks and improve the flexibility and reliability of identification. The generated task execution features can better describe the behavior and properties of the currently executed tasks, and provide support for subsequent task management and optimization. The threshold evaluation and induction and summary processes can effectively deal with situations where the recognition degree is not high. By summarizing and summarizing, key features can be extracted to improve the overall efficiency of the system. Through accurate identification and feature extraction, the system can better manage and schedule tasks, optimize resource usage, and improve the overall performance of the computing motherboard.
[0081] Preferably, the step of summarizing the recognition matching degrees corresponding to the summarized objects to obtain the task execution characteristics of the currently executed task includes: S451: performing execution deviation conversion processing on the recognition matching degree of each summarized object to obtain execution deviation features between each summarized object and the currently executed task, and performing execution mode analysis on the execution deviation features to obtain the execution mode corresponding to the execution deviation features; S452: Retrieving the execution mode corresponding to the task computing requirement of each of the summarized objects, and performing similarity evaluation of the execution modes on the task computing requirement and the execution deviation feature, so as to obtain the task computing requirement and the execution deviation feature of the execution mode with the highest similarity; S453: taking the task calculation requirement as a benchmark execution feature, and combining the benchmark execution feature with the execution deviation feature to obtain the task execution feature of the currently executed task.
[0082] Specifically, the recognition matching degree of each summarized object is transformed, and the execution deviation features between each summarized object and the current execution task are calculated. These execution deviation features represent the differences between the summarized object and the current execution task.
[0083] More specifically, the execution deviation characteristics are analyzed to identify corresponding execution patterns, which reflect the behaviors and trends of the execution deviation characteristics. The execution patterns corresponding to the task computing requirements of each summarized object are retrieved, and the similarity between these execution patterns and the execution deviation characteristics of the currently executed task is evaluated. Through the similarity evaluation, the execution pattern that is most similar to the execution deviation characteristics is found.
[0084] More specifically, the task computation requirement of the execution mode with the highest similarity is used as the baseline execution feature, and the baseline execution feature is combined with the execution deviation feature of the currently executed task to finally generate the task execution feature of the currently executed task.
[0085] It can be understood that by executing deviation conversion and pattern analysis, the characteristics of the currently executed task can be accurately extracted. Even when the initial matching degree is not high, accurate feature description can be obtained through induction and analysis. The system can dynamically adjust according to the execution deviation and pattern, improve the adaptability to different tasks, enhance the flexibility and responsiveness of the system, and accurate task execution characteristics help optimize resource allocation and task scheduling, improve the overall performance and efficiency of the system. Through similarity evaluation and pattern combination, even when the initial recognition is not ideal, the recognition accuracy can be improved through further analysis and combination. The system enhances the robustness to various tasks through multi-step processing and analysis, and can maintain efficient and accurate recognition and feature extraction even in the face of complex and dynamically changing task environments.
[0086] Preferably, the steps of performing task allocation on the task execution characteristics according to the task allocation plan to obtain the task allocation mode of the currently executed task, and scheduling computing resources on the computing mainboard according to the task allocation mode to perform task allocation processing on the currently executed task include: S51: Analyze the task execution feature to obtain a mapping relationship between the task execution feature and each executable task in the executable task set corresponding to the task allocation plan; S52: Selecting a specific plan for the task allocation plan according to the mapping relationship, and performing task allocation processing for resource scheduling through the specifically selected plan, thereby obtaining a task allocation mode for the currently executed task; S53: Scheduling computing resources of the computing mainboard according to the task allocation mode to perform task allocation processing on the currently executed task.
[0087] Specifically, the task execution characteristics are analyzed in detail to determine the mapping relationship between the task execution characteristics and the set of executable tasks in the task allocation plan. This mapping relationship determines the association between each task execution characteristic and the specific task in the plan.
[0088] More specifically, based on the mapping relationship, a specific selection is made for the task allocation plan, and the plan that best suits the current task execution characteristics is selected to ensure the optimal solution for resource scheduling and task allocation, and the task allocation processing for resource scheduling is performed using the specifically selected plan.
[0089] More specifically, computing resources are scheduled on the computing mainboard according to the generated task allocation pattern to ensure that computing resources are allocated and managed according to the task allocation pattern to meet the needs of the current execution task.
[0090] It can be understood that by analyzing the task execution characteristics and mapping them with the task allocation plan, we can ensure the maximization and optimization of resource utilization. The accurate task allocation model ensures that the task can be executed on the most appropriate resources, reducing the execution time and improving the efficiency of task completion. Through detailed analysis and precise mapping relationships, the deviation in the task execution process can be reduced, and the accuracy and reliability of task execution can be improved. By optimizing resource scheduling and task allocation, the system can handle high-load and complex task environments more stably.
[0091] In a second aspect, the present invention provides a task allocation optimization device for a multi-core heterogeneous ASIC computing motherboard, which is used to implement a task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard as described in any one of the first aspects.
[0092] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.
Claims
1. A task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard, characterized in that: include: Acquiring computing core setting information of a computing mainboard, and performing digital feedback processing of the computing core on the computing mainboard according to the computing core setting information, so as to obtain a mainboard computing performance model; Obtaining an executable task set of the computing mainboard, and analyzing task computing requirements of each executable task in the executable task set to obtain a computing requirement set corresponding to the executable task set; Performing a performance scheduling simulation analysis on the computing demand set according to the motherboard computing performance model through an optimization algorithm to obtain a task allocation plan corresponding to the computing demand set by the motherboard computing performance model; Acquire the currently executed task of the computing mainboard, match and identify the currently executed task according to the executable task set, and generate a task execution feature of the currently executed task according to the result of the matching and identification; The task execution characteristics are assigned tasks according to the task assignment plan to obtain the task assignment mode of the currently executed task, and the computing resources of the computing mainboard are scheduled according to the task assignment mode to perform task assignment processing on the currently executed task.
2. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 1, characterized in that: The steps of obtaining the computing core setting information of the computing mainboard and performing digital feedback processing of the computing core on the computing mainboard according to the computing core setting information to obtain the mainboard computing performance model include: Obtaining computing core setting information of a computing mainboard; wherein the computing core setting information includes performance indicators of a plurality of computing cores set on the computing mainboard, and a layout association relationship between the computing cores; According to the performance index of each computing core in the computing core setting information, digital simulation is performed on each computing core on the computing mainboard to obtain a unit performance model corresponding to each computing core; According to the layout association relationship of each computing core in the computing core setting information, performing resource parallel scheduling analysis on each computing core on the computing mainboard to obtain parallel working characteristics corresponding to each unit performance model; The performance models of the various units are associated and combined according to the parallel working characteristics to obtain a mainboard computing performance model.
3. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 1, characterized in that: The steps of obtaining the executable task set of the computing mainboard and analyzing the task computing requirements of each executable task in the executable task set to obtain the computing requirement set corresponding to the executable task set include: Performing a predictive analysis on the executable tasks of the computing mainboard to obtain an executable task set of the computing mainboard; Analyzing the task computing requirements of each executable task in the executable task set to obtain the task computing requirements corresponding to each executable task; The task computing requirements of each executable task are combined to obtain a computing requirement set corresponding to the executable task set.
4. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 3, characterized in that: The steps of analyzing the task computing requirements of each executable task in the executable task set to obtain the task computing requirements corresponding to each executable task include: Analyzing the computational load and memory requirements of the executable task to obtain the performance resource requirements of the executable task; Analyzing the computational parallelism and delay sensitivity of the executable task to obtain the execution standard requirements of the executable task; Analyzing the data transmission dependency of the executable task to obtain the transmission performance requirement of the executable task; The performance resource requirement, execution standard requirement and transmission performance requirement of the executable task are combined to obtain the task computing requirement of the executable task.
5. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 1, characterized in that: The step of performing a performance scheduling simulation analysis on the computing requirement set according to the motherboard computing performance model by using an optimization algorithm to obtain a task allocation plan corresponding to the computing requirement set by the motherboard computing performance model includes: Defining a performance scheduling simulation target for the motherboard computing performance model; wherein the performance scheduling simulation target includes execution time efficiency, resource utilization efficiency and computing energy efficiency; The performance scheduling simulation target is used as an optimization constraint of the optimization algorithm, and the performance scheduling scheme simulation is performed on each task computing requirement in the computing requirement set according to the motherboard computing performance model through the optimization algorithm with the optimization constraint, so as to obtain a task allocation plan corresponding to each task computing requirement of the motherboard computing performance model; wherein the optimization algorithm includes a genetic algorithm, an ant colony algorithm and a particle swarm algorithm; The task allocation plans corresponding to the computing requirements of each task in the mainboard computing performance model together constitute the task allocation plan corresponding to the computing requirement set in the mainboard computing performance model.
6. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 5, characterized in that: The steps of using the performance scheduling simulation target as an optimization constraint of the optimization algorithm, and simulating the performance scheduling scheme for each task computing requirement in the computing requirement set according to the motherboard computing performance model through the optimization algorithm with the optimization constraint to obtain a task allocation plan corresponding to each task computing requirement of the motherboard computing performance model include: Generating an initialization scheme for the motherboard computing performance model through a selected optimization algorithm to obtain several initial scheduling schemes of the motherboard computing performance model corresponding to the task computing requirements; Performing scheme evaluation on each initial scheduling scheme according to the performance scheduling simulation target to obtain scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target; Based on the scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target, the optimization algorithm is subjected to constraint processing of the optimization direction to obtain an execution framework of the optimization algorithm; Optimizing the initial scheduling scheme of the motherboard computing performance model through the execution framework of the optimization algorithm to obtain several optimized scheduling schemes; Each optimization scheduling scheme is evaluated according to a preset standard. If there is no optimization scheduling scheme that meets the preset standard, each optimization scheduling scheme is used as an initial scheduling scheme, and the process returns to the step of evaluating each initial scheduling scheme according to the performance scheduling simulation target to obtain the scheme evaluation characteristics of each initial scheduling scheme corresponding to the performance scheduling simulation target. If there is an optimization scheduling scheme that meets the preset standard, the optimization scheduling scheme is used as a task allocation plan corresponding to the task computing requirements of the mainboard computing performance model.
7. The task allocation optimization method for a multi-core heterogeneous ASIC computing motherboard according to claim 1, characterized in that: The steps of obtaining the currently executed task of the computing mainboard, matching and identifying the currently executed task according to the executable task set, and generating the task execution feature of the currently executed task according to the matching and identification result include: The process monitoring system of the computing mainboard identifies and authenticates the current execution task of the computing mainboard to obtain the current execution task of the computing mainboard; Matching and identifying the currently executed task according to the executable task set to obtain an identification matching degree between the currently executed task and each executable task in the executable task set; If the recognition matching degree between the currently executed task and a certain executable task in the executable task set meets the preset standard, the executable task whose recognition matching degree meets the preset standard is used as the recognition object of the currently executed task, and the task execution feature of the currently executed task is generated according to the recognition object; If the recognition matching degree between the currently executed task and any executable task in the executable task set does not meet the preset standard, a threshold evaluation applicable to summarization and conclusion is performed on the recognition matching degree between the currently executed task and each executable task in the executable task set to obtain a number of recognition matching degrees that meet the threshold evaluation; The executable tasks corresponding to the plurality of recognition matching degrees that meet the threshold evaluation are marked as summary objects, and the recognition matching degrees corresponding to the summary objects are summarized to obtain the task execution characteristics of the currently executed task.
8. The method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard according to claim 7, characterized in that: The step of summarizing the recognition matching degrees corresponding to the summarized objects to obtain the task execution characteristics of the currently executed task includes: Performing execution deviation conversion processing on the recognition matching degree of each summarized object to obtain execution deviation characteristics between each summarized object and the currently executed task, and performing execution mode analysis on the execution deviation characteristics to obtain the execution mode corresponding to the execution deviation characteristics; Retrieving the execution mode corresponding to the task computing requirement of each of the summarized objects, and performing similarity evaluation of the execution modes on the task computing requirement and the execution deviation feature, so as to obtain the task computing requirement and the execution deviation feature of the execution mode with the highest similarity; The task computing requirement is used as a benchmark execution feature, and the benchmark execution feature is combined with the execution deviation feature to obtain the task execution feature of the currently executed task.
9. The method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard according to claim 1, characterized in that: The steps of performing task allocation on the task execution characteristics according to the task allocation plan to obtain the task allocation mode of the currently executed task, and scheduling computing resources on the computing mainboard according to the task allocation mode to perform task allocation processing on the currently executed task include: Analyzing the task execution characteristics to obtain a mapping relationship between the task execution characteristics and each executable task in the executable task set corresponding to the task allocation plan; A specific plan is selected for the task allocation plan according to the mapping relationship, and task allocation processing for resource scheduling is performed through the specifically selected plan, so as to obtain a task allocation mode for the currently executed task; The computing resources of the computing mainboard are scheduled according to the task allocation mode to perform task allocation processing on the currently executed task.
10. A task allocation optimization device for a multi-core heterogeneous ASIC computing motherboard, characterized in that: A method for optimizing task allocation of a multi-core heterogeneous ASIC computing motherboard for implementing any one of claims 1-9.
Citation Information
Cited By
Hybrid deployment method for heterogeneous multi-core chip application program
CN119883650A
Task allocation and scheduling system and method based on task allocation and scheduling system
CN120234125A
A task allocation and scheduling system and a method based on the task allocation and scheduling system
CN120234125B
Data processing method and device, equipment, medium and program product
CN120353602A
Data processing method, device, equipment, medium and program product
CN120353602B