A simulation scheduling method and system combining static scheduling and centralized scheduling

By combining static scheduling and centralized scheduling simulation scheduling methods, task priorities and dependency graphs are collected, and priority scoring functions and hierarchical dependency structures are constructed. This solves the balance problem between resource utilization and task real-time performance in high-complexity simulation systems, and realizes dynamic resource optimization and timely task response.

CN120849104BActive Publication Date: 2026-02-06CHINA STATE SHIPBUILDING CORP LTD RESEARCH INSTITUTE 719
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510926843.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-04
Publication Date
2026-02-06
Estimated Expiration
2045-07-04

AI Technical Summary

Technical Problem

In existing technologies, single static scheduling, dynamic scheduling, or centralized scheduling modes cannot achieve a balance between resource utilization, task real-time performance, and scheduling flexibility when facing highly complex simulation systems, resulting in resource idleness or overload, task delays, and computational bottlenecks.

Method used

A simulation scheduling method combining static scheduling and centralized scheduling is proposed. Task priority, periodicity, and dependency graph are collected through the task registration interface. A priority scoring function is constructed to generate a hierarchical dependency structure of tasks. Combined with resource binding and isolation, a static resource allocation mapping is formed. At the same time, task priority and scheduling order are dynamically updated through centralized scheduling.

Benefits of technology

It improves the resource utilization and real-time performance of the simulation system, enhances the flexibility of scheduling and the stability of the system, solves the bottleneck problem of the traditional single scheduling mode, and ensures timely response of critical tasks and dynamic optimization of resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120849104B_ABST
    Figure CN120849104B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of simulation scheduling combining static scheduling and centralized scheduling, and discloses a simulation scheduling method and system combining static scheduling and centralized scheduling, which comprises the following steps: the simulation scheduling method and system provided by the application perform pre-allocation of tasks and resource planning through static scheduling, so that the execution efficiency of periodic tasks is ensured; in combination with centralized scheduling, resource allocation is adjusted in real time during simulation operation, the phenomena of resource idling and overloading are minimized, and dynamic optimization of resources is realized; the static scheduling locks the execution sequence of key tasks in advance, so that the time constraint of deterministic tasks is ensured; the centralized scheduling can globally coordinate burst tasks, adjust the task priority in real time, ensure timely response of emergency tasks, and thus the real-time reaction capability of the simulation system is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of simulation scheduling technology combining static scheduling and centralized scheduling, in particular to a simulation scheduling method and system combining static scheduling and centralized scheduling. BACKGROUND

[0002] In the prior art, the task scheduling strategy of a high-complexity simulation system directly affects the running efficiency and resource utilization of the system. At present, the common scheduling modes mainly include three modes of static scheduling, dynamic scheduling and centralized scheduling.

[0003] Static scheduling is a strategy of pre-planning the task execution order and resource allocation before the simulation task is executed. Its advantages are low scheduling overhead and predictable execution, and it is suitable for periodic tasks and scenes with stable resource demand. However, the limitation of static scheduling is that it cannot dynamically respond to changes in system state, and when facing sudden tasks or resource fluctuations, it often leads to task delay or resource waste, making it difficult to meet the needs of high-complexity simulation environments.

[0004] Dynamic scheduling adjusts the task order and resource allocation according to the real-time state of the simulation running, and has higher flexibility. However, this way needs real-time schedulability testing and complex calculation logic, increasing the computational burden of the system running time, especially in simulation environments where tasks frequently change, which may cause scheduling delay, thereby affecting the real-time response capability of the task.

[0005] Centralized scheduling manages and allocates all task execution and resource usage through a global scheduling center. In simulation systems with more resource conflicts and complex task dependencies, centralized scheduling can optimize resource allocation from a global perspective and reduce resource conflicts. However, its main defects are:

[0006] The computing pressure of the global scheduling node is large, which may become a bottleneck of system performance.

[0007] When tasks are frequently updated, the computational complexity of global scheduling significantly increases, affecting the real-time response capability of the system.

[0008] In the prior art, single static scheduling, dynamic scheduling or centralized scheduling mode in the face of high-complexity simulation systems has the problem that static scheduling is difficult to dynamically adjust resource allocation, leading to resource idling or overload. Dynamic scheduling and centralized scheduling are limited by computing capacity and cannot fully utilize all resources during load peaks.

[0009] Dynamic scheduling and centralized scheduling may delay task scheduling due to heavy real-time computing burden. Static scheduling cannot quickly respond to sudden tasks.

[0010] Static scheduling lacks flexibility and has limited adjustment space when dealing with complex task dependency relationships.

[0011] In summary, a single scheduling strategy cannot balance resource utilization, task real-time performance, and scheduling flexibility. Therefore, there is an urgent need for a hybrid scheduling strategy that combines the deterministic guarantee of static scheduling and the global coordination ability of centralized scheduling, so as to fully exert their respective advantages and improve the comprehensive performance of the simulation system. SUMMARY

[0012] To solve the above technical problems, the present application provides the following technical solutions: A simulation scheduling method combining static scheduling and centralized scheduling, comprising: collecting task priority information, task periodicity information and task dependency graph through a task registration interface.

[0013] Based on the task periodicity and the task dependency graph, a priority scoring function is constructed, and a hierarchical decomposition algorithm driven by the priority score is used to generate a task layered dependency structure by establishing a directed acyclic graph structure according to the scoring results. According to the task layered dependency structure and the task priority information, resource binding operation and resource isolation are performed to form a static resource allocation mapping.

[0014] According to the static resource allocation mapping and the task state change, the task priority is dynamically updated by centralized scheduling, and the scheduling adjustment operation is performed to realize the control of the task scheduling sequence when the task preemption condition is met.

[0015] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling according to the present application, wherein:

[0016] The collection of task priority information, task periodicity information and task dependency graph comprises:

[0017] A task registration interface is constructed to collect the structured description information of the task. The task priority information is collected by submitting the urgency level label and the task type identifier when the task is registered, and the average execution time and the resource occupation ratio recorded in the historical task execution record are combined to complete the priority field archiving in the database.

[0018] The task periodicity information is obtained by analyzing the scheduling time field in the task configuration file, and combining the statistical results of the task scheduling time stamp in the historical scheduling log to determine whether the task is a fixed periodic task, a variable periodic task or a single trigger task.

