Method for fine-grained computation task partitioning and scheduling for multi-intelligent application
By using a fine-grained computing task partitioning and scheduling method, intelligent applications are divided into five types of sub-tasks, and scheduling is optimized based on the five-tuple attributes. This solves the task latency problem caused by resource contention in airborne environments and improves the collaborative execution efficiency of multiple intelligent applications.
Patent Information
- Application Number
- CN202411956972.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-29
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2044-12-29
AI Technical Summary
In a limited airborne environment, resource contention among multiple intelligent applications leads to insufficient computing power and limited storage space, affecting mission execution latency and reducing flight efficiency.
By dividing intelligent applications into five sub-tasks and scheduling tasks based on the five-tuple attributes (category, priority, latest completion time, required computing power, and required number of parameters), resource utilization is optimized, the execution order of multiple intelligent applications is rationally scheduled, and resource contention and latency issues are avoided.
It improves resource utilization in the airborne environment, reduces the overall execution time latency of multiple intelligent applications, and ensures efficient collaborative execution of tasks.
Smart Images

Figure CN119883625B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the technical field of intelligent computing, and in particular relates to a method for fine-grained computing task partitioning and scheduling for multi-intelligent applications. Background Technology
[0002] In the modern aviation field, the application of intelligent technologies is increasingly becoming a key factor in improving flight safety, efficiency, and reliability. Civil aircraft missions are becoming increasingly complex, placing ever higher demands on flight safety and efficiency. To address these challenges, modern civil aircraft are integrating various intelligent applications to cope with complex and ever-changing environments. These intelligent applications encompass radar signal processing, target detection, electro-optical detection, and decision-making tasks. Target detection, electro-optical detection, and decision-making tasks are typical applications; the coordinated execution of these tasks significantly improves flight timeliness, but also brings challenges such as resource constraints in the airborne environment and high mission execution latency. Figure 1 This is a schematic diagram illustrating 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 processors are severely restricted, and the resource competition among multiple intelligent applications exacerbates the complexity of mission execution. In these applications, target detection requires substantial image processing and analysis computing resources, photoelectric detection requires real-time fusion of multimodal data, and decision-making tasks need to respond rapidly to changes in the enemy and friendly situation. Furthermore, the limited resources of the onboard environment result in insufficient computing power and limited storage space. Each task places stringent demands on computing resources and real-time performance, and the competition among these limited onboard resources leads to a significant increase in mission latency, impacting flight efficiency. Summary of the Invention
[0004] In view of this, the method for fine-grained computational task partitioning and scheduling for multi-intelligent applications of the present invention solves the technical problem of reduced flight efficiency in existing multi-intelligent application systems.
[0005] A method for fine-grained computational task partitioning and scheduling for multi-intelligent applications, the method comprising,
[0006] S1: Define the five-tuple attributes of intelligent applications based on the actual operation of intelligent applications, in order to plan the task execution sequence or scheduling sequence. Use 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 through priority, required computing power and latest completion time.
[0007] S2: Divide each intelligent application into five sub-tasks, including data preparation, model preparation, hardware resource preparation, inference, and result post-processing. Dividing each intelligent application into five sub-tasks in a fine-grained manner can improve the utilization rate of environmental resources when multiple intelligent applications are executed collaboratively.
[0008] S3: Determine the five-tuple attributes of each subtask, and calculate the sequence of subtasks that can retain their running state in the terminated intelligent application based on the remaining resources of the airborne computing environment, thereby reducing the overall execution time delay of the airborne multi-intelligent application under the constraint of the actual execution time of the task.
[0009] Furthermore, if an intelligent application is an intelligent task that needs to run continuously throughout the entire flight phase, such as a target recognition task in the aircraft, and there is no explicit requirement for start-up time or completion time, then the intelligent application is defined as a continuous intelligent application.
[0010] Furthermore, if an intelligent application operates on a specified cycle during the entire flight phase or a certain phase of the aircraft, such as photoelectric detection or large-scale optical target detection during flight, and has a clearly required start time, then the intelligent application is defined as a periodic intelligent application.
[0011] Furthermore, if an intelligent application is a task triggered at a certain moment during the flight of an aircraft after meeting specified conditions, such as a decision-making task in an aircraft, with clearly defined start time, start conditions, and completion time, then the intelligent application is defined as a passively triggered intelligent application.
[0012] Use quintuples<category,priority,LDT,flops,params> Define the attributes of intelligent applications and their subtasks, including: category, priority, latest application completion time, computing power required by the application, and required parameters of the application.
[0013] Furthermore, the category describes the operational characteristics of intelligent applications and their subtasks, including: continuous, periodic, and passive trigger. Additionally, the priority determines the scheduling order and resource allocation of tasks in resource-constrained environments, ensuring that critical tasks are executed first. Each intelligent application sets a priority based on the importance and real-time requirements of its tasks.
[0014] Furthermore, the Latest Due Time (LDT) refers to the requirement that intelligent applications and their subtasks must complete 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 the intelligent application during execution, including processor performance. This attribute is used to allocate computing resources reasonably during task scheduling to avoid task failure due to insufficient computing resources.
[0016] Furthermore, the required number of parameters (params) describes the number of input parameters that the intelligent application needs to process during execution. The number of parameters directly relates to the complexity of task execution and the required computational overhead. Based on the above task attribute definition, a scheduling strategy is designed to address conflicts between the intelligent application and its subtasks: Further, depending on the machine model and the task, multiple available resources for continuous tasks, periodic tasks, and a certain amount of triggered tasks are pre-set on the machine, and at least one 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 by inputting the attribute information of all tasks that need to be executed and comparing them step by step.
[0018] Furthermore, the priorities of tasks are compared, and the higher the priority, the earlier it is processed. During scheduling, the stability of its operation must be guaranteed.
[0019] Furthermore, when a triggered task starts and multiple types of tasks need to be run simultaneously, the application priority, the latest time for the application to complete, the computing power required by the application, the number of parameters required by the application, and the type of application are considered in order to merge and rearrange the application process, ensuring that all applications are computed simultaneously within the tolerable time range of the application.
[0020] Furthermore, when a triggered task starts, resulting in insufficient computing power / time, priority should be given to stopping the continuous application process to allocate sufficient computing power to support the triggered task; however, when the priority of a periodic task is higher than that of a continuous task, it is necessary to stop some subtasks of the continuous application.
[0021] The beneficial effects of the present invention are as follows:
[0022] Based on the differences in the state of intelligent applications during task execution, 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 are defined with five attributes: category, priority, latest completion time, required computing power, and required parameters, represented as a quintuple. 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. Interrupted intelligent applications are divided into five subtasks: data preparation, model preparation, hardware resource preparation, inference, and result post-processing. Based on the subtask attribute inheritance principle, the attribute quintuple for 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, which is then added to the application scheduling sequence. Through task partitioning and subtask scheduling methods, the problems of low resource utilization and high multi-task execution latency in airborne environments are optimized. The collaborative operation process of multiple intelligent applications is optimized based on the intelligent application scheduling algorithm and the subtask scheduling algorithm. Attached Figure Description
[0023] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0024] Figure 1 This is a schematic diagram illustrating 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 collaboration among multiple intelligent applications provided by an embodiment of the present invention;
[0026] Figure 3 This is a schematic diagram of the intelligent target detection application splitting model provided in an embodiment of the present invention;
[0027] Figure 4 This is a schematic diagram of the photoelectric detection intelligent application breakdown model provided in the embodiments of the present invention;
[0028] Figure 5 This is a schematic diagram of the decision task decomposition model provided in an embodiment of the present invention;
[0029] Figure 6 This is a flowchart of the intelligent application task scheduling sequence generation algorithm provided in this embodiment of the invention;
[0030] Figure 7 This is a flowchart of the intelligent application subtask scheduling sequence generation algorithm provided in an embodiment of the present invention. Detailed Implementation
[0031] The embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.
[0032] The following specific examples illustrate the implementation of this disclosure. Those skilled in the art can easily understand other advantages and effects of this disclosure from the content disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. This disclosure can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of this disclosure. It should be noted that, in the absence of conflict, the following embodiments and features in the embodiments can be combined with each other. Based on the embodiments in this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure. It should be noted that various aspects of the embodiments within the scope of the appended claims are described below. It should be apparent that the aspects described herein can be embodied in a wide variety of forms, and any particular structure and / or function described herein is merely illustrative. Based on this 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 set forth herein can be used to implement an apparatus and / or a method of practice. Alternatively, this device and / or method may be implemented using other structures and / or functionalities besides those set forth herein.
[0033] Task partitioning and scheduling are key to addressing the challenges of collaborative execution across multiple intelligent applications. To ensure efficient execution of various tasks, it is essential to rationally partition tasks, breaking down complex large tasks into multiple sub-tasks, and to schedule tasks appropriately based on their importance, real-time requirements, and resource usage. Task scheduling needs to consider the priorities among multiple intelligent applications and the dynamic allocation of resources to avoid task latency issues caused by improper resource allocation. Especially in decision-making tasks with high real-time requirements, the efficiency of task scheduling directly impacts the success of tactical execution.
[0034] The optimization methods for computational task partitioning and subtask scheduling in multi-intelligent application scenarios mainly face three challenges: First, when multiple intelligent applications need to be run and computational and storage resources are insufficient, how to select the suspended intelligent applications and find the most reasonable intelligent application scheduling sequence based on task importance, real-time requirements, and resource usage? Second, it is necessary to consider the priority among multiple intelligent applications and the dynamic scheduling of resources to avoid task latency caused by improper task scheduling. Third, how to fully utilize the remaining current computational and storage resources to determine the sequence of subtasks that can still be executed in the suspended intelligent applications, such as... Figures 2 to 7 The fine-grained computing task partitioning and scheduling method for multiple intelligent applications presented here faces three main challenges: First, when multiple intelligent applications need to be run and computing and storage resources are insufficient, how to select the suspended intelligent applications and find the most reasonable intelligent application scheduling sequence based on task importance, real-time requirements, and resource usage; second, it is necessary to consider the priority among multiple intelligent applications and the dynamic scheduling of resources to avoid task latency caused by improper task scheduling; and third, how to make full use of the remaining computing and storage resources to determine the sequence of subtasks that can still be executed in the suspended intelligent applications. The method includes, S1: defining based on the actual running status of the intelligent applications. The intelligent application quintuple attributes are used to plan the task execution sequence or scheduling sequence (the quintuple attributes are manually defined according to design requirements or flight missions to plan the task execution sequence or scheduling sequence). An intelligent application scheduling sequence generation algorithm is adopted to improve the collaboration of multiple intelligent applications (e.g., multiple deep learning network models) during flight. The quintuple attributes adjust the intelligent application scheduling sequence through priority, required computing power, and latest completion time. S2: Each intelligent application is divided into five sub-tasks, including data preparation, model preparation, hardware resource preparation, inference, and result post-processing. Fine-grained division into five sub-tasks can improve the utilization rate of environmental resources when multiple intelligent applications are executed collaboratively.
[0035] S3: Determine the five-tuple attributes of each subtask, and calculate the sequence of subtasks that can retain their running state in the terminated intelligent application based on the remaining resources of the airborne computing environment, thereby reducing the overall execution time delay of the airborne multi-intelligent application under the constraint of the actual execution time of the task.
[0036] As a specific implementation method provided in this case, S1 defines the five-tuple attributes of the intelligent application based on the actual operation of the intelligent application, including:
[0037] The quintuple attributes include the category of intelligent application, the priority of intelligent application, the latest completion time (LDT) of intelligent application, the computing power (flops) required by intelligent application, and the number of parameters required by intelligent application. The quintuple attributes are the attributes of the intelligent application itself.
[0038] Determine the computing resource parameters in the current environment of the airborne multi-intelligent application, including computing power (flops). total and parameter quantity params total , which are parameters or attributes of the environment.
[0039] Furthermore, the intelligent application scheduling sequence generation algorithm in S1 includes,
[0040] The quintuple attribute applies when a passively triggered intelligent application in the system meets its triggering conditions, but the computing and storage resources of multiple onboard intelligent applications are insufficient to run all intelligent applications simultaneously. In this scenario, the task scheduling sequence of the intelligent applications is recalculated, and the computing power of some intelligent applications is paused. Based on the quintuple attribute, the optimal intelligent application scheduling sequence is output, including...
[0041] S301: Input the quintuple attributes of all intelligent applications that are in conflict, and generate all possible scheduling sequences of intelligent applications; for example, possible intelligent application scheduling sequences {app1, app2, ..., app...} i ,……,app n} i∈[1,n] ;
[0042] S302: Determine whether the possible scheduling sequence of the intelligent application conforms to the priority principle. The priority principle is that high-priority tasks are executed first, low-priority tasks are executed last, and high-priority tasks cannot be replaced by low-priority tasks. If yes, proceed to step S303. If no, it is determined that the principle is not met, so it is discarded, and the next intelligent application scheduling sequence is tested.
[0043] S303: Calculate the basic information of each scheduling sequence as a whole, including the latest completion time (LDT), required computing power (flops), and required parameters (params), satisfying:
[0044] LDT of the entire scheduling sequence seq =max{LDT1,LDT2,……,LDT i ,……,LDT n} i∈[1,n] ;
[0045] Overall flops of the scheduling sequence seq =∑{flops1,flops2,…,flops i ,……,flopsn} i∈[1,n] ;
[0046] The overall parameters of the scheduling sequence seq =∑{params1,params2,…,params i ,……,params n} i∈[1,n] ;
[0047] S304: Determine the latest completion time (LDT) of the intelligent application scheduling sequence. seq Does it meet the actual task time constraint α? If the latest completion time (LDT) is... seq If the actual task time requirement α is exceeded, discard the task and return to S302; if the actual task time requirement α is not exceeded, proceed to S305.
[0048] S305: Calculate the computing power flops in the current environment. total and parameter quantity params total Determine whether the computing resources meet the overall computing power (flops) required by the intelligent application scheduling sequence. total If the condition is not met, discard the result and return to S302; if the condition is met, proceed to S306.
[0049] S306: Determine whether the storage resources support the total number of parameters required for the intelligent application scheduling sequence (params) total If the condition is not met, discard the result and return to S302; if the condition is met, proceed to S307.
[0050] S307: Determine whether the intelligent application scheduling sequence conforms to the category principle. The category principle is: not all intelligent applications in the scheduling sequence are of the trigger type. If it does not meet the requirement, discard and return to S302. If it does meet the requirement, proceed to S308.
[0051] S308: Output intelligent application scheduling sequence.
[0052] As a specific implementation method provided in this case, S3 includes,
[0053] S401: Assign the quintuple attribute of the intelligent application subtask to the intelligent application subtask category. task Smart application subtask priority task Latest Completion Time (LDT) for Smart Application Subtasks task The computing power (flops) required for intelligent application subtasks task The number of parameters required for intelligent application subtasks (params) task The rules are defined as follows:
[0054] Smart application subtask category task Inherit the category attributes corresponding to intelligent applications;
[0055] Smart application subtask priority task Set a priority level, for example, priority 硬件资源准备 =5, priority 模型准备 =4, priority 数据准备 =3, priority 推理 =2, priority 结果后处理 =1;
[0056] Latest Completion Time (LDT) for Smart Application Subtasks task The computing power (flops) required for intelligent application subtasks task The number of parameters required for intelligent application subtasks (params) task The inheritance principle is as follows: it is assumed 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 remaining parameter capacity (params) left, For example,
[0058] via (flops) left =flops total -flops seq ,params left =params total -params seq The method is used to obtain or calculate;
[0059] S403: The intelligent application subtasks to be interrupted {task1, task2, ..., task...} i ,……,task n} i∈[1,n] The 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 quintuple attributes of all conflicting intelligent application subtasks and generate all possible scheduling sequences for the intelligent application subtasks, for example, intelligent application subtasks {task1, task2, ..., task...} i,……,task n} i∈[1,n] The corresponding possible scheduling sequences;
[0062] S502: Determine whether the subtask scheduling sequence conforms to the priority principle. If yes, proceed to S503; otherwise, discard and return to S501. For example, if S501 inputs many sequences, such as S1, S2, S3, etc., if the S1 sequence does not conform, discard S1 and determine S2 at the same time.
[0063] S503: Calculate the overall attributes of the subtask scheduling sequence, including the latest completion time (LDT), required computing power (flops), and required parameters (params). The calculation principles are as follows:
[0064] LDT of the entire subtask scheduling sequence sub =max{LDT1,LDT2,……,LDT i ,……,LDT n} i∈[1,n] ;
[0065] Overall flops of the subtask scheduling sequence sub =∑{flops1,flops2,…,flops i ,……,flops n} i∈[1,n] ;
[0066] The overall params of the subtask scheduling sequence sub =∑{param1,param2,……,param i ,……,param n} i∈[1,n] ;
[0067] S504: Determine the latest completion time (LDT) of the subtask scheduling sequence. sub Does it meet the actual task time constraint α requirement? If yes, proceed to S505; otherwise, discard and return to S501.
[0068] S505: Calculate the remaining computing power (flops) in the current environment. left and remaining accommodating parameters (params) left Determine whether the computing resources meet the overall computing power (flops) required for the intelligent application subtask scheduling sequence. left If yes, proceed to S506; otherwise, discard and return to S501.
[0069] S506: Determine whether the storage resources support the total number of parameters required for the entire subtask scheduling sequence (params) leftIf yes, proceed to S507; otherwise, discard and return to S501.
[0070] S507: Determine whether the subtask scheduling sequence conforms to the category principle. The subtask category principle is: not all subtasks in the scheduling sequence are allowed to have the category attribute of triggering. If so, proceed to S508; otherwise, discard and return to S501.
[0071] S508: Output the subtask scheduling sequence and add it to the smart application sequence.
[0072] For example
[0073] In the initial preparation phase, it is necessary to obtain basic information about the intelligent application, including the latest time to completion (LDT), the required computing power (flops), and the required number of parameters (params). Each intelligent application is then assigned a quintuple attribute.<category,priority,LDT,flops,params> The properties of a quintuple are defined as follows:
[0074] (1) Category describes the characteristics of intelligent applications and their subtasks. Continuous intelligent applications need to run continuously during the flight of the aircraft and are denoted as continuous; periodic intelligent applications have a defined start time and only run within a specific period during the flight of the aircraft and are denoted as periodic; passively triggered intelligent applications will only run after a triggering event occurs during the flight of the aircraft and are denoted as passive trigger.
[0075] (2) Priority describes the importance and urgency of a task. The higher the priority value, the more important the task.
[0076] (3) Latest Due Time (LDT) refers to the requirement that intelligent applications and their subtasks must complete within a specific time.
[0077] (4) The computing power required by the application (flops) refers to the computing power provided by the specialized hardware (such as GPU, FPGA, NPU, etc.) required for the operation of intelligent application services.
[0078] (5) The number of parameters required for the application refers to the total number of learnable parameters in the model when running a deep learning model to provide intelligent services, including weights and biases.
[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 a passively triggered intelligent application in the system meets the triggering condition, if insufficient computing and storage resources prevent all intelligent applications from running simultaneously, then the following procedure applies: Figure 6 The process shown recalculates the task scheduling sequence for intelligent applications, pausing some applications. It considers the application type, application priority, latest completion time, required computing power, and required parameters in sequence, outputting the optimal intelligent application scheduling sequence. The process is as follows:
[0081] (1) Input the attributes of all intelligent applications that have conflicted, and generate a scheduling sequence of all candidate intelligent applications {app1,app2,……,app1}. i ,……,app n} i∈[1,n] ;
[0082] (2) The priority principle for determining whether the intelligent application scheduling sequence is followed is as follows:
[0083] • The principle of executing high-priority tasks first and low-priority tasks later;
[0084] High-priority tasks cannot be replaced by low-priority tasks;
[0085] If the principle is not met, the intelligent application scheduling sequence is discarded. If the principle is met, proceed to the next step.
[0086] (3) Calculate the overall attributes of each scheduling sequence, including the latest completion time (LDT), required computing power (flops), and required number of parameters (params). The calculation principles are as follows:
[0087] • The overall LDT of the scheduling sequence is max{LDT1,LDT2,……,LDT}. i ,……,LDT n} i∈[1,n] ;
[0088] • The total number of floats in the scheduling sequence is ∑{flops1,flops2,……,flops} i ,……,flops n} i∈[1,n] ;
[0089] • The overall params of the scheduling sequence = ∑{params1, params2, ..., 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 LDT of the sequence exceeds the actual task time requirement (α), discard the task scheduling sequence. If it does not exceed the actual task time requirement (α), proceed to the next step.
[0091] (5) Calculate the current computing resources in the 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 the conditions are not met, the intelligent application scheduling sequence is discarded. If the conditions are met, proceed to the next step.
[0092] (6) Determine whether the storage resources support the total number of parameters required for the intelligent application scheduling sequence (params). total If the conditions are not met, the intelligent application scheduling sequence is discarded. If the conditions are met, proceed to the next step.
[0093] (7) Determine whether the intelligent application scheduling sequence conforms to the category principle. The category principle is: not all intelligent applications in the scheduling sequence can be trigger-based. If it does not conform, discard the intelligent application scheduling sequence. If it does conform, proceed to the next step;
[0094] (8) Output the intelligent application scheduling sequence.
[0095] Based on the scheduling sequence obtained from the above process, the intelligent applications that will be retained can be determined. Then, the interrupted intelligent applications are divided into five sub-tasks: data preparation, model preparation, hardware resource preparation, inference, and result post-processing. For example... Figure 3 The diagram illustrates the subtask segmentation of an intelligent object detection application. First, in the data preparation phase, the data collected by the sensors undergoes parsing, preprocessing, and feature extraction to improve data quality. Simultaneously, the model preparation subtask loads and initializes the model and creates the model class. Meanwhile, the hardware automatically loads its drivers after power-on. Further, in the inference execution phase, a deep learning inference executor schedules hardware resources to accelerate computation. Finally, the inference results are used in the post-processing subtask to generate the final analysis report or detection results. Similarly, as... Figure 4 The diagram illustrates a method for dividing tasks into sub-tasks in intelligent photoelectric detection applications, such as... Figure 5 The diagram illustrates the method for dividing intelligent applications of decision-making tasks into subtasks. The method is the same as that for intelligent applications of object detection, and will not be described in detail here.
[0096] Assigning quintuple attributes to intelligent application subtasks<category,priority,LDT,flops,params> The following rules are defined:
[0097] • The category of a subtask inherits the attributes corresponding to its smart application;
[0098] • Set the priority of the subtask to: priority 硬件资源准备 =5, priority 模型准备 =4, priority 数据准备 =3, priority 推理 =2, priority 结果后处理 =1;
[0099] The inheritance principle of the three attributes, namely, latest completion time (LDT), required computing power (flops), and required number of parameters (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 inference 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 intelligent application subtasks {task1, task2, ..., task...} that will be interrupted from running i ,……,task n} i∈[1,n] The attributes are input into the subtask scheduling sequence generation algorithm. Figure 7 The algorithm flow for generating subtask scheduling sequences is demonstrated. The comparison rule is as follows:
[0101] (1) Determine if the subtask scheduling sequence follows the priority principle. If it does not, discard the intelligent application scheduling sequence. If it does, proceed to the next step.
[0102] (2) Calculate the overall attributes of the subtask scheduling sequence, including the latest completion time (LDT), required computing power (flops), and required parameters (params). The calculation principles are as follows:
[0103] • The overall LDT of the scheduling sequence is max{LDT1,LDT2,……,LDT}. i ,……,LDT n} i∈[1,n] ;
[0104] • The total number of floats in the scheduling sequence is ∑{flops1,flops2,……,flops} i ,……,flops n} i∈[1,n] ;
[0105] • The overall params of the scheduling sequence = ∑{param1,param2,……,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 LDT of the sequence exceeds the actual task time requirement (α), discard the scheduling sequence. If it does not exceed the actual task time requirement (α), proceed to the next step.
[0107] (5) Calculate the current computing resources in the 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 the conditions are not met, the scheduling sequence is discarded. If the conditions are met, proceed to the next step.
[0108] (6) Determine whether the storage resources support the total number of parameters required for the entire subtask scheduling sequence (params). left If the conditions are not met, the scheduling sequence is discarded. If the conditions are met, proceed to the next step.
[0109] (7) Determine if the subtask scheduling sequence conforms to the category principle. The category principle is: not all subtasks in the scheduling sequence can have the category attribute of being trigger-based. If this is not met, discard the scheduling sequence. If it is met, proceed to the next step;
[0110] (8) Output the subtask scheduling sequence and add it to the smart application sequence.
[0111] For example, consider the following scenario: An aircraft departs to perform a flight mission, requiring continuous use of a target detection intelligent application to monitor surrounding threat information, search for airborne and ground targets, and periodically activate an electro-optical detection application for real-time environmental monitoring. When a special situation occurs, a decision-making intelligent application is triggered to determine the subsequent flight strategy. Assume the aircraft's computing resources are limited, with a computing power of 10 tops (FLOPs) and a supported parameter count of 1 GB. A decision must be made within 2 seconds of the occurrence of a special situation. Assume that at a certain point during the flight, the aircraft is continuously running the target detection application, and within the electro-optical detection application's operating cycle, a special situation occurs, triggering the decision-making application. Assume the three types of intelligent applications are independent and run in parallel.
[0112] Based on the above scenario, the five-tuple attributes for the three types of intelligent applications are defined as follows:
[0113] (1) Category setting: Target detection belongs to continuous intelligent application, photoelectric detection belongs to periodic intelligent application, and decision-making task belongs to passively triggered intelligent application;
[0114] (2) Priority setting: During the flight of the aircraft, when a special situation occurs, the most important task is to make flight decisions. Therefore, the decision-making task of the passively triggered intelligent application has the highest priority, and it is assumed that its priority is 3. The photoelectric detection intelligent application periodically monitors the environment, and it is assumed 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) Latest Completion Time (LDT) Setting: Assume that the latest completion time of continuous intelligent applications is ∞; photoelectric detection periodically monitors the environment, so assume that the latest completion time of periodic intelligent applications is 10s; decision-making intelligent applications need to respond within two seconds after special circumstances occur, so assume that the latest completion time of passively triggered intelligent applications is 2s.
[0116] (4) Assume that continuous intelligent applications require 3 tops of computing power, periodic intelligent applications require 5 tops, and passively triggered intelligent applications require 3 tops.
[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 attributes of periodic intelligent applications are<periodic,2,10s,5tops,500M> The attributes of passively triggered intelligent applications are<passivetrigger,3,2s,3tops,400M> .
[0119] As shown in the above process, before the triggering event occurs, persistent and periodic intelligent applications run in parallel on the aircraft. After the triggering event, the passively triggered intelligent application preempts the computing resources occupied by the persistent intelligent application. The remaining computing and storage resources in the airborne environment can still meet some sub-tasks of the persistent intelligent application, such as data preparation, model preparation, and hardware resource preparation, and satisfy the latest completion time requirements. Therefore, some sub-tasks of the persistent intelligent application continue to run in the airborne system until the passively triggered intelligent application releases its resources, at which point the remaining sub-tasks of the persistent intelligent application are started. This task scheduling method ensures the efficient and stable operation of the system.
[0120] The above are merely specific embodiments of this disclosure, but the scope of protection of this disclosure is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this disclosure should be included within the scope of protection of this disclosure. Therefore, the scope of protection of this disclosure should be determined by the scope of the claims.
Claims
1. A method for fine-grained computational task partitioning and scheduling for multi-intelligent applications, characterized in that, The method includes, S1: Define the five-tuple attributes of intelligent applications based on their actual operation to plan task execution sequences or scheduling sequences. Employ an 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 based on priority, required computing power, and latest completion time. These attributes include intelligent application category, intelligent application priority, latest completion time (LDT), required computing power (flops), and required parameters (params). Determine the computing resource parameters in the current environment for the airborne multiple intelligent applications, including computing power (flops). total and parameter quantity params total The intelligent application scheduling sequence generation algorithm includes, S301: Input the quintuple attributes of all smart applications that have conflicted and generate all possible scheduling sequences for all smart applications; S302: Determine whether the possible scheduling sequence of the intelligent application conforms to the priority principle, which is that high priority tasks are executed first, low priority tasks are executed last, and high priority tasks cannot be replaced by low priority tasks. If yes, proceed to step S303; otherwise, discard 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), required computing power (flops), and required parameters (params), satisfying: LDT of the entire scheduling sequence seq =max{LDT1,LDT2,……,LDT i ,……,LDT n } i∈[1,n] ; Overall flops of the scheduling sequence seq = ∑{flops1,flops2,……,flops i ,……,flops n } i∈[1,n] ; The overall parameters of the scheduling sequence seq =∑{params1, params2,……, params i ,……,params n } i∈[1,n] ; S304: Determine the latest completion time (LDT) of the intelligent application scheduling sequence. seq Does it meet the actual task time constraint α? If the latest completion time (LDT) is... seq If the actual task time requirement α is exceeded, discard the task and return to S302; if the actual task time requirement α is not exceeded, proceed to S305. S305: Calculate the computing power flops in the current environment. total and parameter quantity params total Determine whether the computing resources meet the overall computing power (flops) required by the intelligent application scheduling sequence. total If the condition is not met, discard the result and return to S302; if the condition is met, proceed to S306. S306: Determine whether the storage resources support the total number of parameters required for the intelligent application scheduling sequence (params) total If the condition is not met, discard the result and return to S302; if the condition is met, proceed to S307. S307: Determine whether the intelligent application scheduling sequence conforms to the category principle, wherein the category principle satisfies: not all intelligent applications in the scheduling sequence are of the trigger type. If it does not meet the requirement, discard and return to S302; if it does meet the requirement, proceed to S308. S308: Output intelligent application scheduling sequence; S2: Divide each intelligent application into five sub-tasks, including data preparation, model preparation, hardware resource preparation, reasoning, and result post-processing. Dividing each intelligent application into five sub-tasks in a fine-grained manner can improve the utilization rate of environmental resources when multiple intelligent applications are executed collaboratively. S3: Determine the five-tuple attributes of each subtask, and calculate the sequence of subtasks that can retain their running state in the terminated intelligent application based on the remaining resources of the airborne computing environment, thereby reducing the overall execution time delay of the airborne multi-intelligent application under the constraint of the actual execution time of the task.
2. The method according to claim 1, characterized in that, S3 includes, S401: Assign the quintuple attribute of the intelligent application subtask to the intelligent application subtask category. task Smart application subtask priority task Latest Completion Time (LDT) for Smart Application Subtasks task The computing power (flops) required for intelligent application subtasks task The number of parameters required for intelligent application subtasks (params) task The rules are defined as follows: Smart application subtask category task Inherit the category attributes corresponding to intelligent applications; Smart application subtask priority task Set priority levels; Latest Completion Time (LDT) for Smart Application Subtasks task The computing power (flops) required for intelligent application subtasks task The number of parameters required for intelligent application subtasks (params) task The inheritance principle is as follows: it is assumed that data preparation subtasks, model preparation subtasks, and hardware resource preparation subtasks account for 20-30% of the overall intelligent application, inference 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 remaining parameter capacity (params) left ; S403: The interrupted intelligent application subtask and its attributes are input into the subtask scheduling sequence generation algorithm. The interrupted intelligent application subtask is represented as: {task1,task2,……,task i ,……,task n } i∈[1,n] 。 3. The method according to claim 2, characterized in that, S403 includes, S501: Input the quintuple attributes of all conflicting smart application subtasks and generate all possible scheduling sequences for the smart application subtasks. S502: Determine whether the subtask scheduling sequence conforms to the priority principle. If yes, proceed to S503; otherwise, discard and return to S501. While discarding S1, determine S2. S503: Calculate the overall attributes of the subtask scheduling sequence, including the latest completion time (LDT), required computing power (flops), and required parameters (params). The calculation principles are as follows: LDT of the entire subtask scheduling sequence sub Represented as: LDT sub =max{LDT1,LDT2,……,LDT i ,……,LDT n } i∈[1,n] ; The overall subtask scheduling sequence Represented as: flops sub =∑{flops1,flops2,……,flops i ,……,flops n } i∈[1,n] ; The overall params of the subtask scheduling sequence sub =∑{param1, param2,……, param i ,……,param n } i∈[1,n] ; S504: Determine the latest completion time (LDT) of the subtask scheduling sequence. sub Does it meet the actual task time constraint α requirement? If yes, proceed to S505; otherwise, discard and return to S501. S505: Calculate the remaining computing power (flops) in the current environment. left and remaining accommodating parameters (params) left Determine whether the computing resources meet the overall computing power (flops) required for the intelligent application subtask scheduling sequence. left If yes, proceed to S506; otherwise, discard and return to S501. S506: Determine whether the storage resources support the total number of parameters required for the entire subtask scheduling sequence (params) left If yes, proceed to S507; otherwise, discard and return to S501. S507: Determine whether the subtask scheduling sequence conforms to the category principle. The subtask category principle is: not all subtasks in the scheduling sequence are allowed to have the category attribute of triggering. If so, proceed to S508; otherwise, discard and return to S501. S508: Output the subtask scheduling sequence and add it to the smart 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