Multi-intelligent application-oriented fine-grained computing task division and scheduling method
Through fine-grained computing task division and scheduling methods for multi-intelligent applications, the problems of resource competition and task delay in multiple intelligent applications in limited resource environments are solved, and more efficient resource utilization and flight efficiency improvement are achieved.
Patent Information
- Application Number
- CN202411956972.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-29
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2044-12-29
AI Technical Summary
In modern civil aircraft, resource competition among multiple intelligent applications and mission execution delays lead to reduced flight efficiency, especially in airborne environments with insufficient computing power and limited storage space.
A fine-grained computing task division and scheduling method for multi-intelligent applications is adopted to optimize resource utilization and reduce task delay by defining the five-tuple attributes of the intelligent application (category, priority, latest completion time, required computing power and required parameter quantity) and dividing them into five categories of subtasks (data preparation, model preparation, hardware resource preparation, inference and result post-processing).
Through fine-grained task division and intelligent application scheduling algorithm, resource utilization in the airborne environment is optimized, the overall execution time delay of multiple intelligent applications is reduced, and the flight efficiency is improved.
Smart Images

Figure CN119883625A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of intelligent computing, and in particular relates to a method for dividing and scheduling fine-grained computing tasks for multiple intelligent applications. Background Art
[0002] In the field of modern aviation, the application of intelligent technology is increasingly becoming a key factor in improving flight safety, efficiency and reliability. The flight missions of civil aircraft are becoming increasingly complex, and the requirements for flight safety and efficiency are becoming higher and higher. In order to meet these challenges, modern civil aircraft have begun to integrate a variety of intelligent applications to cope with complex and changing environments. These intelligent applications cover radar signal processing, target detection, photoelectric detection, decision-making tasks, etc. Target detection, photoelectric detection tasks and decision-making tasks are typical applications. The coordinated execution of these tasks significantly improves the flight time of the aircraft, but it also brings challenges such as limited resources and high task execution latency in the airborne environment. Figure 1 This is a schematic diagram of the collaboration of multiple intelligent applications when a traditional aircraft performs a flight mission.
[0003] Due to the limited resources of the aircraft's onboard environment, the computing power and storage space of the processor are greatly restricted, and the resource competition between multiple intelligent applications has increased the complexity of task execution. Among these applications, target detection requires a large amount of image processing and analysis computing resources, photoelectric detection requires real-time fusion of multimodal data, and decision-making tasks require rapid response to changes in the enemy and friendly situation. Then, due to the limited resources of the onboard environment, there are problems such as insufficient computing power and limited storage space. Each task has strict requirements on computing resources and real-time performance, and competes with each other in the limited onboard resources, resulting in a significant increase in task delays and affecting flight efficiency. Summary of the invention
[0004] In view of this, the method for fine-grained computing task division and scheduling for multi-intelligent applications of the present invention solves the technical problem of reducing flight efficiency in existing multi-intelligent application systems.
[0005] A method for dividing and scheduling fine-grained computing tasks for multi-intelligent applications, a method for dividing and scheduling fine-grained computing tasks for multi-intelligent applications, the method comprising:
[0006] S1: Define the five-tuple attributes of intelligent applications according to the actual operation of intelligent applications to plan the task execution sequence or scheduling sequence, and adopt the intelligent application scheduling sequence generation algorithm to improve the coordination of multiple intelligent applications during flight. The five-tuple attributes adjust the intelligent application scheduling sequence by priority, required computing power and latest completion time;
[0007] S2: Divide each intelligent application into five subtasks, including data preparation, model preparation, hardware resource preparation, reasoning, and result post-processing. Fine-grained division into five subtasks can improve the utilization rate of environmental resources during the collaborative execution of multiple intelligent applications.
[0008] S3: Determine the five-tuple attributes of each subtask, and calculate the subtask sequence that can remain in the running state in the terminated intelligent application according to the remaining resources of the airborne computing environment, so as to reduce the overall execution time delay of the airborne multi-intelligent application under the actual execution time constraint of the task.
[0009] Furthermore, if the intelligent application needs to perform an intelligent task that runs continuously throughout the entire flight phase of the aircraft, such as a target recognition task in the aircraft, and there is no clear requirement for the start time and the required completion time, then the intelligent application is defined as a continuous intelligent application;
[0010] Furthermore, if the intelligent application performs tasks in a specified period during the entire phase or a certain phase of the aircraft flight, such as photoelectric detection during the flight phase, large-scale optical target detection, and other tasks, and has a clear required start time, then the intelligent application is defined as a periodic intelligent application;
[0011] Furthermore, if the smart application is a task that is triggered after a specified condition is met at a certain moment in the flight of the aircraft, such as a decision-making task in the aircraft, which has a clearly required start time, start condition and completion time, then the smart application is defined as a passively triggered smart application.
[0012] Using Quintuples<category,priority,LDT,flops,params> Define the properties of the intelligent application and its subtasks, including: category, priority, latest time for application completion, computing power required for the application, and parameters required for the application:
[0013] Furthermore, the category describes the running characteristics of the intelligent application and its subtasks, including: continuous, periodic, and passive trigger; further, the priority determines the scheduling order and resource allocation of tasks in a resource-constrained environment to ensure that key tasks are executed first. Each intelligent application sets a priority based on the importance and real-time requirements of its task;
[0014] Furthermore, the latest due time (LDT) means that the intelligent application and its subtasks must be completed within a specific time. If the latest due time is exceeded, the task will fail.
[0015] Furthermore, the required computing power flops refers to the computing resources required by intelligent applications during execution, including processor performance, etc. This attribute is used to reasonably allocate computing resources during task scheduling to avoid task failures due to insufficient computing resources;
[0016] Furthermore, the required parameter quantity params describes the number of input parameters that the intelligent application needs to process during execution. The parameter quantity is directly related to the complexity of task execution and the required computational overhead. Based on the above task attribute definition, a scheduling strategy is designed when conflicts occur between intelligent applications and their subtasks: Furthermore, multiple continuous tasks, periodic tasks, and a certain amount of triggered tasks are preset on the aircraft according to different aircraft models and tasks, and at least one set of backup is reserved to avoid unexpected situations.
[0017] Furthermore, when task conflicts occur due to resource contention and latency issues, it is necessary to determine a reasonable task scheduling strategy, input the attribute information of all tasks that currently need to be executed, and compare them step by step;
[0018] Furthermore, by comparing the priorities of tasks, the higher the priority, the earlier they are processed, and the more stable their operation must be ensured during scheduling;
[0019] Furthermore, when a triggered task is started and multiple types of tasks need to be run simultaneously, the application priority, the latest time for application completion, the computing power required by the application, the number of parameters required by the application, and the application type are considered in order to merge and rearrange the application processes to ensure that all applications are calculated simultaneously within the time range that the application can tolerate;
[0020] Furthermore, when a triggered task is started, resulting in insufficient computing power / insufficient time, priority is given to stopping some processes of the continuous application to schedule sufficient computing power to support the triggered task; but when the priority of the periodic task is higher than that of the continuous task, some subtasks of the continuous application need to be stopped.
[0021] The technical beneficial effects of the present invention are:
[0022] According to the difference in the state of intelligent applications when executing tasks, they are divided into three categories: continuous intelligent applications, periodic intelligent applications, and passively triggered intelligent applications. Each type of intelligent application and its subtasks define five attributes including: category, priority, latest time for application completion, computing power required for application, and parameter quantity required for application, and express them as five-tuples. All currently scheduled intelligent applications and their attributes are input into the intelligent application scheduling sequence generation algorithm to calculate the intelligent application scheduling sequence. The interrupted intelligent applications are divided into five types of subtasks, including: data preparation, model preparation, hardware resource preparation, reasoning, and result post-processing. According to the principle of subtask attribute inheritance, the attribute five-tuple of each subtask is determined. All interrupted intelligent application subtasks are input into the subtask scheduling sequence generation algorithm to calculate the subtask application scheduling sequence, and the subtask scheduling sequence is added to the application scheduling sequence. Through task division and subtask scheduling methods, the problems of low resource utilization and high multi-task execution delay in the airborne environment are optimized. The collaborative operation process of multiple intelligent applications is optimized based on the intelligent application scheduling algorithm and the subtask scheduling algorithm. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0024] Figure 1 This is a schematic diagram of the collaboration of multiple intelligent applications when a traditional aircraft performs a flight mission;
[0025] Figure 2 This is a schematic diagram of a scenario for multi-intelligent application collaboration provided by an embodiment of the present invention;
[0026] Figure 3 It is a schematic diagram of a target detection intelligent application splitting model provided by an embodiment of the present invention;
[0027] Figure 4 It is a schematic diagram of a photoelectric detection intelligent application splitting model provided by an embodiment of the present invention;
[0028] Figure 5 is a schematic diagram of a decision-making task splitting model provided by an embodiment of the present invention;
[0029] Figure 6 It is a flow chart of an algorithm for generating a smart application task scheduling sequence provided by an embodiment of the present invention;
[0030] Figure 7 It is a flow chart of an algorithm for generating a scheduling sequence of intelligent application subtasks provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0031] The embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.
[0032] The following is an explanation of the embodiments of the present disclosure by specific specific examples, and those skilled in the art can easily understand other advantages and effects of the present disclosure from the contents disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, not all of the embodiments. The present disclosure can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways without departing from the spirit of the present disclosure based on different viewpoints and applications. It should be noted that the following embodiments and the features in the embodiments can be combined with each other without conflict. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present disclosure. It should be noted that various aspects of the embodiments within the scope of the attached claims are described below. It should be obvious that the aspects described herein can be embodied in a wide variety of forms, and any specific structure and / or function described herein is only illustrative. Based on the present disclosure, those skilled in the art should understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects described herein can be used to implement the device and / or practice method. In addition, such an apparatus may be implemented and / or such a method may be practiced using other structure and / or functionality in addition to or in addition to one or more of the aspects set forth herein.
[0033] Task division and task scheduling are the key to solving the challenges faced by the collaborative execution of multiple intelligent applications. In order to ensure the efficient execution of various tasks, it is necessary to divide the tasks reasonably, decompose complex large tasks into multiple subtasks, and reasonably schedule tasks according to the importance of the tasks, real-time requirements, and resource usage. Task scheduling needs to take into account the priorities between multiple intelligent applications and the dynamic scheduling of resources to avoid task delays caused by improper resource allocation. Especially in decision-making tasks with high real-time requirements, the efficiency of task scheduling is directly related to the success of tactical execution.
[0034] The computing task division and subtask scheduling optimization methods for multi-intelligent application scenarios mainly face three challenges: First, when multiple intelligent applications need to be run and there is a shortage of computing resources and storage resources, how to select the suspended intelligent applications and find the most reasonable intelligent application scheduling sequence based on the importance of the task, real-time requirements and resource usage. Second, it is necessary to consider the priority between multiple intelligent applications and the dynamic scheduling of resources to avoid task delays caused by improper task scheduling. Third, how to make full use of the current remaining computing resources and storage resources to determine the subtask sequence that can still be executed in the suspended intelligent application. Figures 2 to 7 The method for fine-grained computing task division and scheduling for multiple intelligent applications shown in the figure mainly faces three challenges: First, when multiple intelligent applications need to be run and there is a shortage of computing resources and storage resources, how to select the suspended intelligent applications and find the most reasonable intelligent application scheduling sequence according to the importance of the task, real-time requirements and resource usage; second, it is necessary to consider the priority between multiple intelligent applications and the dynamic scheduling of resources to avoid task delays caused by improper task scheduling; third, how to make full use of the current remaining computing resources and storage resources to determine the subtask sequence that can still be executed in the suspended intelligent application. The method includes: S1: defining according to the actual operation of the intelligent application The five-tuple attribute of intelligent application is used to plan the task execution sequence or scheduling sequence (the five-tuple attribute is manually defined according to the design requirements or flight mission to plan the task execution sequence or scheduling sequence). The intelligent application scheduling sequence generation algorithm is used to improve the coordination of multiple intelligent applications (such as multiple deep learning network models) during flight. The five-tuple attribute adjusts the intelligent application scheduling sequence by priority, required computing power and latest completion time; S2: Each intelligent application is divided into five subtasks, including data preparation, model preparation, hardware resource preparation, reasoning and result post-processing. The fine-grained division into five subtasks can improve the utilization rate of environmental resources during the collaborative execution of multiple intelligent applications;
[0035] S3: Determine the five-tuple attributes of each subtask, and according to the remaining resources of the airborne computing environment, calculate the subtask sequence that can remain in the running state in the terminated intelligent application, so as to reduce the overall execution time delay of the airborne multi-intelligent application under the actual execution time constraint of the task.
[0036] As a specific implementation method provided in this case, in S1, the five-tuple attributes of the smart application are defined according to the actual operation of the smart application, including:
[0037] The five-tuple attributes include the category of intelligent application, priority of intelligent application, latest completion time LDT of intelligent application, flops of computing power required by intelligent application, and params of parameters required by intelligent application. The five-tuple attributes are the attributes of the intelligent application itself.
[0038] Determine the computing resource parameters in the current environment of the onboard multi-intelligence application, including computing power flops total and the number of parameters params total , which are parameters or properties of the environment.
[0039] Furthermore, the intelligent application scheduling sequence generation algorithm in S1 includes:
[0040] The five-tuple attribute is applicable to the scenario where the task scheduling sequence of the intelligent application is recalculated and the computer scenarios of some intelligent applications are suspended when the passively triggered intelligent application in the system meets the triggering conditions and the computing resources and storage resources of the onboard multi-intelligent application are insufficient, resulting in the inability to run all intelligent applications at the same time. The optimal intelligent application scheduling sequence is output according to the five-tuple attribute, including:
[0041] S301: Input the five-tuple attributes of all conflicting intelligent applications and generate possible scheduling sequences for all intelligent applications; for example, possible intelligent application scheduling sequences {app 1 ,app 2 ,……,app i ,……,app n} i∈[1,n] ;
[0042] S302: Determine whether the possible scheduling sequence of the intelligent application complies with the priority principle. The priority principle is that high priority tasks are executed first, low priority tasks are executed later, and high priority tasks cannot be replaced by low priority tasks. If yes, proceed to step S303. If no, it is determined that it does not comply with the principle, then discard it and test the next intelligent application scheduling sequence.
[0043] S303: Calculate the basic information of each scheduling sequence as a whole, including the latest completion time LDT, the required computing power flops and the required parameter amount params, satisfying:
[0044] LDT of the whole scheduling sequence seq =max{LDT 1 ,LDT 2 ,……,LDT i ,……,LDT n} i∈[1,n] ;
[0045] The total flops of the scheduling sequence seq=∑{flops 1 ,flops 2 ,……,flops i ,……,flops n} i∈[1,n] ;
[0046] The params of the scheduling sequence as a whole seq =∑{params 1 ,params 2 ,……,params i ,……,params n} i∈[1,n] ;
[0047] S304: Determine the latest completion time LDT of the intelligent application scheduling sequence seq Whether it meets the requirements of the actual task time constraint α, if the latest completion time LDT seq If it exceeds the actual task time α requirement, it is discarded and returns to S302. If it does not exceed the actual task time α requirement, it goes to S305;
[0048] S305: Calculate the computing power flops in the current environment total and the number of parameters params total , determine whether the computing resources meet the overall computing power flops required by the intelligent application scheduling sequence total If not, then discard and return to S302; if satisfied, then enter S306;
[0049] S306: Determine whether the storage resources support the parameter amount params required by the entire intelligent application scheduling sequence total If not, then discard and return to S302; if satisfied, then enter S307;
[0050] S307: Determine whether the smart application scheduling sequence complies with the category principle, wherein the category principle satisfies: not all smart application categories in the scheduling sequence are allowed to be trigger-type. If not, discard and return to S302. If satisfied, proceed to S308.
[0051] S308: Outputting the intelligent application scheduling sequence.
[0052] As a specific implementation method provided in this case, S3 includes:
[0053] S401: assigning a five-tuple attribute of the intelligent application subtask to be a category of the intelligent application subtask task , Smart application subtask priority task, the latest completion time of intelligent application subtask LDT task , Flops of computing power required for intelligent application subtasks task and the number of parameters required by the intelligent application subtask params task , define the rules as:
[0054] Intelligent application subtask category task Inherit the category attributes corresponding to the smart application;
[0055] Smart application subtask priority task Set the priority level, for example, priority 硬件资源准备 =5, priority 模型准备 =4, priority 数据准备 =3, priority 推理 =2, priority 结果后处理 =1;
[0056] Smart application subtask latest completion time LDT task , Flops of computing power required for intelligent application subtasks task and the number of parameters required by the intelligent application subtask params task The inheritance principle is: assuming that data preparation subtasks, model preparation subtasks, and hardware resource preparation subtasks account for 20-30% of the overall intelligent application, reasoning subtasks account for 40-50%, and result post-processing tasks account for 15-20%;
[0057] S402: Get the remaining computing power flops in the current computing environment left and the remaining parameters capacity params left, For example,
[0058] By (flops left =flops total -flops seq ,params left =params total -params seq ) method to obtain or calculate;
[0059] S403: The smart application subtask {task 1 ,task 2 ,……,task i ,……,task n} i∈[1,n] and its attributes are input into the subtask scheduling sequence generation algorithm.
[0060] As a specific implementation method provided in this case, S403 includes:
[0061] S501: Input the five-tuple attributes of all conflicting smart application subtasks, and generate possible scheduling sequences for all smart application subtasks, for example, smart application subtask {task 1 ,task 2 ,……,task i ,……,task n} i∈[1,n] The corresponding possible scheduling sequence;
[0062] S502: Determine whether the subtask scheduling sequence complies with the priority principle. If yes, proceed to S503. If no, discard and return to S501. For example, S501 inputs a lot of sequences, such as S1, S2, S3, etc. If the S1 sequence does not comply, discard S1 and determine S2 at the same time;
[0063] S503: Calculate the overall properties of the subtask scheduling sequence, including the latest completion time LDT, the required computing power flops, and the required parameter amount params. The calculation principle is as follows:
[0064] The overall LDT of the subtask scheduling sequence sub =max{LDT 1 ,LDT 2 ,……,LDT i ,……,LDT n} i∈[1,n] ;
[0065] The total flops of the subtask scheduling sequence sub =∑{flops 1 ,flops 2 ,……,flops i ,……,flops n} i∈[1,n] ;
[0066] Params of the subtask scheduling sequence as a whole sub =∑{param 1 ,param 2 ,……,param i ,……,param n} i∈[1,n] ;
[0067] S504: Determine the latest completion time LDT of the subtask scheduling sequence sub Whether it meets the actual task time constraint α requirement, if yes, proceed to S505, if not, abandon it and return to S501;
[0068] S505: Calculate the remaining computing power flops in the current environment left and the remaining number of parameters params left , determine whether the computing resources meet the overall computing power flops required by the intelligent application subtask scheduling sequence left If yes, then go to S506, if no, then discard and return to S501;
[0069] S506: Determine whether the storage resources support the parameter amount params required by the entire subtask scheduling sequence left If yes, then go to S507, if no, then discard and return to S501;
[0070] S507: Determine whether the subtask scheduling sequence complies with the type principle. The subtask type principle is: all subtask type attributes in the scheduling sequence are not allowed to be triggering. If yes, proceed to S508. If not, discard and return to S501.
[0071] S508: Output a subtask scheduling sequence, and add the subtask scheduling sequence to the intelligent application sequence.
[0072] Example
[0073] In the early preparation stage, it is necessary to obtain the basic information of the intelligent application, including the latest time LDT for the application to complete, the computing power flops required for the application, and the number of parameters params required for the application. Give each intelligent application a five-tuple attribute<category,priority,LDT,flops,params> , the five-tuple attribute is defined as follows:
[0074] (1) Category describes the operating characteristics of intelligent applications and their subtasks. Continuous intelligent applications need to run continuously during the flight of the aircraft, which is recorded as continuous; periodic intelligent applications have a clear start time and only run within a specific period during the flight of the aircraft, which is recorded as periodic; passive trigger intelligent applications will only be run after a trigger event occurs during the flight of the aircraft, which is recorded as passive trigger.
[0075] (2) Priority describes the importance and urgency of a task. The larger the priority value, the more important the task.
[0076] (3) Latest Due Time (LDT) means that the intelligent application and its subtasks must be completed within a specific time.
[0077] (4) Flops refers to the computing power provided by specialized hardware (such as GPU, FPGA, NPU, etc.) required for intelligent application running services.
[0078] (5) The number of parameters required for the application, params, refers to the total number of learnable parameters in the model, including weights and biases, when running a deep learning model to provide intelligent services.
[0079] In step 3, all currently scheduled intelligent applications and their attributes are input into the intelligent application scheduling sequence generation algorithm to calculate the intelligent application scheduling sequence;
[0080] When the passively triggered intelligent applications in the system meet the triggering conditions, if the computing resources and storage resources are insufficient and all intelligent applications cannot be run at the same time, Figure 6 The process shown recalculates the task scheduling sequence of intelligent applications and suspends some intelligent applications. The application type, application priority, the latest time for application completion, the computing power required by the application, and the number of parameters required by the application are considered in order to output the optimal intelligent application scheduling sequence. The process is as follows:
[0081] (1) Input the properties of all conflicting smart applications and generate all candidate smart application scheduling sequences {app 1 ,app 2 ,……,app i ,……,app n} i∈[1,n] ;
[0082] (2) Determine whether the intelligent application scheduling sequence is a priority principle. The principles are as follows:
[0083] The principle of executing high priority items first and low priority items later;
[0084] A high-priority task cannot be replaced by a low-priority task;
[0085] If it does not meet the principle, the intelligent application scheduling sequence is discarded. If it meets the principle, proceed to the next step;
[0086] (3) Calculate the overall properties of each scheduling sequence, including the latest completion time LDT, the required computing power flops, and the required parameter amount params. The calculation principle is as follows:
[0087] The overall LDT of the scheduling sequence = max{LDT 1 ,LDT 2 ,……,LDT i ,……,LDT n} i∈[1,n] ;
[0088] The total flops of the scheduling sequence = ∑{flops 1 ,flops 2 ,……,flops i ,……,flops n} i∈[1,n] ;
[0089] · Params of the whole scheduling sequence = ∑{params 1 ,params 2 ,……,params i ,……,params n} i∈[1,n] ;
[0090] (4) Determine whether the latest completion time LDT of the intelligent application scheduling sequence meets the actual task time α requirement. If the sequence LDT exceeds the actual task time α requirement, the task scheduling sequence is discarded. If it does not exceed the actual task time α requirement, proceed to the next step;
[0091] (5) Calculate the computing resources in the current environment, including: <flops total ,params total >, determine whether the computing resources meet the overall computing power flops required by the intelligent application scheduling sequence total If not, the smart application scheduling sequence is abandoned. If satisfied, proceed to the next step;
[0092] (6) Determine whether the storage resources support the parameter quantity params required for the entire intelligent application scheduling sequence total If not, the smart application scheduling sequence is abandoned. If satisfied, proceed to the next step;
[0093] (7) Determine whether the smart application scheduling sequence complies with the category principle. The category principle is: not all smart application categories in the scheduling sequence are allowed to be triggering. If not, the smart application scheduling sequence is discarded. If satisfied, proceed to the next step;
[0094] (8) Output intelligent application scheduling sequence.
[0095] The scheduling sequence obtained from the above process can determine the retained intelligent applications, and then divide the interrupted intelligent applications into five subtasks, including: data preparation, model preparation, hardware resource preparation, reasoning, and result post-processing. Figure 3The figure shows a schematic diagram of the subtask segmentation of the target detection intelligent application. First, in the data preparation stage, the data collected by the sensor undergoes analysis, preprocessing, feature extraction and other operations to improve data quality; at the same time, the model preparation subtask loads and initializes the model, and executes the creation of the model class; at the same time, the hardware self-loads the driver after power-on; further, in the inference execution stage, the deep learning inference executor is used to schedule hardware resources to accelerate the calculation; finally, the inference result is generated through the post-processing subtask to generate the final analysis report or detection result. Similarly, Figure 4 The figure shows the sub-task division method for photoelectric detection intelligent applications, such as Figure 5 The figure shows the method of dividing subtasks of intelligent applications of decision-making tasks. The method is the same as the subtask division of intelligent applications of target detection, and will not be repeated here.
[0096] Assign five-tuple attributes to intelligent application subtasks<category,priority,LDT,flops,params> . Define the following rules:
[0097] The category of the subtask inherits the corresponding attributes of its intelligent application;
[0098] The priority of the subtask is set to: priority 硬件资源准备 =5, priority 模型准备 =4, priority 数据准备 =3, priority 推理 =2, priority 结果后处理 =1;
[0099] The inheritance principle of the three attributes of the latest completion time LDT, the required computing power flops, and the required parameter amount params is as follows: it is assumed that the data preparation subtask, model preparation subtask, and hardware resource preparation subtask account for 30% of the overall intelligent application, the reasoning subtask accounts for 50%, and the result post-processing task accounts for 20%.
[0100] Calculate the remaining resources in the current computing environment <flops left ,params left >,. The smart application subtask {task 1 ,task 2 ,……,task i ,……,task n} i∈[1,n] and its attributes are input into the subtask scheduling sequence generation algorithm, Figure 7 The subtask scheduling sequence generation algorithm flow is shown. The comparison rules are:
[0101] (1) Determine whether the subtask scheduling sequence meets the priority principle. If it does not meet the principle, the smart application scheduling sequence is discarded. If it meets the principle, proceed to the next step;
[0102] (2) Calculate the overall properties of the subtask scheduling sequence, including the latest completion time LDT, the required computing power flops, and the required parameter amount params. The calculation principle is as follows:
[0103] The overall LDT of the scheduling sequence = max{LDT 1 ,LDT 2 ,……,LDT i ,……,LDT n} i∈[1,n] ;
[0104] The total flops of the scheduling sequence = ∑{flops 1 ,flops 2 ,……,flops i ,……,flops n} i∈[1,n] ;
[0105] · Params of the whole scheduling sequence = ∑{param 1 ,param 2 ,……,param i ,……,param n} i∈[1,n] ;
[0106] (4) Determine whether the latest completion time LDT of the subtask scheduling sequence meets the actual task time α requirement. If the sequence LDT exceeds the actual task time α requirement, the scheduling sequence is discarded. If it does not exceed the actual task time α requirement, proceed to the next step;
[0107] (5) Calculate the computing resources in the current environment, including: <flops left ,params left >, determine whether the computing resources meet the overall computing power flops required by the intelligent application scheduling sequence left If not, the scheduling sequence is discarded. If satisfied, proceed to the next step;
[0108] (6) Determine whether the storage resources support the number of parameters required by the subtask scheduling sequence as a whole left If not, the scheduling sequence is discarded. If satisfied, proceed to the next step;
[0109] (7) Determine whether the subtask scheduling sequence meets the category principle. The category principle is: all subtask category attributes in the scheduling sequence are not allowed to be triggering. If not, the scheduling sequence is discarded. If it is satisfied, proceed to the next step;
[0110] (8) Output the subtask scheduling sequence and add the subtask scheduling sequence to the intelligent application sequence.
[0111] For example: Consider the following scenario: When an aircraft sets out to perform a flight mission, it needs to continuously use the target detection intelligent application to monitor the surrounding threat situation information, search for aerial and ground targets, and start the photoelectric detection application for real-time environmental monitoring at a certain period. When a special situation occurs, the decision-making task intelligent application is triggered to determine the subsequent flight strategy. Assume that the computing resources on the aircraft are limited, the computing power flops is 10tops, and the number of parameters that can be supported is 1G. The next decision needs to be made within 2s after the special situation occurs. Assume that at a certain point in the flight of the aircraft, the aircraft is continuously running the target detection application, and during the operation cycle of the photoelectric detection application, a special situation occurs at this time, and the decision-making application is triggered. Assume that the three types of intelligent applications have no dependencies and run independently and in parallel.
[0112] Based on the above scenarios, the five-tuple attributes of the three types of intelligent applications are defined as follows:
[0113] (1) Category setting: target detection belongs to continuous intelligent applications, photoelectric detection belongs to periodic intelligent applications, and decision-making tasks belong to passive trigger intelligent applications;
[0114] (2) Priority setting: During the flight of an aircraft, when a special situation occurs, the most important task is to make a flight decision. Therefore, the decision-making task of the passive trigger intelligent application has the highest priority, assuming that its priority is 3; the photoelectric detection intelligent application periodically monitors the environment, assuming that the priority of the periodic intelligent application is set to 2; the target detection has the lowest priority, so it is assumed that the priority of the continuous intelligent application is set to 1;
[0115] (3) Setting the latest completion time (LDT): Assume that the latest completion time of continuous intelligent applications is ∞; photoelectric detection monitors the environment periodically, so it is assumed that the latest completion time of periodic intelligent applications is 10 seconds; decision-making task intelligent applications need to respond within two seconds after a special situation occurs, so it is assumed that the latest completion time of passive trigger intelligent applications is 2 seconds.
[0116] (4) Assume that continuous intelligent applications require 3tops of computing power, periodic intelligent applications require 5tops, and passively triggered intelligent applications require 3tops.
[0117] (5) Assume that continuous intelligent applications require 300M parameters, periodic intelligent applications require 500M parameters, and passively triggered intelligent applications require 400M parameters.
[0118] In summary, the attributes of continuous intelligent applications are<continuous,1,∞,3tops,300M> , the properties of periodic intelligent applications are<periodic,2,10s,5tops,500M> , the attributes of passively triggered intelligent applications are<passivetrigger,3,2s,3tops,400M> .
[0119] From the above process, it can be seen that before the trigger event occurs, the continuous intelligent application and the periodic intelligent application are running in parallel on the aircraft. After the trigger event occurs, the passively triggered intelligent application seizes the computing resources occupied by the continuous intelligent application. The remaining computing resources and storage resources in the airborne environment can still meet some subtasks of the continuous intelligent application, such as data preparation, model preparation, hardware resource preparation, and meet the latest completion time requirements. Therefore, some subtasks of the continuous intelligent application are still running in the airborne system until the passively triggered intelligent application releases resources and then starts the remaining subtasks of the continuous intelligent application. Based on this task scheduling method, the system is ensured to run efficiently and stably.
[0120] The above are only specific embodiments of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed in the present disclosure should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A method for fine-grained computing task division and scheduling for multi-intelligent applications, characterized in that: The method comprises, S1: Define the five-tuple attributes of intelligent applications according to the actual operation of intelligent applications to plan the task execution sequence or scheduling sequence, and adopt the intelligent application scheduling sequence generation algorithm to improve the coordination of multiple intelligent applications during flight. The five-tuple attributes adjust the intelligent application scheduling sequence by priority, required computing power and latest completion time; S2: Divide each intelligent application into five subtasks, including data preparation, model preparation, hardware resource preparation, reasoning, and result post-processing. Fine-grained division into five subtasks can improve the utilization of environmental resources during collaborative execution of multiple intelligent applications. S3: Determine the five-tuple attributes of each subtask, and calculate the subtask sequence that can remain in the running state in the terminated intelligent application according to the remaining resources of the airborne computing environment, so as to reduce the overall execution time delay of the airborne multi-intelligent application under the actual execution time constraint of the task.
2. The method according to claim 1, characterized in that In S1, the five-tuple attributes of intelligent applications are defined according to the actual operation of intelligent applications, including: The five-tuple attributes include the category of intelligent application, priority of intelligent application, latest completion time of intelligent application, flops of computing power required by intelligent application, and params of parameters required by intelligent application. Determine the computing resource parameters in the current environment of the onboard multi-intelligence application, including computing power flops total and the parameter params total .
3. The method according to claim 2, characterized in that The intelligent application scheduling sequence generation algorithm in S1 includes: S301: Input the five-tuple attributes of all conflicting intelligent applications, and generate possible scheduling sequences for all intelligent applications; S302: Determine whether the possible scheduling sequence of the intelligent application complies with the priority principle, wherein the priority principle is that high priority tasks are executed first, low priority tasks are executed later, and high priority tasks cannot be replaced by low priority tasks. If yes, proceed to step S303; if not, abandon the task and test the next intelligent application scheduling sequence; S303: Calculate the basic information of each scheduling sequence as a whole, including the latest completion time LDT, the required computing power flops and the required parameter amount params, satisfying: LDT of the whole scheduling sequence seq =max{LDT1,LDT2,……,LDT i ,……,LDT n } i∈[1,n] ; The total flops of the scheduling sequence seq =∑{flops1,flops2,…,flops i ,……,flops n } i∈[1,n] ; The params of the scheduling sequence as a whole seq =∑{params1,params2,…,params i ,……,params n } i∈[1,n] ; S304: Determine the latest completion time LDT of the intelligent application scheduling sequence seq Whether it meets the requirements of the actual task time constraint α, if the latest completion time LDT seq If it exceeds the actual task time α requirement, it is discarded and returns to S302. If it does not exceed the actual task time α requirement, it goes to S305; S305: Calculate the computing power flops in the current environment total and the parameter params total , determine whether the computing resources meet the overall computing power flops required by the intelligent application scheduling sequence total If not, then discard and return to S302; if satisfied, then enter S306; S306: Determine whether the storage resources support the parameter amount params required by the entire intelligent application scheduling sequence total If not, then discard and return to S302; if satisfied, then enter S307; S307: Determine whether the smart application scheduling sequence complies with the category principle, wherein the category principle satisfies: not all smart application categories in the scheduling sequence are allowed to be trigger-type. If not, discard and return to S302. If satisfied, proceed to S308. S308: Outputting the intelligent application scheduling sequence.
4. The method according to claim 3, characterized in that S3 includes, S401: assigning a five-tuple attribute of the intelligent application subtask to be a category of the intelligent application subtask task , Smart application subtask priority task , the latest completion time of intelligent application subtask LDT task , Flops of computing power required for intelligent application subtasks task and the number of parameters required by the intelligent application subtask params task , define the rules as: Intelligent application subtask category task Inherit the category attributes corresponding to the smart application; Smart application subtask priority task Set priorities; Smart application subtask latest completion time LDT task , Flops of computing power required for intelligent application subtasks task and the number of parameters required by the intelligent application subtask params task The inheritance principle is: assuming that data preparation subtasks, model preparation subtasks, and hardware resource preparation subtasks account for 20-30% of the overall intelligent application, reasoning subtasks account for 40-50%, and result post-processing tasks account for 15-20%; S402: Get the remaining computing power flops in the current computing environment left and the remaining parameters capacity params left ; S403: Input the interrupted intelligent application subtask and its attributes into the subtask scheduling sequence generation algorithm. The interrupted intelligent application subtask is represented as: {task1,task2,……,task i ,……,task n } i∈[1,n] 。 5. The method according to claim 4, characterized in that S403 includes: S501: Input the five-tuple attributes of all conflicting intelligent application subtasks, and generate possible scheduling sequences for all intelligent application subtasks; S502: Determine whether the subtask scheduling sequence complies with the priority principle. If yes, proceed to S503. If no, discard and return to S501. For example, S501 inputs a lot of sequences, such as S1, S2, S3, etc. If the S1 sequence does not comply, discard S1 and determine S2 at the same time; S503: Calculate the overall properties of the subtask scheduling sequence, including the latest completion time LDT, the required computing power flops, and the required parameter amount params. The calculation principle is as follows: The overall LDT of the subtask scheduling sequence sub =max{LDT1,LDT2,……,LDT i ,……,LDT n } i∈[1,n] ; The total flops of the subtask scheduling sequence sub It is expressed as, flops sub =∑{flops1,flops2,……,flops i ,……,flops n } i∈[1,n] ; Params of the subtask scheduling sequence as a whole sub =∑{param1,param2,…,param i ,……,param n } i∈[1,n] ; S504: Determine the latest completion time LDT of the subtask scheduling sequence sub Whether it meets the actual task time constraint α requirement, if yes, proceed to S505, if not, abandon it and return to S501; S505: Calculate the remaining computing power flops in the current environment left and the remaining number of parameters params left , determine whether the computing resources meet the overall computing power flops required by the intelligent application subtask scheduling sequence left If yes, then go to S506, if no, then discard and return to S501; S506: Determine whether the storage resources support the parameter amount params required by the entire subtask scheduling sequence left If yes, then go to S507, if no, then discard and return to S501; S507: Determine whether the subtask scheduling sequence complies with the type principle. The subtask type principle is: all subtask type attributes in the scheduling sequence are not allowed to be triggering. If yes, proceed to S508. If not, discard and return to S501. S508: Output a subtask scheduling sequence, and add the subtask scheduling sequence to the intelligent application sequence.
Citation Information
Patent Citations
Parallel cooperative test method for flight control system
CN109656267A
Parallel distributed computing system and method for flight control agent
CN112784445A
Resource team optimization for resource planning
CN115373812A
Multi-space-based computing task deployment method considering sub-task dependence and execution deadline
CN115858109A
Resource teaming optimization for resource planning
US20220318055A1
Cited By
Object detection method based on deep learning
CN120540811A
Chip resource dynamic configuration method
CN120849112A
Chip resource dynamic configuration method
CN120849112B