[0019] The task dependency graph information is established by extracting the dependency task ID field declared in the task registration interface, combining the resource access field to establish the dependency edge, automatically constructing a directed acyclic graph structure according to the dependency relationship, and each node in the graph corresponds to a simulation task, and each edge represents a pre-dependence relationship.

[0020] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling, the task priority information, the task periodicity information and the task dependency graph further include: when it is detected that the task has multiple in-degree and out-degree, the task is marked as a critical path candidate node through a structure checking mechanism, all collected information is written into a task initial state table and static scheduling initialization is performed, and the information is used as an input of priority score calculation and topology level calculation.

[0021] The structured description information includes task identification, task type, historical running parameter, scheduling priority label, periodicity configuration field and dependent task identification field.

[0022] The dependent task identification field includes a dependent task ID field.

[0023] The scheduling time field includes a periodicity expression and an inter-frame interval parameter.

[0024] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling, the construction of the priority score function includes:

[0025] Based on the task periodicity information, the task dependency graph structure information and the task type and resource request parameter collected by the task registration interface, a multi-factor calculation model for task scoring is defined.

[0026] The periodicity weight value, the resource load weight value and the dependency intensity value of the task are sequentially calculated according to the score function, and the priority score function is calculated according to the three score factors to obtain the final priority score.

[0027] The periodicity weight value of the task includes a fixed periodicity task set as a reference value 1, a variable periodicity task is calculated according to the actual average periodicity to obtain a normalized weight, and a single task is marked as 0.5.

[0028] The resource load weight value includes a value calculated by a task historical resource usage record.

[0029] The record content includes CPU utilization, memory occupancy and average execution time, and the weighted average method is used to sum up after normalization processing of each index.

[0030] The dependency strength value comprises: determining by a task in a topological structure of a directed acyclic graph, determining a key degree of the task in a task flow by calculating an in-degree, an out-degree and a level marking value of a node, and the dependency strength value is related to a probability of the task appearing on a critical path, wherein the level marking value is a topological level number of the task node in the directed acyclic graph.

[0031] As a preferred solution of the simulation scheduling method combining static scheduling and centralized scheduling, the method comprises:

[0032] All completed simulation task nodes with priority scoring are graph constructed, and a directed acyclic graph is initialized by taking a directed edge of a task dependency graph as a construction basis.

[0033] In the construction process, the dependency task ID field of each task is taken as a starting point of an edge, and the current task is taken as a terminal point, and all task sets are sequentially traversed to complete the construction of a dependency graph topological structure.

[0034] A level decomposition algorithm driven by a priority scoring value is executed on the graph structure, and an initial level marking value is assigned to each task node, and when all predecessor nodes of the node have been assigned a level marking, the node level value is set to the maximum level value of all predecessor nodes plus one.

[0035] For a task set with the same level value, the priority scoring value is further sorted from high to low to mark an internal scheduling order, and when it is detected that the in-degree of the task node is greater than one and the path where the task is located is a convergence point of multiple paths, the task is identified as a critical path candidate task, and is recorded in a subsequent binding strategy.

[0036] A task hierarchical dependency structure table is generated, and the task hierarchical dependency structure table is taken as a basic input for resource binding and isolation rule allocation.

[0037] The task hierarchical dependency structure table comprises: the task hierarchical dependency structure table has a record item, and each record item comprises a task number, a level number where the task is located, a scheduling order number in the internal layer, critical path marking confirmation information, a direct predecessor task list and a direct successor task list.

[0038] As a preferred solution of the simulation scheduling method combining static scheduling and centralized scheduling, the method comprises:

[0039] Resource allocation initialization processing is performed on each task node, and firstly, it is judged whether the current task is on a critical path, if the critical path marking field is yes, the task is submitted to resource binding as a binding candidate task.

[0040] Resource binding selects the bindable computing unit with the lowest load level and the longest continuous available time window from the static resource pool according to the resource requirement field of the task, and records the unique binding relationship between the task and the resource unit, indicating that the resource cannot be migrated in the life cycle of the task.

[0041] When the scheduler detects that the current critical task is in a blocked state for more than a timeout threshold, there is a higher priority critical task currently, and the shared resource conflict cannot be avoided, the controlled release mechanism is triggered to temporarily release the critical task resources on the premise of saving all state information.

[0042] For non-critical path tasks, it is determined whether there is a resource conflict in the corresponding level, the degree of conflict is compared by comparing the overlap of each index in the resource request vector, and when the degree of conflict exceeds a set threshold, the isolation mechanism is triggered to reassign the task to the remaining computing unit.

[0043] For tasks that have been reassigned computing units, the scheduler will update the current resource binding record in the task resource mapping table synchronously, keep the initial static resource allocation mapping as a reference state, and mark the resource migration result in the form of resource adjustment record in the execution state mapping.

[0044] During the execution of the binding and isolation process, the nodes with high resource idle rate and no critical task occupation are preferentially selected in combination with the scheduling sequence number and resource distribution diagram of the current level.

[0045] The resource requirement field includes the number of CPU cores, the memory capacity, and the number of I / O channels.

[0046] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling, the forming of the static resource allocation mapping comprises:

[0047] A task resource mapping table is constructed as a static resource allocation mapping record, the static resource allocation mapping is written into the scheduling control table in the simulation initialization stage, and is used as the initial state input of the centralized scheduler, and is not modified during the execution until the dynamic rescheduling process is triggered by the scheduler.

[0048] In the static scheduling execution stage, local resource adjustment operation is triggered due to resource conflict, the temporary migration state of the task is recorded synchronously, and the change content is stored in the resource adjustment record, and the initial static mapping content is not directly changed, and is uniformly combined and updated when entering the dynamic scheduling stage.

[0049] The trigger condition for switching from static scheduling to centralized scheduling includes that the difference between the actual start time and the planned start time of the task exceeds the preset start delay, the resource conflict rate exceeds the set conflict rate, the set conflict rate is derived from the average value of the historical resource conflict rate, the task marked as a critical path, and the priority score fluctuates greatly during the running period.

[0050] The static resource allocation mapping record includes a task ID, a bound or allocated resource unit number, a resource isolation flag, a resource conflict determination result, an allocation logic path identification field, and a binding reason code.

