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 problem of balancing resource utilization and task real-time performance in high-complexity simulation systems, realizes dynamic resource optimization and flexible task scheduling, and improves the overall performance of the simulation system.
Patent Information
- Application Number
- CN202510926843.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-04
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2045-07-04
AI Technical Summary
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 idle or overloaded resources, task delays, and computational bottlenecks.
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 task dependency structure. Combined with resource binding and isolation mechanisms, a static resource allocation mapping is formed. At the same time, task priority and scheduling order are dynamically updated through centralized scheduling.
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 the efficient operation of the simulation system.
Smart Images

Figure CN120849104A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of simulation scheduling technology that combines static scheduling and centralized scheduling, specifically to a simulation scheduling method and system that combines static scheduling and centralized scheduling. Background Technology
[0002] In existing technologies, the task scheduling strategy of high-complexity simulation systems directly affects the system's operating efficiency and resource utilization. Currently, common scheduling methods mainly include three modes: static scheduling, dynamic scheduling, and centralized scheduling.
[0003] Static scheduling is a strategy that pre-plans the execution order and resource allocation of simulation tasks before they are executed. Its advantages include low scheduling overhead and predictable execution, making it suitable for periodic tasks and scenarios with stable resource requirements. However, static scheduling has limitations in that it cannot dynamically respond to changes in system state. When faced with sudden tasks or resource fluctuations, it often leads to task delays or resource waste, making it difficult to meet the needs of highly complex simulation environments.
[0004] Dynamic scheduling adjusts task order and resource allocation based on the real-time status during simulation runtime, offering greater flexibility. However, this approach requires real-time schedulability testing and complex computational logic, increasing the computational burden on the system. Especially in simulation environments where tasks frequently change, this can lead to scheduling delays, thereby affecting the real-time responsiveness of tasks.
[0005] Centralized scheduling manages and allocates the execution and resource usage of all tasks through a global scheduling center. In simulation systems with numerous resource conflicts and complex task dependencies, centralized scheduling can optimize resource allocation from a global perspective and reduce resource conflicts. However, its main drawback is:
[0006] The computational burden on the global scheduling node is high, which may become a bottleneck for system performance.
[0007] When tasks are updated frequently, the computational complexity of global scheduling increases significantly, affecting the system's real-time response capability.
[0008] In existing technologies, single static scheduling, dynamic scheduling, or centralized scheduling modes, when facing highly complex simulation systems, suffer from several drawbacks. Static scheduling struggles to dynamically adjust resource allocation, leading to resource idleness or overload. Dynamic scheduling and centralized scheduling, during peak load periods, are limited by computing power and cannot fully utilize all resources.
[0009] Dynamic scheduling and centralized scheduling may delay task scheduling due to the heavy real-time computing burden. Static scheduling, on the other hand, cannot respond quickly to sudden tasks.
[0010] Static scheduling lacks flexibility and has limited room for adjustment when dealing with complex task dependencies. Centralized scheduling may become a computational bottleneck when faced with frequent task changes, reducing system adaptability.
[0011] In summary, a single scheduling strategy cannot achieve a balance between resource utilization, task real-time performance, and scheduling flexibility. Therefore, there is an urgent need for a hybrid scheduling strategy that combines the deterministic guarantees of static scheduling with the global coordination capabilities of centralized scheduling, thereby fully leveraging the advantages of each and improving the overall performance of the simulation system. Summary of the Invention
[0012] To address the aforementioned technical problems, this invention provides the following technical solution: 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] A priority scoring function is constructed based on task periodicity and task dependency graph. Based on the scoring results, a directed acyclic graph structure is established and a hierarchical decomposition algorithm driven by priority scoring is used to generate a hierarchical task dependency structure. Based on the hierarchical task dependency structure and task priority information, resource binding operations and resource isolation are performed to form a static resource allocation mapping.
[0014] Based on static resource allocation mapping and task status changes, task priorities are dynamically updated through centralized scheduling, and scheduling adjustment operations are performed when task preemption conditions are met to control the task scheduling order.
[0015] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, wherein:
[0016] The collected task priority information, task periodicity information, and task dependency graph include:
[0017] A task registration interface is built to collect structured description information of tasks. Task priority information is collected by collecting the urgency level tag and task type identifier submitted by the task during registration, and combining them with the average execution time and resource usage ratio recorded in the historical task execution records to complete the priority field archiving in the database.
[0018] Task periodicity information is obtained by parsing the scheduling time field in the task configuration file and combining it with the statistical results of task scheduling timestamps in historical scheduling logs to determine whether a task is a fixed-period task, a variable-period task, or a single-trigger task.
[0019] The task dependency graph information is obtained by extracting the dependent task ID field declared in the task registration interface and combining it with the resource access field to establish dependency edges. A directed acyclic graph structure is automatically constructed based on the dependency relationship. Each node in the graph corresponds to a simulation task, and each edge represents a prerequisite dependency relationship.
[0020] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the collection of task priority information, task periodicity information and task dependency graph further includes: when multiple in-degrees and out-degrees of a task are detected, the task is marked as a candidate node of the critical path through a structure checking mechanism, and all collected information is written into the task initial state table and static scheduling is initialized as input for priority scoring and topology hierarchy calculation.
[0021] The structured description includes task identifier, task type, historical execution parameters, scheduling priority label, periodic configuration field, and dependent task identifier field.
[0022] The dependency task identifier field includes the dependency task ID field.
[0023] The scheduling time field includes the period expression and the frame interval parameter.
[0024] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the construction of the priority scoring function includes:
[0025] Based on the task periodicity information, task dependency graph structure information, and task type and resource request parameters collected by the task registration interface, a multi-factor calculation model for task scoring is defined.
[0026] The task's periodic weight value, resource load weight value, and dependency strength value are calculated sequentially according to the scoring function. Based on the three scoring factors, the priority scoring function is used to calculate the final priority score.
[0027] The periodic weight value of a task is calculated based on the scheduling interval parameter declared in the task configuration. For fixed-period tasks, the base value is set to 1. For variable-period tasks, the normalized weight is calculated based on the actual average period. A single task is marked as 0.5.
[0028] The resource load weight value is calculated based on the historical resource usage records of the task.
[0029] The recorded data includes CPU utilization, memory usage, and average execution time. Each metric is normalized and then summed using a weighted average method.
[0030] The dependency strength value is determined by the topology of the task in the generated directed acyclic graph, and by calculating the in-degree, out-degree and level label value of the node to determine its criticality in the task flow. The dependency strength value is related to the probability of the task appearing on the critical path, where the level label value is the topological level number of the task node in the directed acyclic graph.
[0031] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the generated task hierarchical dependency structure includes:
[0032] Graphs are constructed for all simulation task nodes that have completed priority scoring, and a directed acyclic graph is initialized using the directed edges of the task dependency graph as the construction basis.
[0033] During the construction process, the dependent task ID field of each task is used as the starting point of the edge, and the current task is used as the ending point. The entire set of tasks is traversed in turn to complete the construction of the dependency graph topology.
[0034] A priority-based hierarchical decomposition algorithm is applied to the graph structure. Each task node is assigned an initial hierarchical label value. When all predecessor nodes of a node have been assigned hierarchical labels, the node's hierarchical value is set to the maximum hierarchical value among all predecessor nodes plus one.
[0035] For a set of tasks with the same level value, they are further sorted from high to low according to their priority score and their internal scheduling order is marked. When a task node is detected to have an in-degree greater than one and the path where the task is located is the convergence point of multiple paths, the task is marked as a critical path candidate task and recorded in the subsequent binding strategy.
[0036] Generate a task hierarchical dependency structure table, and use the task hierarchical dependency structure table as the basic input for resource binding and isolation rule allocation.
[0037] The task hierarchical dependency structure table includes record items, each containing a task number, its level number, its scheduling order number within the level, critical path marker confirmation information, a list of direct predecessor tasks, and a list of direct successor tasks.
[0038] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the execution of resource binding operations and resource isolation includes:
[0039] For each task node, perform resource allocation initialization processing. First, determine whether the current task is on the critical path. If the critical path flag field is yes, submit the task as a binding candidate task to resource binding.
[0040] Resource binding selects the bindable computing unit with the lowest load level and continuous availability time window from the static resource pool based on the task's resource requirement field, and records the unique binding relationship between the task and the resource unit, indicating that the resource must not be migrated during the task's lifecycle.
[0041] When the scheduler detects that the current critical task is blocked for more than the timeout threshold, and there is a higher priority critical task and the conflict of shared resources is unavoidable, the controlled release mechanism is allowed to be triggered to temporarily release the critical task resources while saving all state information.
[0042] For non-critical path tasks, assess whether there are resource conflicts in the relevant level. By comparing the overlap of various indicators in the resource request vector, if the degree of conflict exceeds a set threshold, trigger the isolation mechanism to redistribute the task to other computing units.
[0043] For tasks whose computing units have been reallocated, the scheduler will synchronously update the current resource binding record in the task resource mapping table, retain the initial static resource allocation mapping as a reference state, and mark the resource migration result in the execution state mapping as a resource adjustment record item.
[0044] During the binding and isolation process, nodes with high resource idle rates and no critical tasks are selected first, based on the current level's scheduling sequence number and resource distribution map.
[0045] The resource requirement fields include the number of CPU cores, memory capacity, and number of I / O channels.
[0046] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the step of forming a static resource allocation mapping includes:
[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 during the simulation initialization phase and serves as the initial state input for the centralized scheduler. It is not modified during execution until the scheduler triggers the dynamic rescheduling process.
[0048] During the static scheduling execution phase, if resource conflicts trigger local resource adjustment operations, the temporary migration status of the task will be recorded synchronously, and the changed content will be stored in the resource adjustment record item. The initial static mapping content will not be directly changed, and it will be uniformly merged and updated when entering the dynamic scheduling phase.
[0049] The triggering conditions for switching from static scheduling to centralized scheduling include: the difference between the actual start time and the planned start time of a task exceeds the preset start delay; the resource conflict rate exceeds the set conflict rate (the set conflict rate is derived from the average of historical resource conflict rates); and the priority score of a task marked as a critical path fluctuates significantly during the runtime.
[0050] The static resource allocation mapping record includes the task ID, the resource unit number bound or allocated, the resource isolation flag, the resource conflict determination result, the allocation logical path identifier field, and the binding reason code.
[0051] The resource isolation flag indicates whether the current task has been reassigned to a non-original bound compute node due to resource conflicts. A value of 1 indicates isolation, and 0 indicates that the original bound resources are maintained. Resource adjustments during the dynamic scheduling phase only update the execution-state mapping; the static mapping is only generated during simulation initialization.
[0052] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the updated task priority includes:
[0053] The centralized scheduler collects task execution status data from each execution node at fixed time intervals and in an event-triggered manner. The scheduler evaluates the assigned tasks in real time based on the status data and uses an update function to dynamically adjust the current priority value of each task.
[0054] Status data includes the current waiting time of the task, the resource usage of the task, the task blocking status indicator, and the completion status marker of dependent tasks.
[0055] The range of values for the weighting parameters is set. Since the maximum contribution of the dynamic adjustment item should not exceed 50% of the total score, the range of values for is set within the interval [0, 0.5]. Based on the analysis of simulation task scheduling data, the default recommended initial value is set to δ. t =0.2, δ r =0.1.
[0056] As a preferred embodiment of the simulation scheduling method combining static scheduling and centralized scheduling described in this invention, the control task scheduling order includes:
[0057] After generating the updated task priority queue, the scheduler compares the priority value of the currently executing task with the current priority value of each unexecuted task in the waiting queue. When the scheduler detects that the current priority value of the waiting task is higher than the priority value of the currently executing task, and 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 moment, it triggers a scheduling preemption operation.
[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 execution queue of the original resource node to continue 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 to dynamically update task priorities through centralized scheduling based on static resource allocation mapping and task status changes, and to perform scheduling adjustment operations to control the task scheduling order when the task preemption conditions are met.
[0068] The beneficial effects of this invention are: Static scheduling enables pre-allocation of tasks and resource planning, ensuring the execution efficiency of periodic tasks. Combined with centralized scheduling, resource allocation is adjusted in real time during simulation operation, minimizing resource idleness and overload, and achieving dynamic resource optimization.
[0069] Static scheduling pre-determines the execution order of critical tasks, ensuring time constraints for deterministic tasks. Centralized scheduling enables global coordination of unexpected tasks, real-time adjustment of task priorities, and timely response to urgent tasks, thereby improving the real-time responsiveness of the simulation system.
[0070] Static scheduling provides the basic framework for task execution, while centralized scheduling dynamically adjusts based on task dependencies and resource changes, achieving a combination of rigidity and flexibility. Hierarchical scheduling mechanisms can balance the stable execution of long-cycle tasks with the flexible response of short-cycle tasks, improving the overall adaptability of the system.
[0071] To address the single-point bottleneck problem of traditional centralized scheduling, this invention adopts a hierarchical resource management architecture, which distributes the scheduling pressure of tasks to nodes at different levels, reduces the computational burden on global scheduling nodes, thereby alleviating the computational bottleneck and improving the system's parallel processing capability.
[0072] Combining the global perspective of centralized scheduling strategies, this invention introduces a priority preemption mechanism to dynamically adjust the execution order of tasks based on their urgency and resource conflicts, ensuring that critical tasks are executed first and guaranteeing the orderly progress of the simulation process.
[0073] Static scheduling ensures the basic stability of task execution, while centralized scheduling, on this basis, enables flexible control of tasks and resources, balancing stable system operation with dynamic adaptability. A modular scheduling logic is adopted, facilitating the expansion and adjustment of the scheduling strategy according to the complexity of the simulation system.
[0074] In summary, this invention, through deep synergy between static scheduling and centralized scheduling, not only improves the resource utilization and real-time performance of the simulation system, but also enhances the flexibility of scheduling and the stability of the system, solving the bottleneck problem of the traditional single scheduling mode and providing an innovative solution for the efficient operation of complex simulation systems. Attached Figure Description
[0075] To more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for describing the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. Those skilled in the art can also derive other drawings based on these drawings without inventive effort. Among them:
[0076] Figure 1 The first embodiment of the present invention provides an overall flowchart of a simulation scheduling method and system that combines static scheduling and centralized scheduling; Detailed Implementation
[0077] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the protection scope of the present invention.
[0078] Example 1, referring to Figure 1 As an embodiment of the present invention, a simulation scheduling method combining static scheduling and centralized scheduling is provided, comprising:
[0079] S1: Collect task priority information, task periodicity information, and task dependency graph through the task registration interface.
[0080] A task registration interface is built to collect structured description information of tasks. Task priority information is collected by collecting the urgency level tag and task type identifier submitted by the task during registration, and combining them with the average execution time and resource usage ratio recorded in the historical task execution records to complete the priority field archiving in the database.
[0081] Task periodicity information is obtained by parsing the scheduling time field in the task configuration file and combining it with the statistical results of task scheduling timestamps in historical scheduling logs to determine whether a task is a fixed-period task, a variable-period task, or a single-trigger task.
[0082] The task dependency graph information is obtained by extracting the dependent task ID field declared in the task registration interface and combining it with the resource access field to establish dependency edges. A directed acyclic graph structure is automatically constructed based on the dependency relationship. Each node in the graph corresponds to a simulation task, and each edge represents a prerequisite dependency relationship.
[0083] Furthermore, when multiple in-degrees and out-degrees are detected in a task, the task is marked as a candidate node for the critical path through a structure check mechanism. All collected information is written into the task's initial state table and static scheduling is initialized, serving as input for priority scoring and topology hierarchy calculation.
[0084] The structured description includes task identifier, task type, historical execution parameters, scheduling priority label, periodic configuration field, and dependent task identifier field.
[0085] The scheduling time field includes the period expression and the frame interval parameter.
[0086] S2: Construct a priority scoring function based on task periodicity and task dependency graph. Based on the scoring results, generate a hierarchical task dependency structure by establishing a directed acyclic graph structure and combining it with a priority scoring-driven hierarchical decomposition algorithm. According to the hierarchical task dependency structure and task priority information, perform resource binding operations and resource isolation to form a static resource allocation mapping.
[0087] Based on the task periodicity information, task dependency graph structure information, and task type and resource request parameters collected by the task registration interface, a multi-factor calculation model for task scoring is defined.
[0088] The task's periodic weight value, resource load weight value, and dependency strength value are calculated sequentially according to the scoring function. Based on the three scoring factors, the priority scoring function is used to calculate the final priority score.
[0089] A preferred scheme for calculating the priority scoring function is as follows:
[0090]
[0091] in, This represents the final static score result for task i, where α, β, and γ represent the priority score weights.
[0092] Furthermore, the periodic weight value of the task includes the calculation based on the scheduling interval parameter declared in the task configuration. The fixed period task is set to a base value of 1, the variable period task is calculated with a normalized weight based on the actual average period, and a single task is marked as 0.5.
[0093] A preferred method for calculating the periodic weight value is as follows:
[0094] F 周期-固定i =1
[0095]
[0096] F 周期-单次i =0.5
[0097] Among them, F 周期-固定i P represents the periodic score value of task i in a fixed-period task. avg F represents the historical average scheduling period of task i, in seconds. 周期-变动i F represents the periodic score value of a variable-period task.周期-单次i This indicates that a fixed periodic score is assigned to each task.
[0098] The resource load weight value is calculated based on the historical resource usage records of the task.
[0099] A preferred method for calculating resource load weight values is:
[0100] F 资源i =w1·CPU i +w2·Memory i +w3·Time i
[0101] Among them, CPU i This represents the average CPU utilization and memory usage of task i. i Indicates average memory usage over time. i F represents the average execution time. 资源i The values represent resource load scores, and w1, w2, and w3 represent resource weighting coefficients set by the scheduler.
[0102] The recorded data includes CPU utilization, memory usage, and average execution time. Each metric is normalized and then summed using a weighted average method.
[0103] The dependency strength value is determined by the topology of the task in the generated directed acyclic graph, and by calculating the in-degree, out-degree and level label value of the node to determine its criticality in the task flow. The dependency strength value is related to the probability of the task appearing on the critical path, where the level label value is the topological level number of the task node in the directed acyclic graph.
[0104] A preferred method for calculating the dependency strength value is:
[0105]
[0106] Among them, in-degree i Represents the number of direct predecessors of task i, and its out-degree. i Indicates the number of direct successors of task i, level i This represents the level number of task i in the directed acyclic graph. The value represents the dependency structure score, and k1, k2, and k3 represent the dependency strength weighting factors.
[0107] Graphs are constructed for all simulation task nodes that have completed priority scoring, and a directed acyclic graph is initialized using the directed edges of the task dependency graph as the construction basis.
[0108] During the construction process, the dependent task ID field of each task is used as the starting point of the edge, and the current task is used as the ending point. The entire set of tasks is traversed in turn to complete the construction of the dependency graph topology.
[0109] A priority-based hierarchical decomposition algorithm is applied to the graph structure. Each task node is assigned an initial hierarchical label value. When all predecessor nodes of a node have been assigned hierarchical labels, the node's hierarchical value is set to the maximum hierarchical value among all predecessor nodes plus one.
[0110] A preferred approach for assigning an initial hierarchy marker value to each task node is:
[0111]
[0112] Among them, L i This represents the hierarchy value of task i in the task graph. This represents the hierarchy value of the predecessor task j of task i.
[0113] For a set of tasks with the same level value, they are further sorted from high to low according to their priority score and their internal scheduling order is marked. When a task node is detected to have an in-degree greater than one and the path where the task is located is the convergence point of multiple paths, the task is marked as a critical path candidate task and recorded in the subsequent binding strategy.
[0114] If multiple tasks are at the same level, they are arranged in descending order of their total priority score.
[0115] Generate a task hierarchical dependency structure table, and use the task hierarchical dependency structure table as the basic input for resource binding and isolation rule allocation.
[0116] The task hierarchical dependency structure table includes record items, each containing a task number, its level number, its scheduling order number within the level, critical path marker confirmation information, a list of direct predecessor tasks, and a list of direct successor tasks.
[0117] For each task node, perform resource allocation initialization processing. First, determine whether the current task is on the critical path. If the critical path flag field is yes, submit the task as a binding candidate task to resource binding.
[0118] Resource binding selects the bindable computing unit with the lowest load level and continuous availability time window from the static resource pool based on the task's resource requirement field, and records the unique binding relationship between the task and the resource unit, indicating that the resource must not be migrated during the task's lifecycle.
[0119] For non-critical path tasks, assess whether there are resource conflicts in the relevant level. By comparing the overlap of various indicators in the resource request vector, if the degree of conflict exceeds a set threshold, trigger the isolation mechanism to redistribute the task to other computing units.
[0120] A preferred approach for comparing the overlap of various metrics in a resource request vector is as follows:
[0121]
[0122] in, R represents the degree of resource request conflict between task i and task j. i,k R represents the request value of task i on resource dimension k. j,k This represents the request value of task j on resource dimension k, and n represents the total number of resource types.
[0123] During the binding and isolation process, nodes with high resource idle rates and no critical tasks are selected first, based on the current level's scheduling sequence number and resource distribution map.
[0124] The resource requirement fields include the number of CPU cores, memory capacity, and number of I / O channels.
[0125] 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 during the simulation initialization phase and serves as the initial state input for the centralized scheduler. It is not modified during execution until the scheduler triggers the dynamic rescheduling process.
[0126] The static resource allocation mapping record includes the task ID, the resource unit number bound or allocated, the resource isolation flag, the resource conflict determination result, the allocation logical path identifier field, and the binding reason code.
[0127] S3: Based on the static resource allocation mapping and task status changes, the task priority is dynamically updated through centralized scheduling, and the scheduling adjustment operation is performed when the task preemption conditions are met to control the task scheduling order.
[0128] The centralized scheduler collects task execution status data from each execution node at fixed time intervals and in an event-triggered manner. The scheduler evaluates the assigned tasks in real time based on the status data and uses an update function to dynamically adjust the current priority value of each task.
[0129] A preferred approach to dynamically adjusting the current priority value of each task is as follows:
[0130]
[0131] in, This represents the current priority value of task i. This represents the current waiting time for task i. δ represents the intensity of resource conflicts between task i and other tasks. t δ r This indicates that the weight parameters are dynamically adjusted.
[0132] To ensure the dominance of static scoring in the initial decision-making stage of scheduling, while also considering the responsiveness of dynamic adjustments, the weight parameter δ is adjusted. t δ r The value is set according to the following rules:
[0133] The maximum contribution of the dynamic adjustment item should not exceed 50% of the total score, and δ will be adjusted accordingly. t δ r The value range is set within the interval [0, 0.5]. Based on the analysis of simulation task scheduling data, the optimal average completion time and resource utilization rate correspond to weights concentrated in [0.08, 0.25]. The middle value is taken and the default recommended initial value is set to δ. t =0.2, δ r =0.1, which is in the middle range between performance and stability, making the initial static score the dominant weight.
[0134] When there is a backlog of tasks or frequent resource contention, the scheduler can dynamically adjust the weight parameter value based on the load status, and appropriately 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] Status data includes the current waiting time of the task, the resource usage of the task, the task blocking status indicator, and the completion status marker of dependent tasks.
[0137] After generating the updated task priority queue, the scheduler compares the priority value of the currently executing task with the current priority value of each unexecuted task in the waiting queue. When the scheduler detects that the current priority value of the waiting task is higher than the priority value of the currently executing task, and 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 moment, it triggers a scheduling preemption operation.
[0138] A preferred approach to determining whether a preemptive scheduling operation is triggered is:
[0139]
[0140] in, This indicates 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 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.
[0142] Setting the preemption judgment threshold includes the following: since the task priority scoring function adopts a normalized model, the priority values of all tasks are limited to the interval [0, 1], and the maximum priority difference between two tasks is 1.0, so the upper limit of the threshold is set to 1.0.
[0143] Based on scheduling stability experiment data, when the threshold is 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%. Therefore, to ensure scheduling efficiency, 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 a data snapshot of key variables.
[0145] 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 execution queue of the original resource node to continue execution.
[0146] 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.
[0147] The above embodiments also include a simulation scheduling system that combines static scheduling and centralized scheduling, 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 collection and initialization module 100 is used to collect task priority information, task periodicity information and task dependency graph through the 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 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 according to the hierarchical task dependency structure and task priority information to form a static resource allocation mapping.
[0150] The centralized dynamic scheduling and scheduling adjustment module 300 is used to dynamically update task priorities through centralized scheduling based on static resource allocation mapping and task status changes, and to perform scheduling adjustment operations when the task preemption conditions are met, thereby controlling the task scheduling order.
[0151] Example 2, referring to the simulation scheduling combining static scheduling and centralized scheduling, is an embodiment of the present invention, providing a simulation scheduling method and system combining static scheduling and centralized scheduling. To verify the beneficial effects of the present invention, a simulation experiment is conducted for scientific demonstration.
[0152] The experimental environment is deployed on a resource pool simulation platform that supports Docker isolation, with a fixed number of computing units and a unified task scheduling interface. In the simulation system, the task registration interface is first initialized. Tasks submit information through this interface in the form of structured fields, including: task identifier, task type, urgency level, scheduling cycle configuration, historical execution records, and dependent task IDs.
[0153] During the task registration phase, the scheduling time field is parsed, and timestamps are extracted from the scheduling logs to calculate whether the task is periodic and its type. The dependency ID field is analyzed to construct a directed acyclic graph of the simulation tasks, where each node represents a task and edges represent dependency constraints. Furthermore, a structure checking mechanism is introduced to mark task nodes with both in-degree and out-degree greater than 1, identifying them as candidate tasks for the critical path.
[0154] The task scoring process is based on three factors: a periodic factor, which assesses the response time weight according to the periodic configuration; a resource factor, which is obtained by normalizing and weighting the historical resource records; and a dependency factor, which is statistically derived from the in-degree, out-degree, and level marker values of the task graph structure. The final score is used for hierarchical decomposition and sorting in static scheduling. Tasks are assigned scheduling level numbers and sorted in descending order of score within the same level, ultimately forming a hierarchical task dependency structure table.
[0155] The resource binding phase then begins, where critical path tasks are preferentially bound to the compute nodes with the longest continuous idle time and the lowest load; non-critical path tasks are isolated based on resource conflict levels. After successful binding, a task-resource mapping table is generated as input for static scheduling.
[0156] This experiment compares the hierarchy, priority, and resource binding of different tasks in the scheduling graph under the scoring mechanism, as well as the default scheduling method without a scoring mechanism. The experimental data is shown in Table 1.
[0157] Table 1 Experimental Data
[0158]
[0159]
[0160] Based on the experimental data in the table above, a total of 8 typical simulation tasks were collected, covering different types and scheduling characteristics. Firstly, from a periodicity analysis, the average period for fixed-period tasks was approximately 15.4 seconds, with a score directly set to 1; while the average period for variable-period tasks was approximately 42.6 seconds, with scores ranging from 0.2 to 0.4 after normalization. This reflects that periodic scoring significantly supports the priority of real-time tasks.
[0161] In resource load analysis, task CPU utilization ranged from 12.5% to 85.3%, and memory usage ranged from 130 to 1900 MB. After applying a weighted averaging strategy based on average execution time, it can be seen that tasks with low resource consumption and fast response times have significantly higher priority in priority scoring and ranking. The task dependency structure further enhances the discriminative power of the scoring model, especially for tasks with high out-degree, deep hierarchy, and complex in-degree; their scores are compensated through superposition, placing them at a higher level in the task scheduling graph and aiding in subsequent critical path identification.
[0162] Comparing the scheduling order under the scoring model with the default first-to-register, first-execute mode, experimental results show that after introducing multi-factor scoring and structure-driven hierarchical decomposition, the overall task execution order is closer to the optimal path with dependency constraints, the system resource utilization rate is improved by about 14.6%, and the average response time of critical path tasks is shortened by about 19.3%. Especially in scenarios with frequent task conflicts, the isolation strategy effectively reduces scheduling blocking rate and task queuing conflicts by reasonably diverting tasks to different nodes through task scoring.
[0163] Example 3, referring to the simulation scheduling combining static scheduling and centralized scheduling, is an embodiment of the present invention. It provides a simulation scheduling system combining static scheduling and centralized scheduling, including: 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] Among them, S4: Task information collection and initialization module 100 is used to collect task priority information, task periodicity information and task dependency graph through the task registration interface.
[0165] It should also be noted that the task information collection and initialization module 100 outputs task priority information, task periodicity information, task dependency graph structure, and structured task initialization status table.
[0166] S5: 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. Based on the scoring results, it generates 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 hierarchical task dependency structure and task priority information, it performs resource binding operations and resource isolation to form a static resource allocation mapping.
[0167] It should also be noted that the static scheduling modeling and resource mapping module 200 provides the centralized dynamic scheduling and scheduling adjustment module 300 with task score values, task topology hierarchy tables, and static resource binding tables by constructing a multi-factor priority scoring function, constructing a directed acyclic graph based on the scoring results and performing hierarchical decomposition, constructing a task hierarchical dependency structure table, performing resource binding and conflict isolation, and generating static resource allocation mapping.
[0168] S6: The centralized dynamic scheduling and scheduling adjustment module 300 is used to dynamically update task priorities through centralized scheduling based on static resource allocation mapping and task status changes, and to perform scheduling adjustment operations to control the task scheduling order when the task preemption conditions are met.
[0169] It should also be noted that the static resource mapping received from the output serves as the initial state. Task status information is collected periodically, and the current priority is dynamically updated based on the status value. The scheduling preemption judgment logic is triggered. If the conditions are met, task switching, context saving and restoration are performed.
[0170] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0171] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device.
[0172] More specific examples (a non-exhaustive list) of computer-readable media include: electrical connections (electronic devices) having one or more wires, portable computer disk drives (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which programs can be printed, because programs can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory.
[0173] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc. It should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.
[0174] It should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.
Claims
1. A simulation scheduling method combining static scheduling and centralized scheduling, characterized in that, include: Collect task priority information, task periodicity information, and task dependency graph through the task registration interface; A priority scoring function is constructed based on task periodicity and task dependency graph. Based on the scoring results, a directed acyclic graph structure is established and a hierarchical decomposition algorithm driven by priority scoring is used to generate a hierarchical task dependency structure. Based on the hierarchical task dependency structure and task priority information, resource binding operations and resource isolation are performed to form a static resource allocation mapping. Based on static resource allocation mapping and task status changes, task priorities are dynamically updated through centralized scheduling, and scheduling adjustment operations are performed when task preemption conditions are met to control the task scheduling order.
2. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 1, characterized in that: The collected task priority information, task periodicity information, and task dependency graph include: Build a task registration interface, collect structured description information of tasks, and collect task priority information by collecting the urgency level tag and task type identifier submitted by the task during registration, and combine it with the average execution time and resource consumption ratio recorded in the historical task execution records to complete the priority field archiving in the database. Task periodicity information is obtained by parsing the scheduling time field in the task configuration file and combining it with the statistical results of task scheduling timestamps in the historical scheduling log to determine whether a task is a fixed-period task, a variable-period task, or a single-trigger task. The task dependency graph information is obtained by extracting the dependent task ID field declared in the task registration interface and combining it with the resource access field to establish dependency edges. A directed acyclic graph structure is automatically constructed based on the dependency relationship. Each node in the graph corresponds to a simulation task, and each edge represents a prerequisite dependency relationship.
3. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 2, characterized in that: The collection of task priority information, task periodicity information, and task dependency graph also includes: When multiple in-degrees and out-degrees are detected in a task, the task is marked as a candidate node of the critical path through the structure check mechanism. All collected information is written into the task initial state table and static scheduling is initialized as input for priority scoring and topology hierarchy calculation. The structured description includes task identifier, task type, historical execution parameters, scheduling priority label, periodic configuration field, and dependent task identifier field; The dependency task identifier fields include the dependency task ID field; The scheduling time field includes the period expression and the frame interval parameter.
4. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 3, characterized in that: The construction priority scoring function includes: Based on the task periodicity information, task dependency graph structure information, and task type and resource request parameters collected by the task registration interface, a multi-factor calculation model for task scoring is defined. The periodic weight value, resource load weight value, and dependency strength value of the task are calculated sequentially according to the scoring function. Based on the three scoring factors, the priority scoring function is used to calculate the final priority score. The periodic weight value of a task includes the following: it is calculated based on the scheduling interval parameter declared in the task configuration. For fixed-period tasks, the base value is set to 1. For variable-period tasks, the normalized weight is calculated based on the actual average period. A single task is marked as 0.
5. The resource load weight value is calculated based on the historical resource usage records of the task. The recorded data includes CPU utilization, memory usage, and average execution time. Each metric is normalized and then summed using a weighted average method. The dependency strength value is determined by the topology of the task in the generated directed acyclic graph, and by calculating the in-degree, out-degree and level label value of the node to determine its criticality in the task flow. The dependency strength value is related to the probability of the task appearing on the critical path, where the level label value is the topological level number of the task node in the directed acyclic graph.
5. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 4, characterized in that: The hierarchical dependency structure for the generated task includes: Graphs are constructed for all simulation task nodes that have completed priority scoring, and directed acyclic graphs are initialized using directed edges of the task dependency graph as the basis for construction. During the construction process, the dependent task ID field of each task is used as the starting point of the edge, and the current task is used as the ending point. The entire task set is traversed in turn to complete the construction of the dependency graph topology. A priority-based hierarchical decomposition algorithm is performed on the graph structure. Each task node is assigned an initial hierarchical label value. When all predecessor nodes of a node have been assigned hierarchical labels, the node's hierarchical value is set to the maximum hierarchical value among all predecessor nodes plus one. For a set of tasks with the same level value, they are further sorted from high to low according to their priority score and their internal scheduling order is marked. When a task node is detected to have an in-degree greater than one and the path where the task is located is the convergence point of multiple paths, the task is marked as a critical path candidate task and recorded in the subsequent binding strategy. Generate a task hierarchical dependency structure table, and use the task hierarchical dependency structure table as the basic input for resource binding and isolation rule allocation; The task hierarchical dependency structure table includes record items, each containing a task number, its level number, its scheduling order number within the level, critical path marker confirmation information, a list of direct predecessor tasks, and a list of direct successor tasks.
6. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 5, characterized in that: The execution of resource binding operations and resource isolation includes: For each task node, perform resource allocation initialization processing. First, determine whether the current task is on the critical path. If the critical path flag field is yes, submit the task as a candidate task for binding to resource binding. Resource binding selects the bindable computing unit with the lowest load level and continuous availability time window from the static resource pool based on the task's resource requirement field, and records the unique binding relationship between the task and the resource unit, indicating that the resource must not be migrated during the task's lifecycle. When the scheduler detects that the current critical task is blocked for more than the timeout threshold, and there is a higher priority critical task and the conflict of shared resources is unavoidable, the controlled release mechanism is allowed to be triggered to temporarily release the critical task resources while saving all state information. For non-critical path tasks, assess whether there are resource conflicts in the relevant level. By comparing the overlap of various indicators in the resource request vector, if the degree of conflict exceeds the set threshold, trigger the isolation mechanism and reallocate the task to other computing units. For tasks whose computing units have been reallocated, the scheduler will synchronously update the current resource binding record in the task resource mapping table, retain the initial static resource allocation mapping as a reference state, and mark the resource migration result in the execution state mapping as a resource adjustment record item; During the binding and isolation process, based on the current level's scheduling sequence number and resource distribution map, nodes with high resource idle rates and no critical tasks occupying resources are prioritized. The resource requirement fields include the number of CPU cores, memory capacity, and number of I / O channels.
7. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 6, characterized in that: The formation 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 the scheduling control table during the simulation initialization phase and serves as the initial state input for the centralized scheduler. It is not modified during execution until the scheduler triggers the dynamic rescheduling process. During the static scheduling execution phase, if resource conflicts trigger local resource adjustment operations, the temporary migration status of the task will be recorded synchronously, and the changed content will be stored in the resource adjustment record item. The initial static mapping content will not be directly changed, and it will be merged and updated uniformly when entering the dynamic scheduling phase. The triggering conditions for switching from static scheduling to centralized scheduling include: 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 of historical resource conflict rates); and the priority score of the task marked as the critical path fluctuates significantly during the runtime. The static resource allocation mapping record includes the task ID, the resource unit number bound or allocated, the resource isolation flag, the resource conflict determination result, the allocation logical path identifier field, and the binding reason code; The resource isolation flag indicates whether the current task has been reassigned to a non-original bound compute node due to resource conflicts. A value of 1 indicates that it is isolated, and 0 indicates that the original bound resources are maintained.
8. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 7, characterized in that: The update task priorities include: The centralized scheduler collects task execution status data from each execution node at fixed time intervals and in an event-triggered manner. The scheduler evaluates the assigned tasks in real time based on the status data and uses an update function to dynamically adjust the current priority value of each task. Status data includes the current waiting time of the task, the resource usage of the task, the task blocking status indicator, and the completion status marker of dependent tasks; The range of values for the weighting parameters is set. Since the maximum contribution of the dynamic adjustment item should not exceed 50% of the total score, the range of values for is set within the interval [0, 0.5]. Based on the analysis of simulation task scheduling data, the default recommended initial value is set to δ. t =0.2, δ r =0.
1.
9. The simulation scheduling method combining static scheduling and centralized scheduling as described in claim 8, characterized in that: The control task scheduling order includes: After generating the updated task priority queue, the scheduler compares the priority value of the currently executing task with the current priority value of each unexecuted task in the waiting queue. When the scheduler detects that the current priority value of the waiting task is higher than the priority value of the currently executing task, and 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 moment, it triggers a scheduling preemption operation. 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 allocating high-priority tasks to the execution queue of the current resource node and prioritizing task execution. 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; When the preempted task is a critical path task, the scheduler will trigger the controlled release mechanism and fully record the task context state information only if the resource conflict is unavoidable and the scheduling of the high-priority critical task fails. This will allow the task to resume execution first after the resources are released. The resources of the critical path task can only be preempted by higher-priority critical tasks, and the complete context state must be saved. Once a high-priority task is completed, the released computing resources will be returned to the resource pool. The scheduler will load the execution status of the preempted task from the task status storage area based on the previously saved context state information, and add the task back to the tail of the execution queue of the original resource node to continue execution. 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 scheduling order, resource binding status and task context among tasks. When multiple tasks within the same level experience a change in priority ranking 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 score.
10. A simulation scheduling system combining static scheduling and centralized scheduling, characterized in that: It includes 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 used to collect task priority information, task periodicity information and task dependency graph through the task registration interface; 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 scoring-driven hierarchical decomposition algorithm based on the scoring results, and perform resource binding operations and resource isolation based on the task hierarchical dependency structure and task priority information to form a static resource allocation mapping. The centralized dynamic scheduling and scheduling adjustment module (300) is used to dynamically update task priorities through centralized scheduling based on static resource allocation mapping and task status changes, and to perform scheduling adjustment operations to control the task scheduling order when the task preemption conditions are met.
Citation Information
Patent Citations
Heterogeneous high-concurrency dynamic station network resource demand scheduling system and method
CN114614879A
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
Multi-target collaborative optimization intelligent multi-robot carrying scheduling system and method
CN119882637A
Cited By
Load balancing method and system of low-power AI processor
CN121070629A
Load balancing method and system for low-power ai processor
CN121070629B
Enterprise multi-dimensional commercial index analysis data resource optimization method, medium and equipment
CN121279891A
Discrete simulation task scheduling method based on conditional waiting mechanism
CN121635181A
Event-driven task scheduling method and device, vehicle and storage medium
CN122240280A