[0051] The resource isolation flag includes an indication of whether the current task is re-allocated to a non-original binding computing node due to resource conflict, and a value of 1 indicates that the task has been isolated, and a value of 0 indicates that the original binding resource is maintained. The resource adjustment in the dynamic scheduling stage only updates the execution state mapping, and the static mapping is only generated at the simulation initialization.

[0052] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling, the method comprises the following steps:

[0053] The centralized scheduler collects task execution state data from each execution node at fixed time intervals and event triggers, and the scheduler dynamically adjusts the current priority value of each task using an update function based on the state data.

[0054] The state data includes the current waiting time of the task, the task resource occupation, the task blocking state identification, and the dependent task completion state marker.

[0055] The value range of the set weight parameter is set in the [0, 0.5] interval, because the maximum contribution of the dynamic adjustment item should not exceed 50% of the total score, and the default recommended initial value is set to δ t = 0.2 and δ r = 0.1 according to the analysis of the simulation task scheduling data.

[0056] As a preferred scheme of the simulation scheduling method combining static scheduling and centralized scheduling, the method comprises the following steps:

[0057] After generating the updated task priority queue, the scheduler compares the priority value of the task being executed with the current priority value of each task in the waiting queue that has not been executed, and when the scheduler detects that the current priority value of the waiting execution task is higher than the priority value of the executing task, the priority difference between the two exceeds the preset preemption judgment threshold, and the resources required by the high-priority task are available at the current time, a scheduling preemption operation is triggered.

[0058] The preemption operation includes setting the preemption judgment threshold to a range of [0.1, 1.0], allowing the scheduler to dynamically adjust the threshold based on the task type configuration, pausing the execution of the currently executing task, saving the task's context state information to the task state storage area, and the scheduler assigning high-priority tasks to the execution queue of the current resource node and prioritizing task execution.

[0059] The saved information includes the count value of the current simulation round of the task, the current cache content, and a data snapshot of key variables.

[0060] When the preempted task is a critical path task, the scheduler will only trigger the controlled release mechanism and fully record the task context state information if the resource conflict is unavoidable and the scheduling of high-priority critical tasks fails, so that the task can resume execution first after the resources are released.

[0061] Once a high-priority task is completed, the released computing resources will be returned to the resource pool. The scheduler will then load the execution status of the preempted task from the task state storage area based on the previously saved context state information and add the task back to the tail of the original resource node's execution queue for continued execution.

[0062] After completing the preemption and recovery operations, the scheduler automatically updates the task scheduling relationship graph and the resource allocation mapping relationship table to maintain the consistency of task scheduling order, resource binding status and task context.

[0063] When the current priority order of multiple tasks within the same priority level changes due to dynamic changes in priority scores, the scheduler will re-evaluate the scheduling order of tasks within that level and adjust their order in the scheduling queue to ensure that the scheduling behavior is consistent with the current priority scores. Internal rearrangement is triggered only when the priority difference between tasks within the same level exceeds θ / 2.

[0064] A simulation scheduling system combining static scheduling and centralized scheduling is characterized by comprising: a task information acquisition and initialization module, a static scheduling modeling and resource mapping module, and a centralized dynamic scheduling and scheduling adjustment module.

[0065] The task information collection and initialization module is used to collect task priority information, task periodicity information, and task dependency graph through the task registration interface.

[0066] The static scheduling modeling and resource mapping module is used to construct a priority scoring function based on task periodicity and task dependency graph, generate a hierarchical task dependency structure by establishing a directed acyclic graph structure and combining it with a priority scoring-driven hierarchical decomposition algorithm based on the scoring results, and perform resource binding operations and resource isolation based on the hierarchical task dependency structure and task priority information to form a static resource allocation mapping.

[0067] The centralized dynamic scheduling and scheduling adjustment module is used for dynamically updating task priorities through centralized scheduling according to the static resource allocation mapping and task state changes, and performing scheduling adjustment operation to realize control of task scheduling sequence when a task preemption condition is met.

[0068] The present application has the following advantages: through static scheduling, pre-allocation and resource planning of tasks are performed to ensure the execution efficiency of periodic tasks; in combination with centralized scheduling, resource allocation is adjusted in real time during simulation running to minimize resource idling and overload and realize dynamic optimization of resources.

[0069] Static scheduling locks the execution sequence of key tasks in advance to ensure the time constraints of deterministic tasks; centralized scheduling can globally coordinate burst tasks and adjust task priorities in real time to ensure timely response of emergency tasks, thereby improving the real-time reaction capability of the simulation system.

[0070] Static scheduling provides a basic framework for task execution, while centralized scheduling dynamically adjusts according to task dependency relationships and resource changes to realize the combination of rigidity and flexibility; the hierarchical scheduling mechanism can take into account stable execution of long-period tasks and flexible response of short-period tasks to improve the overall adaptability of the system.

[0071] In view of the single-point bottleneck problem of traditional centralized scheduling, the present application adopts a hierarchical resource management architecture to disperse the scheduling pressure of tasks to different level nodes, reduce the calculation burden of the global scheduling node, thereby relieving the calculation bottleneck and improving the parallel processing capability of the system.

[0072] In combination with the global perspective of the centralized scheduling strategy, the present application introduces a priority preemption mechanism to dynamically adjust the execution sequence of tasks according to the urgency of the tasks and resource conflict situations, ensure the priority execution of key tasks, and guarantee the orderly progress of the simulation process.

[0073] Static scheduling guarantees the basic stability of task execution, while centralized scheduling realizes flexible regulation of tasks and resources on this basis to take into account the stable operation and dynamic adaptability of the system; the modular scheduling logic is convenient for extending and adjusting the scheduling strategy according to the complexity of the simulation system.

[0074] In summary, through the deep cooperation of static scheduling and centralized scheduling, the present application not only improves the resource utilization rate and task real-time performance of the simulation system, but also enhances the flexibility of scheduling and the stability of the system, solves the bottleneck problem in the traditional single scheduling mode, and provides an innovative solution for efficient operation of complex simulation systems. BRIEF DESCRIPTION OF DRAWINGS

[0075] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments description. Obviously, the drawings in the following description only some of the embodiments of the present application, and for those skilled in the art, other drawings can be obtained without creative labor based on these drawings. Among them:

[0076] Figure 1 The overall flowchart of the simulation scheduling method and system combining static scheduling and centralized scheduling provided for the first embodiment of the present application is shown in the following figure: DETAILED DESCRIPTION

[0077] In order to make the above-mentioned purposes, features and advantages of the present application more apparent and easy to understand, the specific embodiments of the present application will be described in detail below with reference to the drawings of the specification. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor should be within the scope of protection of the present application.

[0078] Embodiment 1, refer to Figure 1 For an embodiment of the present application, a simulation scheduling method combining static scheduling and centralized scheduling is provided, which comprises:

[0079] S1: Collect task priority information, task periodicity information and task dependency graph through a task registration interface.

[0080] The task registration interface is constructed to collect the structured description information of the task. The task priority information is collected by collecting the emergency level label and the task type identifier submitted by the task when registering, and combining the average execution time and the resource occupation ratio recorded in the historical task execution record to complete the priority field archiving in the database.

[0081] The task periodicity information is collected by analyzing the scheduling time field in the task configuration file, and combining the statistical results of the task scheduling time stamp in the historical scheduling log to determine whether the task is a fixed period task, a variable period task or a single trigger task.

[0082] The task dependency graph information is collected by extracting the dependent task ID field declared in the task registration interface, establishing the dependent edge in combination with the resource access field, automatically constructing a directed acyclic graph structure according to the dependency relationship, and each node in the graph corresponds to a simulation task, and each edge represents a pre-dependent relationship.

[0083] Further, when it is detected that the task has multiple in-degree and out-degree, the task is marked as a critical path candidate node through a structure checking mechanism, all collected information is written into the task initial state table and static scheduling initialization is performed, which serves as the input for priority scoring and topology level calculation.

[0084] The structured description signal includes task identification, task type, historical running parameter, scheduling priority label, period configuration field and dependent task identification field.

[0085] The scheduling time field includes period expression and frame interval parameter.

[0086] S2: Based on the task periodicity and the task dependency graph, a priority scoring function is constructed, and according to the scoring result, a directed acyclic graph structure is established and a priority scoring driven hierarchical decomposition algorithm is used to generate a task hierarchical dependency structure. According to the task hierarchical dependency structure and the task priority information, resource binding operation and resource isolation are performed to form a static resource allocation mapping.

[0087] Based on the task periodicity information, the task dependency graph structure information, and the task type and resource request parameters collected through the task registration interface, a multi-factor calculation model for task scoring is defined.

[0088] The period weight value, the resource load weight value and the dependency strength value of the task are calculated in sequence according to the scoring function, and according to the three scoring factors, a priority scoring function is used to calculate the final priority score.

[0089] One preferred solution of the priority scoring function calculation is:

[0090]

[0091] Wherein, represents the final static score result of task i, and α, β, γ represent the priority scoring weight.

[0092] Further, the period weight value of the task includes that the period weight value is calculated according to the scheduling interval parameter declared in the task configuration, the fixed period task is set to a reference value of 1, the variable period task is normalized according to the actual average period, and the single task is marked as 0.5.

[0093] One preferred solution of the period weight value calculation is:

[0094] F 周期-固定i = 1

[0095]

[0096] F 周期-单次i = 0.5

[0097] Wherein, F 周期-固定i represents the fixed period task periodicity score value of task i, P avg represents the historical average scheduling period of task i, in seconds, and F 周期-变动i represents the period score value of the variable period task, and F周期-单次i The single task fixed assignment period score is represented.

[0098] The resource load weight value is calculated based on the task history resource usage record.

[0099] One preferred solution for calculating the resource load weight value is:

[0100] F 资源i = w1·CPU i + w2·Memory i + w3·Time i

[0101] Wherein, CPU i represents the average CPU occupancy of task i, Memory i represents the average memory occupancy, Time i represents the average execution time, F 资源i represents the resource load score value, w1, w2, w3 represents the resource weighting coefficient set by the scheduler.

[0102] The record content includes CPU utilization, memory occupancy and average execution time, and the weighted average method is used after normalization processing of each index.

[0103] The dependency strength value is determined by the topology of the task in the directed acyclic graph, and the key degree of the task in the task flow is determined by calculating the in-degree, out-degree and level mark value, the dependency strength value is related to the probability of the task appearing on the critical path, wherein the level mark value is the topological level number of the task node in the directed acyclic graph.

[0104] One preferred solution for calculating the dependency strength value is:

[0105]

[0106] Wherein, in-degree i represents the number of direct predecessors of task i, out-degree i represents the number of direct successors of task i, level i represents the level number of task i in the directed acyclic graph, represents the dependency structure score value, k1, k2, k3 represents the dependency strength weighting factor.

[0107] All completed simulation task nodes with priority score are graph constructed, and the directed edge of the task dependency graph is taken as the construction basis to initialize the generation of the directed acyclic graph.

[0108] In the construction process, the dependency task ID field of each task is taken as the starting point of the edge, and the current task is taken as the terminal point, and all task sets are traversed in turn to complete the dependency graph topology construction.

[0109] A priority score value driven hierarchical decomposition algorithm is performed on the graph structure, and an initial hierarchical label value is assigned to each task node. When all predecessor nodes of the node have been assigned a hierarchical label, the node hierarchical value is set to the maximum hierarchical value of all predecessor nodes plus one.

[0110] One preferred solution for assigning an initial hierarchical label value to each task node is:

[0111]

[0112] wherein L i represents the hierarchical value of task i in the task graph, represents the hierarchical value of the predecessor task j of task i.

[0113] For a task set with the same hierarchical value, further sorting is performed according to the priority score value from high to low to mark the internal scheduling order. When it is detected that the in-degree of the task node is greater than one and the path where the task is located is a convergence point of multiple paths, the task is identified as a critical path candidate task, and is recorded in the subsequent binding strategy.

[0114] If multiple tasks are in the same hierarchical level, the scheduling order is arranged according to the total priority score from high to low.

[0115] A task hierarchical dependency structure table is generated, and the task hierarchical dependency structure table is used as the basic input for resource binding and isolation rule allocation.

[0116] The task hierarchical dependency structure table includes a record item in the task hierarchical dependency structure table, and each record item contains a task number, a hierarchical number, an internal scheduling order number in the layer, critical path label confirmation information, a direct predecessor task list, and a direct successor task list.

[0117] Resource allocation initialization processing is performed on each task node. First, it is determined whether the current task is in the critical path. If the critical path label field is yes, the task is submitted to the resource binding as a binding candidate task.

[0118] The resource binding selects a bindable computing unit with a continuous available time window and the lowest load level from the static resource pool according to the resource demand field of the task, and records the unique binding relationship between the task and the resource unit, and identifies that the resource cannot be migrated within the task life cycle.

[0119] For non-critical path tasks, it is evaluated whether there is a resource conflict in the hierarchical level. By comparing the overlap of each index in the resource request vector, if the conflict degree exceeds the set threshold, the isolation mechanism is triggered, and the task is re-assigned to the remaining computing unit.

[0120] A preferred solution for comparing the overlap of each index in the resource request vector is:

[0121]

[0122] wherein, represents the resource request conflict degree of task i and task j, R i,k represents the request value of task i in resource dimension k, R j,k represents the request value of task j in resource dimension k, and n represents the total number of resource types.

[0123] In the execution of the binding and isolation process, in combination with the scheduling order number of the current level and the resource distribution map, the node with high resource idle rate and without key task occupation is preferentially selected.

[0124] The resource requirement field includes the number of CPU cores, memory capacity, and the number of I / O channels.

[0125] The task resource mapping table is constructed as a static resource allocation mapping record. The static resource allocation mapping is written into the scheduling control table in the simulation initialization phase and serves as the initial state input of the centralized scheduler. In the execution process, it is not modified until the dynamic rescheduling process is triggered by the scheduler.

[0126] The static resource allocation mapping record includes the task ID, the bound or allocated resource unit number, the resource isolation flag, the resource conflict determination result, the allocation logic path identification field, and the binding reason code.

[0127] S3: According to the static resource allocation mapping and the task state change, the centralized scheduling dynamically updates the task priority, and performs scheduling adjustment operation to realize control task scheduling sequence when the task preemption condition is met.

[0128] The centralized scheduler collects task execution state data from each execution node at fixed time intervals and event triggering. The scheduler dynamically adjusts the current priority value of each task in real time according to the state data using an update function.

[0129] A preferred solution for dynamically adjusting the current priority value of each task is:

[0130]

[0131] wherein, represents the current priority value of task i, represents the current waiting time of task i, represents the resource conflict intensity between task i and other tasks, and δ t , δ r represents the dynamic adjustment weight parameter.

[0132] To ensure that the static score is dominant in the initial decision of scheduling, while also considering the response ability of dynamic adjustment, the value of the weight parameter δ t , δ r is set as follows:

[0133] The maximum contribution of the dynamic adjustment item should not exceed 50% of the total score. The value range of δ t , δ r is set in the interval [0, 0.5]. According to the analysis of the simulation task scheduling data, the optimal average completion time and resource utilization correspond to the weight in the interval [0.08, 0.25]. The default recommended initial value is set as δ t = 0.2, δ r = 0.1, which is in the middle area between performance and stability, so that the initial static score occupies the dominant weight.

[0134] When in the state of task accumulation or frequent resource competition, the scheduler can dynamically adjust the weight parameter value based on the load state, and moderately increase it without exceeding the maximum threshold.

[0135] All weight parameter adjustment strategies should be recorded in the scheduler configuration table and can be manually revised or automatically recalibrated through the configuration interface.

[0136] State data includes the current waiting time of the task, the task resource occupation situation, the task blocking state identifier and the dependent task completion state marker.

[0137] After the scheduler generates the updated task priority queue, it compares the priority value of the task currently being executed with the current priority value of each task in the waiting queue that has not been executed. When the scheduler detects that the current priority value of the waiting execution task is higher than the priority value of the executing task, and the priority difference between the two exceeds the pre-set preemption judgment threshold, and the resources required by the high-priority task are available at the current time, the scheduling preemption operation is triggered.

[0138] One preferred solution for judging the triggering of the scheduling preemption operation is:

[0139]

[0140] wherein, represents the current priority of task j in the waiting queue, represents the priority of the currently executing task i, and θ represents the preemption judgment threshold set by the scheduler.

[0141] The preemption operation includes setting the value range of the preemption judgment threshold to [0.1, 1.0], allowing the scheduler to dynamically adjust the threshold based on the task type configuration, suspending the running of the task currently being executed, and saving the context state information of the task to the task state storage area, the scheduler assigns a high-priority task to the execution queue of the current resource node, and preferentially schedules the task execution.

[0142] Setting the preemption judgment threshold includes that since the task priority scoring function adopts a normalization model, the priority values of all tasks are limited within the [0, 1] interval, and the priority difference between two tasks is at most 1.0, so the upper limit of the threshold is set to 1.0.

[0143] Through the scheduling stability experiment data, when less than 0.1, the average preemption frequency per thousand tasks increases by more than 20%, and the average resource idle time increases by 12%, so the minimum value is limited to ensure the scheduling efficiency, and the lower limit of the threshold is set to 0.1.

[0144] The saved information includes the count value of the current simulation round of the task, the current cache content, and the data snapshot of the key variables.

[0145] When the high-priority task execution is completed, the released computing resources will return to the resource pool, and the scheduler loads the execution state of the preempted task from the task state storage area according to the previously saved context state information, and re-adds the task to the tail of the execution queue of the original resource node to continue execution.

[0146] The scheduler automatically updates the task scheduling relationship diagram and the resource allocation mapping relationship table after completing the preemption and recovery operations, and maintains the consistency of the scheduling order between tasks, the resource binding state, and the task context.

[0147] In the above embodiment, a simulation scheduling system combining static scheduling and centralized scheduling is also included, specifically: a task information acquisition and initialization module 100, a static scheduling modeling and resource mapping module 200, and a centralized dynamic scheduling and scheduling adjustment module 300.

[0148] The task information acquisition and initialization module 100 is used to acquire task priority information, task periodicity information, and task dependency graph through a task registration interface.

[0149] The static scheduling modeling and resource mapping module 200 is used to construct a priority scoring function based on task periodicity and task dependency graph, generate a task hierarchical dependency structure by establishing a directed acyclic graph structure and combining a priority score-driven hierarchical decomposition algorithm according to the scoring result, perform resource binding operation and resource isolation according to the task hierarchical dependency structure and task priority information, and form a static resource allocation mapping.

[0150] The centralized dynamic scheduling and scheduling adjustment module 300 is configured to dynamically update the task priority through centralized scheduling according to the static resource allocation mapping and the task state change, and perform a scheduling adjustment operation to realize control of the task scheduling sequence when the task preemption condition is met.

[0151] Embodiment 2, referring to the simulation scheduling combined with static scheduling and centralized scheduling, is an embodiment of the present application, which provides a simulation scheduling method and system combined with static scheduling and centralized scheduling. In order to verify the beneficial effects of the present application, scientific demonstration is carried out through simulation experiments.

[0152] The experimental environment is deployed on a resource pool simulation platform supporting Docker isolation, and a fixed number of computing units and a unified task scheduling interface are set. In the simulation system, the task registration interface is first initialized, and the tasks submit information in a structured field form through the interface, including: task identification, task type, emergency level, scheduling period configuration, historical execution record, and dependent task ID.

[0153] In the task registration stage, the scheduling time field is parsed, and the timestamp is extracted from the scheduling log to calculate whether the task has periodicity and its type. The dependent ID field is analyzed to build a directed acyclic graph of simulation tasks, where each node is a task and the edge represents the dependency constraint relationship. Further, a structure checking mechanism is introduced to mark the task nodes with both in-degree and out-degree greater than 1 as critical path candidate tasks.

[0154] The task scoring stage is based on three factors. The period factor evaluates the response time weight according to the period configuration, the resource factor is obtained by normalized and weighted average processing based on historical resource records, and the dependency factor is obtained by statistical analysis of the in-degree, out-degree and level mark value of the task graph structure. The final score is used for hierarchical decomposition and ordering in static scheduling, and the tasks are assigned with scheduling level numbers and ordered in descending order according to the score in the same level, and finally a task layered dependency structure table is formed.

[0155] Then enter the resource binding stage, the critical path tasks are preferentially bound to the computing nodes with the longest continuous idle time and the smallest load; the non-critical path tasks are isolated according to the resource conflict degree. After successful binding, a task-resource mapping table is generated as the input of static scheduling.

[0156] In this experiment, the level, priority and resource binding of different tasks in the scheduling graph under the scoring mechanism are compared, and the default scheduling mode without the scoring mechanism is also compared experimentally. The experimental data are shown in Table 1.

[0157] Table 1 Experimental data table

[0158]

[0159]

[0160] According to the experimental data in the above table, 8 typical simulation tasks are collected, covering different types and scheduling characteristics. First, from the periodicity analysis, the average period of the fixed period task is about 15.4 seconds, and the score is directly set to 1; while the average period of the variable period task is about 42.6 seconds, and the score is normalized between 0.2-0.4. This reflects that the priority support of periodicity score to real-time task is significant.

[0161] In the resource load analysis, the CPU occupancy rate of the task is distributed in the range of 12.5%-85.3%, and the memory occupancy is in the range of 130-1900MB. Combined with the average execution time, it can be seen that in the priority score sorting, the priority of the task with small resource consumption and fast response is obviously improved. The task dependency structure further enhances the discrimination of the score model, especially for the tasks with high out-degree, deep level, and complex in-degree, whose scores are compensated and placed in high level in the task scheduling graph, which helps to identify the subsequent critical path.

[0162] The scheduling order under the score model is compared with the default first registration first execution mode, and the experimental results show that: after introducing the multi-factor score and structure driven hierarchical decomposition, the overall execution order of the task is closer to the optimal path of the dependency constraint, the system resource utilization rate is improved by about 14.6%, and the average response time of the critical path task is shortened by about 19.3%. Especially in the frequent task conflict scene, the isolation strategy reasonably shunts the tasks to different nodes through task score, effectively reducing the scheduling blocking rate and task queuing conflict.

[0163] Embodiment 3, referring to the simulation scheduling combined with static scheduling and centralized scheduling, is an embodiment of the present application, which provides a simulation scheduling system combined with static scheduling and centralized scheduling, comprising: a task information acquisition and initialization module 100, a static scheduling modeling and resource mapping module 200, and a centralized dynamic scheduling and scheduling adjustment module 300.

[0164] S4: The task information acquisition and initialization module 100 is used to acquire task priority information, task periodicity information, and task dependency graph through a task registration interface.

[0165] It should be noted that the task information acquisition and initialization module 100 outputs task priority information, task periodicity information, task dependency graph structure, and structured task initialization state table.

[0166] S5: The static scheduling modeling and resource mapping module 200 is configured to construct a priority score function based on the task periodicity and the task dependency graph, generate a task hierarchical dependency structure by establishing a directed acyclic graph structure and combining a priority score driven hierarchical decomposition algorithm according to the score result, and perform resource binding and resource isolation according to the task hierarchical dependency structure and the task priority information, thereby forming a static resource allocation mapping.

[0167] It should be further noted that the static scheduling modeling and resource mapping module 200 provides the task score value, the task topology hierarchical table, and the static resource binding table to the centralized dynamic scheduling and scheduling adjustment module 300 by constructing a multi-factor priority score function, constructing a directed acyclic graph and performing hierarchical decomposition according to the score result, constructing a task hierarchical dependency structure table, performing resource binding and conflict isolation, and generating a static resource allocation mapping.

[0168] S6: The centralized dynamic scheduling and scheduling adjustment module 300 is configured to dynamically update the task priority by centralized scheduling according to the static resource allocation mapping and the task state change, and perform scheduling adjustment to realize control of the task scheduling sequence when the task preemption condition is met.

[0169] It should be further noted that the static resource mapping is received as an initial state, the task state information is collected at a fixed time, the current priority is dynamically updated according to the state value, the scheduling preemption judgment logic is triggered, and if the condition is met, the task switching, context saving and restoration are performed.

[0170] If the functions are realized in the form of software function units and sold or used as independent products, they can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application or the part of the prior art that essentially contributes or the part of the technical solutions can be embodied in the form of a software product, which is stored in a storage medium and includes instructions for making a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the embodiments of the present application. The aforementioned storage medium includes a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various program code storage media.

[0171] The logic and / or steps represented in the flow diagrams or otherwise described herein, for example, can be considered as a sequence of executable instructions, and can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this specification, a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.

[0172] More specific examples (a non-exhaustive list) of the computer-readable medium include the following: an electrical connection (electronic) having one or more wires, a portable computer diskette (magnetic), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium can also be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, for example via an optical scanner, then compiled, interpreted, or otherwise processed, and stored in a computer memory in a form that can be later executed by a computer. In some embodiments, the machine-readable medium can be a computer- readable storage medium.

[0173] It should be understood that aspects of the application can be implemented in hardware, software, firmware or combinations thereof. In the above embodiments, various steps or methods can be implemented in software or firmware that is stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, and in another embodiment, any of the following can be used: discrete logic circuitry having logic gates for implementing logic functions upon data signals, application specific integrated circuits having appropriate combinational logic gates, programmable gate arrays (PGA), field programmable gate arrays (FPGA), and so forth. It should be noted that the foregoing embodiments are merely examples of implementations of the technical solutions of the present application and are not limiting. Although the present application has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application can be modified or replaced by equivalents without departing from the spirit and scope of the technical solutions of the present application, and all such modifications or replacements should be included in the scope of the claims of the present application.

[0174] It should be noted that the above examples are only used to illustrate the technical solutions of the present application but not limit the present application. Although the present application is described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application can be modified or equivalently replaced, without departing from the spirit and scope of the technical solutions of the present application, which should be covered in the scope of the claims of the present application.

Claims

1. A simulation scheduling method combining static scheduling and centralized scheduling, characterized in that, The application relates to a task scheduling method and device. The method comprises the following steps: Collecting task priority information, task periodicity information and a task dependency graph through a task registration interface; Based on the task periodicity and the task dependency graph, a priority scoring function is constructed, and a directed acyclic graph structure is established according to the scoring results, and a hierarchical decomposition algorithm driven by the priority scoring is used to generate a task hierarchical dependency structure; according to the task hierarchical dependency structure and the task priority information, a resource binding operation and resource isolation are performed to form a static resource allocation mapping; According to the static resource allocation mapping and the task state change, the task priority is dynamically updated through centralized scheduling, and when the task preemption condition is met, a scheduling adjustment operation is performed to realize control of the task scheduling sequence; The resource binding operation and resource isolation comprise the following steps: Resource allocation initialization processing is performed on each task node, firstly, it is judged whether the current task is on a critical path, if the critical path flag field is yes, the task is submitted to resource binding as a binding candidate task; The resource binding selects a bindable computing unit with a continuous available time window and the lowest load level from the static resource pool according to the resource requirement field of the task, and records the unique binding relationship between the task and the resource unit, and the resource cannot be migrated in the task life cycle; When the scheduler detects that the current critical task is in a blocked state for more than a timeout threshold, there is a higher priority critical task, and the shared resource conflict cannot be avoided, the controlled release mechanism is allowed to be triggered, and the critical task resource is temporarily released on the premise of saving all state information; For non-critical path tasks, it is judged whether there is a resource conflict in the corresponding level, the overlap degree of each index in the resource request vector is compared, if the conflict degree exceeds a set threshold, an isolation mechanism is triggered, and the task is re-assigned to the remaining computing unit; For the task re-assigned to the computing unit, the scheduler synchronously updates the current resource binding record in the task resource mapping table, keeps the initial static resource allocation mapping as a reference state, and marks the resource migration result in the form of a resource adjustment record item in the execution state mapping; During the binding and isolation process, the nodes with high resource idle rate and without critical task occupation are preferentially selected according to the scheduling sequence number of the current level and the resource distribution graph; 2. The method of claim 1, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The resource requirement field comprises CPU core number, memory capacity and I / O channel number. The task priority information, task periodicity information and task dependency graph are collected as follows: A task registration interface is constructed to collect the structured description information of the task; the task priority information is collected through the emergency level label and the task type identifier submitted by the task during registration, and the average execution time and the resource occupation ratio recorded in the historical task execution record are combined to complete the priority field archiving in the database; The task periodicity information is collected by analyzing the scheduling time field in the task configuration file, and combining the statistical results of the task scheduling time stamp in the historical scheduling log to judge whether the task is a fixed periodic task, a variable periodic task or a single trigger task. The task dependency graph information is established by extracting the dependent task ID field declared in the task registration interface, combining the resource access field, automatically constructing a directed acyclic graph structure according to the dependency relationship, and each node in the graph corresponds to a simulation task, and each edge represents a pre-dependent relationship.

3. The method of claim 2, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The task priority information, the task periodicity information and the task dependency graph further include: When it is detected that the task has multiple in-degree and out-degree, the task is marked as a critical path candidate node through a structure checking mechanism, all collected information is written into a task initial state table and static scheduling initialization is performed, and the information is used as an input for priority score calculation and topology level calculation; The structured description information includes a task identifier, a task type, historical running parameters, a scheduling priority label, a periodicity configuration field and a dependent task identifier field; The dependent task identifier field includes a dependent task ID field; The scheduling time field includes a periodicity expression and an interframe interval parameter.

4. The method of claim 3, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The priority score function is constructed by: Based on the task periodicity information, the task dependency graph structure information, the task type and the resource request parameters collected through the task registration interface, a multi-factor calculation model for task scoring is defined; According to the order of the score function, the periodicity weight value, the resource load weight value and the dependency strength value of the task are calculated in sequence, the priority score function is calculated according to the three score factors, and the final priority score is obtained; The periodicity weight value of the task includes a scheduling interval parameter declared in the task configuration, a fixed periodicity task is set as a reference value 1, a variable periodicity task is calculated according to the actual average periodicity, and a single task is marked as 0.5; The resource load weight value is calculated through the historical resource usage record of the task; The record content includes CPU utilization, memory occupancy and average execution time, and the weighted average method is used to sum up after normalization processing of each index; The dependency strength value includes the topology structure of the task in the generated directed acyclic graph, the key degree in the task flow is determined by calculating the in-degree, out-degree and level mark value, the dependency strength value is related to the probability of the task appearing in the critical path, and the level mark value is the topology level number of the task node in the directed acyclic graph.

5. The method of claim 4, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The task layered dependency structure is generated by: All simulation task nodes with completed priority scores are graph constructed, and a directed acyclic graph is initialized and generated through the directed edges of the task dependency graph as the construction basis; During the construction process, the dependent task ID field of each task is used as the starting point of the edge, the current task is used as the terminal point, all task sets are traversed in sequence, and the dependency graph topology structure construction is completed; The hierarchical decomposition algorithm driven by the priority score value is executed on the graph structure, an initial level mark value is assigned to each task node, and when all predecessor nodes of the node have been assigned a level mark, the node level value is set to one more than the maximum level value of all predecessor nodes. For the task set with the same hierarchical value, further sorted according to the priority score value from high to low, and the scheduling order in the internal is marked; when detecting that the in-degree of the task node is greater than one and the path where the task is located is a convergence point of multiple paths, the task is identified as a critical path candidate task, and recorded in the subsequent binding strategy; A task hierarchical dependency structure table is generated, and the task hierarchical dependency structure table is taken as a basic input for resource binding and isolation rule allocation; The task hierarchical dependency structure table includes that the task hierarchical dependency structure table has a record item, and each record item contains a task number, a hierarchical number, a scheduling order number in the internal, critical path marking confirmation information, a direct predecessor task list, and a direct successor task list.

6. The method of claim 5, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The forming of the static resource allocation mapping includes: A task resource mapping table is constructed as a static resource allocation mapping record, the static resource allocation mapping is written into a scheduling control table in a simulation initialization stage, and is taken as an initial state input for centralized scheduler scheduling, and is not modified in an execution process until a dynamic rescheduling process triggered by the scheduler; In a static scheduling execution stage, a local resource adjustment operation is triggered due to resource conflict, a temporary migration state of a synchronous recording task is recorded, and the change content is stored in a resource adjustment record item, the initial static mapping content is not directly changed, and is uniformly combined and updated when entering a dynamic scheduling stage; Triggering conditions for switching from static scheduling to centralized scheduling include that a difference between an actual start time and a planned start time of a task exceeds a preset start delay, a resource conflict rate exceeds a set conflict rate, the set conflict rate is derived from an average value of a historical resource conflict rate, a task marked as a critical path, and a priority score fluctuates greatly during a running period; The static resource allocation mapping record includes a task ID, a bound or allocated resource unit number, a resource isolation flag, a resource conflict determination result, an allocation logic path identification field, and a binding reason code; The resource isolation flag includes whether the current task is re-allocated to a non-original binding computing node due to resource conflict, and is valued as 1 to represent isolation and 0 to represent original binding resource.

7. The method of claim 6, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The updating of the task priority includes: The centralized scheduler collects task execution state data from each execution node at a fixed time interval and in an event triggered manner, the scheduler performs real-time evaluation on the allocated tasks according to the state data, and dynamically adjusts the current priority value of each task by using an update function; The state data includes a task current waiting time, a task resource occupation situation, a task blocking state identification, and a dependent task completion state marking.

8. The method of claim 7, wherein the simulation scheduling method combines static scheduling and centralized scheduling. The control of the task scheduling sequence includes: After generating the updated task priority queue, the scheduler compares the priority value of the task being executed with the current priority value of each task in the waiting queue, when the scheduler detects that the current priority value of the waiting execution task is higher than the priority value of the task being executed, and the priority difference between the two exceeds a preset preemption judgment threshold, and the required resources of the high priority task are available at the current time, a scheduling preemption operation is triggered; The preemption operation includes setting the value range of the preemption judgment threshold to [0.1, 1.0], allowing the scheduler to configure dynamic adjustment of the threshold based on the task type, suspending the running of the currently executing task, saving the context state information of the task to the task state storage area, assigning the high-priority task to the execution queue of the current resource node by the scheduler, and preferentially scheduling the task execution; The saved information includes the count value of the current simulation round of the task, the current cache content, and the data snapshot of the key variable; When the preempted task is a critical path task, the scheduler only triggers the controlled release mechanism and completely records the task context state information in the case that the resource conflict cannot be avoided and the high-priority critical task scheduling fails, so that the task is preferentially resumed for execution after the release of the resource. The resource of the critical path task is only allowed to be preempted by a higher-priority critical task, and the complete context state needs to be saved; When the high-priority task is executed, the released computing resource will return to the resource pool, the scheduler loads the execution state of the preempted task from the task state storage area according to the previously saved context state information, and re-adds the task to the tail of the execution queue of the original resource node for continuous execution; The scheduler automatically updates the task scheduling relationship diagram and the resource allocation mapping relationship table after completing the preemption and recovery operations, and maintains the consistency of the scheduling order between tasks, the resource binding state, and the task context; When the priority scores of multiple tasks in the same level change dynamically, the scheduler will reevaluate the scheduling order of the tasks in the level and adjust the order in the scheduling queue to ensure that the scheduling behavior is consistent with the current priority score.

9. A hybrid scheduling system combining static scheduling and centralized scheduling, using the method of any of claims 1-8, characterized in that: The method comprises a task information collection and initialization module (100), a static scheduling modeling and resource mapping module (200), and a centralized dynamic scheduling and scheduling adjustment module (300); The task information collection and initialization module (100) is configured to collect task priority information, task periodicity information, and a task dependency graph through a task registration interface; The static scheduling modeling and resource mapping module (200) is configured to construct a priority score function based on the task periodicity and the task dependency graph, generate a task layered dependency structure by establishing a directed acyclic graph structure and combining a priority score driven hierarchical decomposition algorithm according to the score result, perform resource binding and resource isolation according to the task layered dependency structure and the task priority information, and form a static resource allocation mapping; The centralized dynamic scheduling and scheduling adjustment module (300) is configured to dynamically update the task priority through centralized scheduling according to the static resource allocation mapping and the task state change, and perform scheduling adjustment operation to realize control of the task scheduling order when the task preemption condition is met.

Citation Information

Patent Citations

  • Task processing method and system for comprehensive resource management of intelligent monitoring system

    CN117608840A

  • Task execution method and device based on heterogeneous computing resources, equipment and medium

    CN119829259A