A task scheduling method and device, electronic equipment and storage medium

By adopting a dual-branch network architecture, combined with real-time dynamic response and historical experience feedback, the stability and efficiency of computing resource scheduling in the computing cluster are solved, thereby improving resource utilization and task execution efficiency.

CN122240269APending Publication Date: 2026-06-19LENOVO (BEIJING) LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
LENOVO (BEIJING) LTD
Filing Date
2026-03-26
Publication Date
2026-06-19

Smart Images

  • Figure CN122240269A_ABST
    Figure CN122240269A_ABST
Patent Text Reader

Abstract

This application discloses a task scheduling method, apparatus, electronic device, and storage medium. The method includes: obtaining a first parameter corresponding to a task to be scheduled in a task set; processing the first parameter based on a first branch network to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in a computing cluster; selecting a scheduling result quantization value matching the task to be scheduled from a knowledge base based on a second branch network according to the first parameter; obtaining a second parameter corresponding to the task to be scheduled after executing the scheduling action; keeping the parameters of the second branch network unchanged, updating the model parameters of the first branch network based on the scheduling result quantization value and the second parameter; if the task set has not been completed, continuing to execute the next task in the task set based on the updated model parameters of the first branch network.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a task scheduling method, apparatus, electronic device, and storage medium. Background Technology

[0002] Currently, when allocating appropriate computing, storage, and network hardware resources to various tasks in a computing cluster, achieving stable and efficient computing resource scheduling has become an urgent problem to be solved. Summary of the Invention

[0003] The technical solution provided in this application is as follows:

[0004] The first aspect of this application provides a task scheduling method, including:

[0005] Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0006] Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster;

[0007] Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0008] Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0009] Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the scheduling result and the second parameter. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

[0010] In one possible implementation, based on the first parameter, the second branch network selects a quantized value of the scheduling result that matches the task to be scheduled from the knowledge base, including:

[0011] The second feature is extracted from the first parameter based on the second branch network; the second feature characterizes the attribute of the task to be scheduled not changing with the running state of the computing cluster.

[0012] Select historical topological features in the knowledge base that have a similarity to the second feature that meet the set conditions as neighbor features;

[0013] The quantized value of the scheduling result corresponding to the neighbor feature in the knowledge base is used as the quantized value of the scheduling result that matches the task to be scheduled.

[0014] In one possible implementation, updating the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter includes:

[0015] Based on the first parameter and the similarity between the second feature and the neighbor features, a first weighting factor corresponding to the quantized value of the scheduling result is determined; the first weighting factor characterizes the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the first running state;

[0016] Based on the first weighting factor, the quantized value of the scheduling result is weighted to obtain the first potential energy value;

[0017] Based on the second parameter and the similarity between the second feature and the neighbor features, a second weighting factor corresponding to the quantized value of the scheduling result is determined; the second weighting factor characterizes the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the second running state;

[0018] Based on the second weighting factor, the quantized value of the scheduling result is weighted to obtain the second potential energy value;

[0019] Based on the first potential energy value and the second potential energy value, update the model parameters of the first branch network.

[0020] In one possible implementation, updating the model parameters of the first branch network based on the first potential energy value and the second potential energy value includes:

[0021] Based on the first potential energy value and the second potential energy value, a first reward value is determined; the first reward value represents the degree of influence of the scheduling action on the scheduling target.

[0022] The model parameters of the first branch network are updated based on the first reward value.

[0023] In one possible implementation, the task scheduling method further includes:

[0024] Obtain a second reward value; the second reward value represents the degree of influence of the scheduling actions corresponding to all tasks in the task set on the scheduling objective.

[0025] The step of updating the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter includes:

[0026] The model parameters of the first branch network are updated based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter.

[0027] In one possible implementation, updating the model parameters of the first branch network based on the second reward value, the quantized values ​​of the scheduling results of each task in the task set, and the second parameter includes:

[0028] Based on the quantified value of the scheduling result of each task in the task set and the second parameter, a first reward value is determined for each task; the first reward value represents the degree of influence of the scheduling action corresponding to the task on the scheduling target.

[0029] The first reward value and the second reward value are combined to obtain the third reward value;

[0030] Based on the third reward value, an advantage value is determined; the advantage value characterizes the degree of advantage of the scheduling action of the task to be scheduled relative to the average scheduling level of the first branch network.

[0031] Based on the aforementioned advantage value, the model parameters of the first branch network are updated.

[0032] In one possible implementation, the knowledge base is constructed in the following way:

[0033] Obtain historical scheduling sample data of the computing cluster and / or simulated scheduling sample data generated based on the computing cluster;

[0034] Based on the historical scheduling sample data and / or the simulated scheduling sample data, a combination pair of features and values ​​is determined; the features represent the topological structure of the sample tasks in the historical scheduling sample data and / or the simulated scheduling sample data; the values ​​include the quantized value of the sample task completion time after inversion.

[0035] The combined pairs are stored to obtain a knowledge base.

[0036] Another aspect of this application provides a task scheduling apparatus, comprising:

[0037] The first acquisition module is used to acquire the first parameter corresponding to the scheduled task in the task set; the first parameter represents the first topology between the scheduled task and other tasks in the task set and the first running state of the computing cluster.

[0038] The processing module is used to process the first parameter based on the first branch network to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster.

[0039] The selection module is used to select, based on the first parameter and the second branch network, a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0040] The second acquisition module is used to acquire the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0041] The update module is used to keep the parameters of the second branch network unchanged, update the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameters, and if the task set has not been completed, continue to execute the next task in the task set based on the updated model parameters of the first branch network.

[0042] A third aspect of this application provides an electronic device, comprising: at least one processor and a memory connected to the processor, wherein:

[0043] The memory is used to store computer programs;

[0044] The processor is used to execute the computer program to enable the electronic device to perform the following method steps:

[0045] Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0046] Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster;

[0047] Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0048] Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0049] Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

[0050] A fourth aspect of this application provides a computer storage medium carrying one or more computer programs, which, when executed by an electronic device, enable the electronic device to perform the following method steps:

[0051] Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0052] Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster;

[0053] Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0054] Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0055] Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network. Attached Figure Description

[0056] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent when taken in conjunction with the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0057] Figure 1 A flowchart illustrating a task scheduling method provided in Embodiment 1 of this application;

[0058] Figure 2 A flowchart illustrating a task scheduling method provided in Embodiment 2 of this application;

[0059] Figure 3 A flowchart illustrating a task scheduling method provided in Embodiment 5 of this application;

[0060] Figure 4 A schematic diagram of a system architecture for the task scheduling method provided in this application;

[0061] Figure 5 A flowchart illustrating the knowledge base construction and task scheduling process provided in this application;

[0062] Figure 6 This is a schematic diagram of a scheduling trajectory comparison provided in this application. Detailed Implementation

[0063] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is for explaining specific embodiments only and is not intended to limit the scope of this application.

[0064] The embodiments of this application will now be described with reference to the accompanying drawings. Those skilled in the art will recognize that, with technological advancements and the emergence of new scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.

[0065] The terms "first," "second," etc., used in this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of units is not necessarily limited to those units, but may include other units not explicitly listed or inherent to those processes, methods, products, or apparatuses.

[0066] Reference Figure 1 This is a flowchart illustrating a task scheduling method provided in Embodiment 1 of this application, as shown below. Figure 1 As shown, the method may include, but is not limited to, the following steps:

[0067] Step S101: Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0068] In this embodiment, the first topology may include, but is not limited to:

[0069] Data dependencies, such as the source of input data for the currently scheduled task (e.g., whether it needs to receive output data from other preceding tasks, and which preceding tasks in the task set need to receive data from), and the destination of output data (e.g., whether the output data of the current task is the input data for subsequent tasks in the task set, and which subsequent tasks it corresponds to), ensure that the scheduling can take into account the rationality of data transmission and avoid task execution failure due to incomplete data.

[0070] Execution dependencies, such as the execution timing requirements of the currently scheduled task (e.g., whether it can only start after one or more preceding tasks in the task set have been fully executed, whether it can be executed in parallel with other tasks in the task set, and whether there are execution priority restrictions), clarify the order of task execution and provide a basis for the timing planning of resource allocation.

[0071] The task's own topological attributes, such as the level of the currently scheduled task in the entire task set, the number of associated tasks (i.e., the number of other tasks in the task set that have data or execution dependencies with this task), and its own task type (e.g., compute-intensive, I / O-intensive).

[0072] In this embodiment, the first topological structure may be represented by, but is not limited to, a directed acyclic graph (DAG) or an adjacency matrix.

[0073] In this DAG, each task in the task set is a node, and the dependencies between tasks are directed edges, with the preceding task node pointing to the subsequent dependent task node; a directed edge can represent data dependency and / or execution time dependency.

[0074] The topological attributes of a task can be determined based on its position in the DAG. The level of the task in the task set corresponds to its depth in the DAG, reflecting the execution order. The number of associated tasks is the number of preceding and subsequent tasks connected to the node by directed edges. Combining these attributes with the DAG helps determine the priority of task resource requirements. For example, high-level tasks located on the critical path of the DAG can be allocated high-quality computing resources first, improving the overall execution efficiency of the task set.

[0075] The initial operating state of a computing cluster may include, but is not limited to, the load of the central processing unit (CPU) / graphics processing unit (GPU) of each computing node, idle computing power, remaining storage capacity, network transmission rate, congestion status, and hardware performance.

[0076] Step S102: Based on the first branch network, process the first parameter to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster.

[0077] In this embodiment, the first branch network may include, but is not limited to:

[0078] The first feature extraction module is used to extract dynamic time-varying features from the first parameters. The first extraction module may include, but is not limited to, GATv2 Conv (second-generation graph attention convolutional layer) and Global Pooling (global pooling layer).

[0079] GATv2 Conv can be used to mine the association features between the task topology and cluster nodes from the first parameter, and complete the association aggregation and dimension normalization through Global Pooling to obtain dynamic time-varying features.

[0080] The first extraction module may also include, but is not limited to, GCN (Graph Convolutional Network) and Avg Pooling (Average Pooling Layer).

[0081] GCN can be used to extract global association features of task-node topology from the first parameter. By using AvgPooling to smooth and compress the dimensions of the global association features, dynamic time-varying features can be obtained.

[0082] Dynamic time-varying characteristics can characterize the non-fixed instantaneous states of computing clusters and task sets that change in real time with the scheduling process. Unlike static and unchanging characteristics such as task topology and hardware performance, non-fixed instantaneous states may include, but are not limited to: the real-time network congestion level of the cluster, the queue length of the central processing unit (CPU) / graphics processing unit (GPU) of each computing node, fluctuations in node computing load, changes in remaining storage resources, and changes in task execution progress.

[0083] The Actor-Critic network module is used to infer scheduling actions based on dynamic, time-varying features. The specific reasoning process may include, but is not limited to:

[0084] Based on the Actor network, policy reasoning is performed according to dynamic time-varying characteristics, and the probability distribution of various candidate scheduling actions in the current state (i.e. scheduling action distribution) is output. This distribution can quantify the feasibility and advantages and disadvantages of different resource allocation methods.

[0085] The distribution of scheduling actions is evaluated using a Critic network, and the scheduling action with the highest value score is selected as the output.

[0086] Step S103: Based on the second branch network and according to the first parameter, select the scheduling result quantization value that matches the task to be scheduled from the knowledge base; the scheduling result quantization value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0087] In this embodiment, the historical tasks that match the task to be scheduled may include, but are not limited to, historical tasks that are similar to the task to be scheduled in at least one dimension in terms of topology attributes, resource requirements, and cluster conditions.

[0088] The results of computational resource scheduling can include the actual results of cluster resource allocation and task execution after the corresponding scheduling actions of historical tasks.

[0089] Scheduling objectives may include, but are not limited to, at least one of the following: task set completion time, cluster resource utilization, task execution latency, and computing power loss rate.

[0090] In this embodiment, by using the quantified value of the scheduling result matched with the task to be scheduled, the positive or negative impact of the computing resource scheduling results corresponding to similar tasks in the past on the scheduling target can be determined, guiding the first branch network to iterate in the direction of improving the achievement of the scheduling target, without having to obtain feedback through a large number of meaningless cluster trial and error, thus improving the update efficiency of the first branch network.

[0091] Step S104: Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0092] The representation of the second topology can be consistent with that of the first topology (such as a DAG or adjacency matrix). The second topology result can reflect the dynamic changes in the task set after the scheduling action is executed, such as updates to the state of tasks to be scheduled, adjustments to task dependencies, advancement of task execution hierarchy, and state changes triggered by associated tasks.

[0093] The second operating status can reflect the real-time resource status of the computing cluster after the scheduling action is executed. Specifically, it can include, but is not limited to, the load changes of the central processing unit (CPU) / graphics processing unit (GPU) of each computing node, the remaining idle computing power, the storage capacity consumption, the network transmission status update, and the hardware load fluctuation.

[0094] Step S105: Keep the parameters of the second branch network unchanged, update the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter, and if the task set has not been completed, continue to execute the next task in the task set based on the updated model parameters of the first branch network.

[0095] Keeping the parameters of the second branch network fixed ensures that the feature extraction logic of the second branch network will not change due to different task types within the task set, the order of scheduling, or fluctuations in the cluster state after a single task is completed. It always uses the same logic to complete the feature encoding, matching, and selection of scheduling result quantification values ​​for all tasks to be scheduled, ensuring that the selected scheduling result quantification values ​​have a unified measurement standard, which can truly reflect the impact of historical task computing resource scheduling results on the scheduling target. This provides stable and reliable experience guidance for updating the first branch network and eliminates feedback distortion.

[0096] From the perspective of overall task scheduling, keeping the parameters of the second branch network unchanged prevents issues such as inconsistent feature extraction logic leading to opposite matching results for similar tasks or inconsistent quantization evaluation standards. It also avoids situations where arbitrary changes to the feature extraction logic render historical scheduling experience unsuitable and fail to provide effective feedback for updating the parameters of the first branch network. This ensures a continuous supply of stable and adaptable quantization values ​​for all scheduled tasks in the entire task set, providing stable support for successive parameter updates of the first branch network and improving the overall scheduling efficiency of the task set.

[0097] In this embodiment, the quantified value of the scheduling result can provide the positive or negative impact of the historical computing resource scheduling results for similar tasks on the scheduling target, thus avoiding undirected trial and error in the first branch network.

[0098] The second parameter can provide feedback on the actual effect of the current scheduling action, ensuring that the updates of the first branch network are in line with the current cluster and task status.

[0099] If the task set has not been completed, the process can switch to the next task to be scheduled and continue to execute the scheduling process of S101-S105 in a loop based on the updated first branch network model parameters; if the task set has been completed, the current scheduling process can be terminated.

[0100] In this embodiment, the first branch network focuses on real-time dynamic response. Through the dynamic time-varying feature extraction module, it accurately captures instantaneous state information such as computing cluster load fluctuations, network congestion changes, and task execution progress migration. It also relies on the Actor-Critic architecture to perform strategy reasoning and value evaluation, and continuously iterates and optimizes model parameters to ensure that the generated scheduling actions can adapt to changes in cluster operating conditions and dynamic adjustments to task topology in real time, providing strong adaptive support for scheduling decisions in complex scenarios.

[0101] Meanwhile, the second branch network constructs a stable experience backtracking mechanism by solidifying model parameters. Its feature extraction and matching logic remains consistent throughout the scheduling process. Based on the first parameter of the task to be scheduled, it can accurately retrieve the quantitative value of the scheduling result that matches its topological attributes, resource requirements and cluster operating conditions from the knowledge base, providing historical experience feedback with a unified metric standard for the parameter update of the first branch network.

[0102] This dual-branch collaborative architecture not only ensures the real-time responsiveness of the scheduling strategy to the dynamic environment, but also avoids blind trial and error through a stable historical experience feedback mechanism, thereby improving the model convergence speed and decision-making efficiency, effectively shortening the task set execution cycle, improving cluster resource utilization, and reducing computing power consumption.

[0103] As another optional embodiment of this application, refer to Figure 2 This is a flowchart illustrating a task scheduling method provided in Embodiment 2 of this application. This embodiment is mainly an implementation of step S103 in Embodiment 1, such as... Figure 2 As shown, step S103 may include, but is not limited to:

[0104] Step S11: Extract a second feature from the first parameter based on the second branch network; the second feature characterizes the attribute that the task to be scheduled does not change with the running state of the computing cluster.

[0105] The second branch network may include, but is not limited to, GATv2 Conv (second-generation graph attention convolutional layer) and Global Pooling (global pooling layer).

[0106] GATv2 Conv can be used to mine static association attributes in the task topology from the first parameter, focusing on local static features such as task hierarchy and dependencies; Global Pooling can be used to globally aggregate the extracted local static features, remove transient state interference, and output the second feature.

[0107] The second branch network may also include, but is not limited to, GCN (Graph Convolutional Network) and Max Pooling.

[0108] GCN can be used to extract global static correlation features within the task topology from the first parameter, filtering out instantaneous noise caused by dynamic cluster conditions; Max Pooling is used to select and retain the most representative core static features from the global static correlation features as the second feature to enhance the recognizability of static attributes and further improve the accuracy of subsequent historical experience matching.

[0109] The second feature characterizing the attributes of the scheduled task that do not change with the running state of the computing cluster may include, but are not limited to:

[0110] The task to be scheduled must meet at least one of the following criteria: its level in the first topology, the number of associated tasks, data dependencies, execution dependencies, inherent task type (compute-intensive / I / O-intensive), and basic resource requirement thresholds (e.g., minimum CPU / GPU computing power requirement, storage usage baseline).

[0111] In this embodiment, the second feature can be encoded as a fixed-dimensional vector (denoted as the query vector). This vector can be used as a reference for subsequent searches in the knowledge base.

[0112] Step S12: Select historical topological features in the knowledge base that meet the set conditions for similarity with the second feature as neighbor features.

[0113] In this embodiment, the knowledge base may include historical topological features of multiple historical tasks. The historical topological features of historical tasks may represent, but are not limited to, the following attributes:

[0114] Historical tasks possess attributes that do not change with the running state of the computing cluster, such as floating-point operations (FLOPS), the total number of floating-point operations required for a historical task to complete computation, which is fixed by the task's algorithm logic; basic memory requirements (Memory), the minimum memory footprint required for a historical task to run, which is independent of the cluster node state; and topological attributes such as the historical task's level in its DAG topology, the number of associated tasks, and data / execution dependencies.

[0115] The attributes of historical tasks that change with the running state of the computing cluster include, for example, runtime, which is the actual execution time of the historical task (affected by the computing power and load of the cluster nodes, but can reflect the actual computational complexity of the task); and task status, which is the status record of the historical task during the scheduling process (such as pending execution, in execution, completed, which can reflect the execution priority of the task in the topology).

[0116] The quantified value of the scheduling result can be generated based on the actual scheduling process data of historical tasks. Its calculation basis includes both core computing requirements data determined by the static attributes of the task and scheduling process and execution result data affected by cluster running status and actual scheduling scenarios. It is a complete quantitative representation of the actual scheduling effect of historical tasks. Based on the generation logic of this quantified value, each historical topological feature in the knowledge base that integrates static and dynamic attributes uniquely corresponds to a quantified value of the scheduling result. This quantified value can accurately represent the actual impact of the corresponding historical task on scheduling objectives such as the execution cycle of the task set, cluster resource utilization, and computing power consumption after executing the scheduling action.

[0117] Each historical topological feature is stored in the knowledge base in a vector data format that is consistent with the query vector. That is, the knowledge base pre-stores historical topological feature vectors corresponding to multiple historical tasks, and the dimensions and encoding rules of this type of vector are consistent with those of the query vector.

[0118] During the retrieval process, cosine similarity calculations can be performed on the query vector generated by the current task to be scheduled and each of the historical topological feature vectors in the knowledge base. This calculation method uses the cosine value of the angle between the two vectors as a quantitative indicator to comprehensively evaluate the degree of matching between the attribute features of the task to be scheduled and the historical task represented by the vectors in the multidimensional space. The closer the calculation result is to 1, the higher the distribution trend and numerical correlation of the task attribute features represented by the two vectors in the feature space, that is, the higher the degree of matching between the core attributes of the task to be scheduled and the corresponding historical task.

[0119] Select historical topological features in the knowledge base that have a similarity to the second feature that meets the set conditions as neighbor features. These features may include, but are not limited to, any of the following:

[0120] Step S121: Set a fixed similarity threshold (e.g., 0.8), and select all historical topological features whose similarity calculation results are greater than or equal to the threshold as neighbor features.

[0121] This setting prioritizes matching accuracy and is suitable for scenarios with high requirements for scheduling performance.

[0122] Step S122: Set a fixed number of neighbor features (e.g., the first 5, the first 10), sort all similarity calculation results from high to low, and select the top N historical topological features as neighbor features.

[0123] This setting prioritizes retrieval efficiency and is suitable for real-time scheduling scenarios with large amounts of historical data in the knowledge base.

[0124] Step S13: Use the quantized value of the scheduling result corresponding to the neighbor feature in the knowledge base as the quantized value of the scheduling result that matches the task to be scheduled.

[0125] If step S12 only selects one neighbor feature, directly extract the scheduling result quantization value that is uniquely bound to the neighbor feature in the knowledge base, and use it as the scheduling result quantization value that matches the current task to be scheduled.

[0126] If step S12 selects multiple neighbor features, the final scheduling result quantification value can be determined by integrating them using a weighted average. Specifically, the similarity between each neighbor feature and the query vector can be used as a weight; the higher the similarity, the greater the weight of the corresponding scheduling result quantification value. This weighted calculation eliminates the randomness of single historical experiences and improves the reliability of the quantification value.

[0127] In this embodiment, regarding the fit and fidelity of historical experience matching, the design incorporates historical topological features that integrate the static and dynamic attributes of the task, fully considering the characteristics of the task under different states. At the same time, the quantitative value of the scheduling result is generated based on the actual scheduling process data of the historical task, so that the matched historical experience can not only closely fit the inherent attributes of the task, but also highly reproduce the actual scheduling scenario, thereby improving the reference value of the quantitative value of the scheduling result. This provides more accurate and more relevant historical experience feedback for the parameter update of the first branch network, effectively avoiding update errors caused by experience matching deviations, and improving the pertinence and effectiveness of the iterative optimization of the first branch network.

[0128] As another optional embodiment of this application, a task scheduling method is provided in Embodiment 3 of this application. This embodiment is mainly an implementation of updating the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter in Embodiment 2. Specifically, it may include, but is not limited to:

[0129] Step S21: Based on the first parameter and the similarity between the second feature and the neighbor feature, determine the first weight factor corresponding to the quantized value of the scheduling result; the first weight factor represents the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the first running state.

[0130] In this embodiment, the first weighting factor can be determined by the following relationship:

[0131]

[0132] This represents the first weight factor corresponding to the quantized value of the scheduling result for the i-th neighbor feature. This indicates the similarity between the second feature and the neighboring features. This represents the query vector corresponding to the second feature. This represents the vector corresponding to the i-th neighbor feature (i.e., the historical topological feature stored in vector data format that satisfies the set condition of similarity with the second feature). This represents a function that converts similarity scaling values ​​into normalized weights. The temperature coefficient represents the degree of concentration of the adjustment weights.

[0133] Step S22: Based on the first weighting factor, the quantized value of the scheduling result is weighted to obtain the first potential energy value;

[0134] In this embodiment, the first potential energy value can be determined by the following relationship:

[0135]

[0136] This represents the summation function. and This represents the first weight factor corresponding to the quantized value of the scheduling result for the i-th neighbor feature. This represents the quantized value of the scheduling result corresponding to the feature of the i-th neighbor.

[0137] Step S23: Based on the second parameter and the similarity between the second feature and the neighbor feature, determine the second weight factor corresponding to the quantized value of the scheduling result; the second weight factor represents the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the second running state.

[0138] In this embodiment, the second weighting factor can be determined by referring to the method of determining the first weighting factor in step S21, which will not be described again here.

[0139] Step S24: Based on the second weighting factor, the quantized value of the scheduling result is weighted to obtain the second potential energy value;

[0140] In this embodiment, the second potential energy value can be determined by referring to the method used in step S22 to determine the first potential energy value, which will not be repeated here.

[0141] Step S25: Update the model parameters of the first branch network based on the first potential energy value and the second potential energy value.

[0142] The first potential energy value and the second potential energy value can represent the comprehensive reference value of historical experience for scheduling tasks in the first operating state before scheduling and the second operating state after scheduling, respectively. The comparison between the two can reflect the impact of the current scheduling action on the adaptability of historical experience.

[0143] The first potential energy value represents the value that historical experience should bring under ideal conditions, while the second potential energy value represents the actual value that historical experience can bring after the actual scheduling actions are executed.

[0144] If the second potential energy value is higher than the first potential energy value, it means that the scheduling action makes historical experience more valuable in the new cluster state, the scheduling strategy is in the right direction, and the generation logic of this type of scheduling action can be strengthened by updating the model parameters of the first branch network.

[0145] If the second potential energy value is lower than the first potential energy value, it means that the scheduling action reduces the reference value of historical experience, and the scheduling strategy needs to be adjusted. This can be achieved by updating the model parameters of the first branch network and weakening the generation logic of this type of scheduling action.

[0146] If the second potential energy value is the same as the first potential energy value, it means that the scheduling action has not changed the reference value of historical experience, and the model parameters of the first branch network do not need to be adjusted.

[0147] In this embodiment, the first and second weighting factors are calculated for the first and second running states before and after scheduling, respectively, to achieve dynamic weighted aggregation of the historical scheduling experience value. This yields the first and second potential energy values, representing the comprehensive reference value of historical experience before and after scheduling. Based on these first and second potential energy values, the impact of scheduling actions on the adaptability of historical experience can be accurately quantified. This deeply integrates stable historical experience feedback with real-time cluster state feedback. It leverages the unified measurement of historical experience provided by the fixed parameters of the second branch, avoiding the problems of undirected trial and error and feedback distortion. Furthermore, the potential energy value differences guide the first branch network to specifically strengthen high-quality scheduling actions and weaken inefficient scheduling actions, improving the parameter update accuracy and model convergence speed of the first branch network. This further strengthens the collaborative adaptability of the two branches, ultimately enabling the computing cluster's resource scheduling strategy to possess both real-time dynamic adaptability and historical experience reusability. This effectively improves cluster resource utilization, shortens the task set execution cycle, reduces computing power consumption, and achieves a stable and efficient computing resource scheduling goal.

[0148] As another optional embodiment of this application, a task scheduling method provided in Embodiment 4 of this application, this embodiment is mainly an implementation of step S25 in Embodiment 3, and may specifically include, but is not limited to:

[0149] Step S251: Determine a first reward value based on the first potential energy value and the second potential energy value; the first reward value represents the degree of influence of the scheduling action on the scheduling target;

[0150] In this embodiment, the first reward value can be determined using the following relationship:

[0151]

[0152] in, Indicates the first reward value; This represents the second potential energy value; This represents the first potential energy value; This represents a discount factor used to balance short-term and long-term scheduling benefits, preventing the first branch network from focusing solely on the immediate effects of a single scheduling task while also considering the overall benefits of subsequent task scheduling, thus ensuring the long-term sustainability of the first branch network's iterations. Simultaneously, it appropriately scales the second potential value to balance the numerical differences in potential values ​​before and after scheduling, making the reward value calculation more reasonable.

[0153] Step S252: Update the model parameters of the first branch network based on the first reward value.

[0154] If the first reward value is greater than 0, it means that the second potential value after scaling by the discount factor is greater than the first potential value. The current scheduling action improves the adaptability of historical experience and makes a positive contribution to the scheduling goal. It is a high-quality scheduling action and should be given a positive reward to guide the first branch network to update the model parameters (such as the parameters of the first feature extraction module and the parameters of the Actor-Critic network module) to strengthen this type of scheduling logic.

[0155] If the first reward value is less than 0, it means that the second potential energy value after scaling by the discount factor is less than the first potential energy value. The current scheduling action reduces the adaptability of historical experience and makes a negative contribution to the scheduling goal. It is an inefficient scheduling action and should be given a negative reward to guide the first branch network to update the model parameters (e.g., the parameters of the first feature extraction module and the parameters of the Actor-Critic network module) in order to weaken this type of scheduling logic.

[0156] If the first reward value is equal to 0, it means that the scheduling action has not changed the adaptability of historical experience and has no significant impact on the scheduling objective. The model parameters of the first branch network do not need to be adjusted.

[0157] In this embodiment, by Determining the first reward value guarantees policy invariance. This means that when updating parameters using historical experience from the knowledge base, the original optimal scheduling goal remains unchanged. Instead, the historical experience provided by the second branch network is transformed into dense and stable gradient guidance signals, enabling the first branch network to iterate in the correct direction. This improves the convergence speed and parameter update accuracy of the first branch network, giving the computing cluster resource scheduling strategy strong dynamic adaptability, high historical experience reusability, and optimal solution stability. This continuously improves cluster resource utilization, shortens the overall execution cycle of the task set, reduces computing power consumption, and ensures stable, efficient scheduling performance that does not deviate from the optimal scheduling goal.

[0158] As another optional embodiment of this application, refer to Figure 3 This is a flowchart illustrating a task scheduling method provided in Embodiment 5 of this application. Figure 3 As shown, the method may include, but is not limited to:

[0159] Step S201: Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0160] Step S202: Based on the first branch network, process the first parameter to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster.

[0161] Step S203: Based on the second branch network and according to the first parameter, select the scheduling result quantization value that matches the task to be scheduled from the knowledge base; the scheduling result quantization value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0162] Step S204: Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0163] For a detailed description of steps S201-S204, please refer to the relevant description of steps S101-S104 in Example 1, which will not be repeated here.

[0164] Step S205: Obtain the second reward value; the second reward value represents the degree of influence of the scheduling actions corresponding to all tasks in the task set on the scheduling target.

[0165] In this embodiment, measured data such as the overall completion progress rate of the task set, the improvement in cluster CPU / GPU resource utilization, the reduction in average task execution latency, the reduction in computing power resource loss rate, and the reduction in task queue waiting time can be obtained. The second reward value is determined based on the measured data. The determination process of the second reward value can be carried out without subjective fitting or experience correction, which can ensure that the second reward value can truly reflect the actual advantages and disadvantages of the scheduling action.

[0166] However, the second reward value has an inherent sparsity defect. The feedback of the second reward value is delayed. It can only generate a single feedback after a single task is completed and the cluster state tends to stabilize. It cannot provide continuous gradient guidance during the scheduling decision process. This can easily lead to the first branch network experiencing gradient vanishing and deviation in the iteration direction due to the lack of continuous guidance, or even getting stuck in a local optimum, thus prolonging the model convergence time.

[0167] Therefore, the sparse second reward value can be combined with the quantified values ​​of the scheduling results of each task determined based on the second branch network. The real environment reward (i.e., the second reward value) is used to ensure the credibility of the iteration, and the dense historical experience reward (i.e., the quantified values ​​of the scheduling results of each task) is used to make up for the signal blind spots, so as to achieve the complementary advantages of the two types of reward signals.

[0168] Step S206: Keep the parameters of the second branch network unchanged, update the model parameters of the first branch network based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameters. If the task set has not been completed, continue to execute the next task in the task set based on the updated model parameters of the first branch network.

[0169] In this embodiment, the sparse second reward value directly fed back from the environment can be combined with the quantified value of the dense scheduling result determined based on the second branch network, and combined with the real-time cluster status reflected by the second parameter to construct a more comprehensive reward value.

[0170] Update the model parameters of the first branch network based on a more comprehensive reward value.

[0171] In this embodiment, updating the model parameters of the first branch network based on the second reward value, the quantized scheduling result value of each task in the task set, and the second parameter is an implementation method of updating the model parameters of the first branch network based on the quantized scheduling result value and the second parameter in Embodiment 1.

[0172] In this embodiment, a second reward value that truly reflects the actual quality of scheduling actions is obtained. This second reward value is then combined with the quantified values ​​of dense scheduling results for each task determined by the second branch network and capable of compensating for signal blind spots. Simultaneously, a more comprehensive reward value is constructed by combining a second parameter reflecting the real-time cluster status. This approach utilizes environmental rewards to ensure iteration reliability and leverages historical experience to compensate for the guidance blind spots of sparse rewards. This allows the first branch network iteration to simultaneously satisfy both the actual cluster scheduling conditions and historical optimal scheduling experience, avoiding problems such as gradient vanishing, iteration direction deviation, and getting trapped in local optima caused by the sparsity of the second reward value. It also ensures the accuracy and reliability of parameter update direction, further improving the convergence speed and parameter update accuracy of the first branch network. This results in a computing cluster resource scheduling strategy that possesses strong dynamic adaptability, high historical experience reusability, and optimal solution stability. This continuously improves cluster resource utilization, shortens the overall execution cycle of the task set, reduces computing power consumption, and ensures stable, efficient scheduling results that do not deviate from the optimal scheduling objective.

[0173] As another optional embodiment of this application, a task scheduling method is provided in Embodiment 6 of this application. This embodiment is mainly an implementation of the method in Embodiment 5 that updates the model parameters of the first branch network based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter. Specifically, it may include, but is not limited to:

[0174] Step S31: Based on the quantized value of the scheduling result of each task in the task set and the second parameter, determine the first reward value corresponding to each task; the first reward value represents the degree of influence of the scheduling action corresponding to the task on the scheduling target.

[0175] In this embodiment, the method for determining the first reward value in Embodiment 5 can be referred to to determine the first reward value for each task, which will not be repeated here.

[0176] Step S32: Merge the first reward value and the second reward value to obtain the third reward value.

[0177] In this embodiment, the third reward value can be determined using the following relationship:

[0178]

[0179] This represents the third reward value. This represents the second reward value. This represents the first reward value.

[0180] It should be noted that during the phase before the task set is fully executed, only part of the task scheduling is completed, the overall completion effect is uncertain, and there is no effective feedback on the original environmental rewards. =0. The first reward value is used as the sole gradient signal throughout the process to iteratively update the parameters of the first branch network, ensuring the continuous guidance of intermediate decisions.

[0181] After all tasks in the task set have been completed, and all task scheduling actions have been executed and the cluster is stable, measured indicators such as global completion time and resource utilization are collected to determine the effective second reward. At this time, the third reward value is the result of the fusion of the first reward value and the second reward value, realizing two-way verification between experience-based and real-world results.

[0182] Step S33: Based on the third reward value, determine the advantage value; the advantage value represents the degree of advantage of the scheduling action of the task to be scheduled relative to the average scheduling level of the first branch network.

[0183] In this embodiment, the PPO proximal strategy optimization algorithm can be used to iterate the parameters of the first branch network. Combined with the core logic of the algorithm and the dual reward fusion mechanism, the advantage value is determined by using the third reward value (comprehensive reward) as the core input to the advantage function built into the PPO algorithm.

[0184] This determination method aligns with the gradient update rules of the PPO algorithm, eliminates the inherent value interference of the task state itself, accurately focuses on the merits of the scheduling action itself, and provides a standardized gradient basis for subsequent strategy pruning and parameter iteration.

[0185] The advantage value is determined based on the third reward value (comprehensive reward). The core of this approach lies in the fact that the third reward value integrates the dual advantages of the original sparse reward of the environment and the dense reward of historical experience. It retains the authenticity of the cluster's actual feedback while compensating for the gradient guidance deficiencies of a single reward signal. It is a comprehensive feedback signal that aligns with the scheduling objective and possesses both objectivity and guidance. Calculating the advantage value based on this comprehensive reward eliminates the inherent value interference of the task state itself, accurately focusing on the merits of the scheduling action itself, rather than simply relying on a one-sided reward signal for judgment.

[0186] Step S34: Update the model parameters of the first branch network based on the advantage value.

[0187] In the PPO algorithm iteration phase, policy updates can be performed based on the advantage value. Because the third reward value combines the characteristics of real-world feedback and historical experience, the advantage value can provide stable and effective gradient guidance for policy iteration in the early stages of training, helping the first branch network to learn more quickly how to generate scheduling actions that can achieve good scheduling results in complex environments.

[0188] At the same time, the pruning constraint mechanism inherent in the PPO algorithm strictly controls the magnitude of a single policy update, which can prevent excessive parameter fluctuations from causing training out of control and policy collapse, and ensure that the first branch network iteration can be optimized smoothly and controllably throughout the entire iteration process.

[0189] To maintain the decoupling characteristics of the two branches of the policy flow (i.e., the first branch network) and the retrieval flow (i.e., the second branch network), and thus ensure retrieval stability, asymmetric gradient truncation can be performed during the parameter backpropagation stage. That is, only the optimization gradient is allowed to update the parameters of the policy flow (first branch network) normally, while the gradient is completely blocked from being transmitted to the retrieval flow (second branch network), freezing all parameters of the retrieval flow. This avoids coupling interference between the two-stream architecture and ensures that the empirical retrieval logic remains stable and does not drift throughout the entire process.

[0190] In this embodiment, a third reward value is obtained by fusing the sparse second reward value from real-world feedback with the dense first reward value obtained from historical experience, and the advantage value is determined accordingly. This provides a stable and effective gradient guide for the PPO algorithm to iterate the first branch network parameters, accelerating the process of the network learning an effective scheduling action generation method.

[0191] Furthermore, the pruning constraint mechanism of the PPO algorithm ensures that the iteration is stable and controllable.

[0192] Furthermore, asymmetric gradient truncation maintains the decoupling characteristics of the two branches, ensuring retrieval stability. Ultimately, this enables the computing cluster resource scheduling strategy to possess strong dynamic adaptability, high historical experience reusability, and optimal solution stability, effectively improving cluster resource utilization, shortening the overall execution cycle of the task set, reducing computing power consumption, and ensuring stable, efficient scheduling performance that does not deviate from the optimal scheduling objective.

[0193] In this embodiment, this embodiment combines Figure 4 The data flow and update logic of the task scheduling method will be explained in detail. Figure 4 The diagram below illustrates the system architecture of the task scheduling method. The overall architecture can include: Input Module, Dual-Stream Encoder, Interaction & Reward, and Optimization Loop (Feedback). These modules collaborate to achieve dynamic scheduling and model iteration, as detailed below:

[0194] The Input Module is responsible for collecting all the information needed for scheduling decisions in real time and can be considered the first parameter. Specifically, it can acquire the directed acyclic graph (DAG) structure information of the current workflow (such as task dependencies and computational requirements) and the real-time running status of the computing cluster (such as CPU / GPU load on each node, I / O-intensive task types, memory usage, network bandwidth, etc.). This information constitutes the System State for the scheduling agent to make decisions. )).

[0195] The Dual-Stream Encoder can include decoupling a single feature extraction network into two parallel and functionally independent sub-networks: the Top Stream (Policy Stream) and the Bottom Stream (Retrieval Stream).

[0196] Top Stream (Policy Stream) is a trainable / online first-branch network. This network is responsible for extracting dynamic, time-varying features from the input state, such as real-time network congestion levels and instantaneous node queue lengths. These features are used to generate scheduling actions that adapt to changes in the environment.

[0197] Bottom Stream (Retrieval Stream) can include second-branch networks (Retrieval Encoder) with frozen / stop-gradient parameters. (i.e., retrieval flow encoder). Stop-Gradient is an operation in deep learning that means that during the backpropagation process of model training, the gradient is truncated when it reaches this network (the gradient flow is blocked), and its parameters are not updated. It is specifically responsible for extracting static topological features (such as the structural information of the task DAG) to generate stable and comparable query vectors for subsequent similarity retrieval.

[0198] In the policy flow, it can be based on the Policy Encoder ( (The first feature extraction module, which may include GATv2 Conv and Global Pooling, extracts dynamic time-varying features.)

[0199] Based on the Actor Network (Actor MLP), policy reasoning is performed according to dynamic time-varying characteristics, and the probability distribution of various candidate scheduling actions in the current state is output (Action(a)). t This distribution can quantify the feasibility and advantages / disadvantages of different resource allocation methods.

[0200] The value (V) of the scheduling action distribution is evaluated based on the Critic MLP network, and the scheduling action with the highest value score is selected as the output.

[0201] The Knowledge Base / Mixed-Strategy KB is a pre-built vector database. It stores a large amount of historical scheduling experience, with each experience being a key-value pair.

[0202] Key: A vector corresponding to historical topological features extracted by the retrieval stream encoder (which is frozen after initialization) based on GATv2 Conv and GlobalPooling.

[0203] Value: The quantified value of the scheduling result obtained after executing a certain scheduling strategy (such as HEFT, Min-Min, Random) in this historical state (e.g., the negative value of the completion time).

[0204] like Figure 4 As shown, the retrieval and reward shaping process may include:

[0205] After the retrieval stream generates a query vector based on the current state (first parameter), it uses a metric such as cosine similarity (Top-k Neighbors) to find the k nearest neighbors (i.e., the k neighbor features) that are most similar to the current query vector from the knowledge base.

[0206] Using Softmax Attention (a weighted aggregation mechanism), a first weight factor is dynamically calculated based on the similarity between the current state and each nearest neighbor. Then, the first weight factor is used to sum the values ​​corresponding to the k nearest neighbors to obtain the first potential value. Similarly, after allocating computing resources to the tasks to be scheduled based on scheduling actions in an HPC Environment (a data center with multi-generational coexistence, heterogeneous hardware, and dynamic contention), the second potential energy value is obtained. .

[0207] Potential (Φ) (e.g., first potential value and second potential value) can quantify how good the final scheduling result (e.g., the expected completion time) can be obtained under the corresponding state, based on historical experience.

[0208] Potential(Φ) points to the Retrieval Encoder because the calculation of the potential value depends on the stable feature representation generated by the retrieval stream encoder. Without this stable representation, effective similarity retrieval and potential calculation are impossible.

[0209] After obtaining the first and second potential energy values, PBRS (Potential-Based Reward Shaping) can be performed, that is, based on... Determine the first reward value.

[0210] After all tasks in the entire workflow (i.e., the task set) are completed, the environment provides a Raw Reward (secondary reward value) based on the actual scheduling effect (such as task completion).

[0211] After obtaining the first and second reward values, the advantage value is determined based on the AdvantageEstimation in the Proximal Policy Optimization (PPO) algorithm. The first branch network of Gradient Flow is implemented based on the PPO Loss, the model parameters of the first branch network are updated, and the Stop Gradient phase is implemented without updating the parameters of the second branch network.

[0212] In this embodiment, a stable experience retrieval foundation is built through a dual-stream decoupled encoder (the policy stream is dynamically adjustable, while the retrieval stream is stably frozen). A hybrid policy knowledge base provides prior knowledge, and the PBRS mechanism transforms sparse rewards into dense, progressive guidance. Finally, the policy stream is continuously trained in the optimization loop using the PPO algorithm, thereby achieving superior scheduling performance in extremely heterogeneous HPC environments. This allows for rapid learning and adaptation to dynamic changes while stably and efficiently reusing historical experience.

[0213] As another optional embodiment of this application, a task scheduling method is provided in Embodiment 7 of this application. This embodiment is mainly an implementation of the knowledge base in Embodiment 1. The knowledge base can be constructed in, but is not limited to, the following ways:

[0214] Step S41: Obtain historical scheduling sample data of the computing cluster and / or simulated scheduling sample data generated based on the computing cluster.

[0215] Historical scheduling sample data is collected from the actual operation logs of the computing cluster. These logs record detailed information about various historical workflow tasks (i.e., implementation methods of a sample task) executed on the cluster over a period of time, including task execution time, resource usage, and dependencies between tasks.

[0216] Specialized log collection tools or scripts can be used to periodically pull relevant log files from the cluster's log server, parse and organize them, and extract data related to task scheduling.

[0217] Data cleaning and preprocessing: The collected historical data is cleaned to remove noisy, duplicate, and erroneous data. Simultaneously, the data is preprocessed, such as converting timestamps to a standardized format and normalizing task names, to facilitate subsequent analysis and use.

[0218] If historical data is insufficient or cannot meet specific needs, an offline simulation environment can be built based on the actual physical environment parameters of the computing cluster (such as the number of nodes, hardware configuration, network topology, etc.). This simulation environment should simulate the operating state and behavior of the real cluster as accurately as possible.

[0219] In the simulation environment, various benchmark scheduling algorithms (such as HEFT, Min-Min, etc.) are used to pre-schedule predefined job tasks (i.e., an implementation of a sample task). These job tasks can be designed according to actual business scenarios and include different types of tasks and complex task dependencies.

[0220] During the simulation scheduling process, the execution status of each job task is recorded, including the task's start time, end time, and resource allocation. Based on this recorded data, simulation scheduling sample data is generated to supplement insufficient historical data or to conduct research on scheduling strategies in specific scenarios.

[0221] Step S42: Based on the historical scheduling sample data and / or the simulated scheduling sample data, determine the combination pair of features and values; the features represent the topological structure of the sample tasks in the historical scheduling sample data and / or the simulated scheduling sample data; the values ​​include the quantized value of the sample task completion time after inversion.

[0222] In this embodiment, features of sample tasks can be extracted from the historical scheduling sample data and / or the simulated scheduling sample data. These features may include, but are not limited to, structural features such as task runtime, floating-point operations (FLOPS), memory requirements, and task status.

[0223] Structural features can be encoded using encoders in deep learning (such as the GATv2 encoder) and converted into feature vectors of fixed dimensions.

[0224] In this embodiment, for each sample task, the final completion time can be calculated based on its actual execution during the scheduling process, and its negative value (i.e., the inverted quantized value of the sample task completion time) is taken as the value of the task. The shorter the completion time, the better the scheduling effect; and the larger the value after taking the negative value, the better the scheduling effect.

[0225] The completion time obtained from the simulation execution can be directly obtained from the simulation scheduling data.

[0226] If the start and end times of a task are recorded in historical data, the completion time can also be calculated.

[0227] Step S43: Store the combined pairs to obtain a knowledge base.

[0228] In this embodiment, the feature vector corresponding to the feature extracted from each sample task can be combined with its corresponding value quantification value to form a feature-value pair (k,v), and the feature-value pair (k,v) can be stored to obtain a knowledge base. Here, k represents the feature vector and v represents the value.

[0229] In this embodiment, by collecting and cleaning historical scheduling sample data from the computing cluster, and by building an offline simulation environment to generate simulated scheduling sample data, the data sources are expanded to more comprehensively cover various scheduling scenarios. Next, feature and value pairs are determined, and the structural features are encoded into fixed-dimensional feature vectors using an encoder. The value is then quantified by inverting the task completion time, which can effectively measure the scheduling effect. Finally, the pairs are stored to form a knowledge base, providing rich and accurate data support for task scheduling, which helps to improve scheduling effect and cluster resource utilization.

[0230] In this embodiment, combined with Figure 5 This section explains the knowledge base construction and task scheduling process. For example, ... Figure 5 As shown,

[0231] During the knowledge base construction phase:

[0232] Retrieve historical workflow tasks and / or synthetic workflow tasks (i.e., job tasks).

[0233] For historical workflow tasks, historical scheduling sample data can be collected from the actual operation logs of the computing cluster.

[0234] For synthetic workflow tasks, various benchmark scheduling algorithms (such as HEFT, Min-Min, etc.) can be used to pre-schedule predefined job tasks and generate simulated scheduling sample data.

[0235] Based on historical scheduling sample data and / or simulated scheduling sample data, feature extraction is performed, such as running time (i.e., time consumption), floating-point operation volume (FLOPS), memory requirement (Memory), task status (Status), etc.

[0236] Furthermore, for each sample task, the final completion time can be calculated based on its actual execution during the scheduling process, and its negative value (i.e., the quantized value after inverting the sample task completion time) can be taken as the value of the task.

[0237] The feature vector corresponding to the feature extracted from each sample task is combined with its corresponding value quantification value to form a feature-value combination pair (k,v), and the feature-value combination pair (k,v) is stored to obtain the hybrid strategy knowledge base (KB).

[0238] During the task scheduling phase:

[0239] Initialize the dual-stream network and freeze the parameters of the retrieval stream to keep them unchanged during subsequent training. Only allow the policy stream to update its parameters to ensure that the retrieval stream can stably retrieve relevant information from the knowledge base.

[0240] Get the current state S t (That is, the first parameter).

[0241] Dual-stream parallel processing:

[0242] The policy flow (trainable) extracts dynamic time-varying features, and then generates scheduling actions (A) based on the Actor-Critic network. t ); Execute scheduling actions and obtain environmental rewards r t and new state S t+1 (That is, the second parameter).

[0243] Retrieval stream (frozen), generating query vector Q t .

[0244] After generating the query vector, the k nearest neighbors (i.e., the k neighbor features) most similar to the current query vector are found from the knowledge base using a metric such as cosine similarity (Top-K Neighbors). Then, based on the k nearest neighbors, the first potential value is calculated. .

[0245] According to the new state S t+1 (That is, the second parameter), to determine the second potential energy value.

[0246] according to The potential energy difference is determined as the first reward value.

[0247] according to Determine the third reward value.

[0248] The Proximal Policy Optimization (PPO) algorithm is used for backpropagation, updating only the parameters of the policy flow and not the parameters of the retrieval flow. In this way, the decision-making ability of the policy flow is continuously optimized, enabling it to generate better scheduling actions.

[0249] To determine if a task has ended, check if the entire task set has been executed. If the task has not ended, continue executing the next task in the task set based on the updated model parameters from the policy flow, and reacquire the current state St, entering a new round of dual-stream parallel processing and decision-making until all tasks have been executed.

[0250] To verify the effectiveness of this application in real-world complex scenarios, a high-fidelity distributed computing validation environment can be built. This environment is constructed based on the industry-standard WRENCH / SimGrid framework and configured with physical topology parameters consistent with those of a real data center (such as bandwidth limitations and differences in node computing capabilities). Based on this high-fidelity validation environment, multiple sets of real scientific workflows (e.g., Synthetic tasks, Seismology tasks, Montage tasks) can be introduced for stress testing. Specific test results can be found in Table 1.

[0251] Table 1

[0252]

[0253] Table 1 shows a comparison of the completion time of WASF-RAG (the task scheduling method of this application) and HEFT in different scheduling flows. Experimental results show that this application improves the overall average performance by 21.7%. The performance advantage is particularly significant in the complex data-dependent Montage workflow. Furthermore, for simple synthetic tasks, this invention can accurately reproduce the optimal solution of the heuristic algorithm through the PBRS mechanism, demonstrating the algorithm's adaptability in different scenarios.

[0254] To explain the source of the 63.5% performance improvement in the Montage scenario, the scheduling trajectory was compared. For example... Figure 6The Gantt chart shown has the horizontal axis representing the scheduling execution time (unit: seconds), which is the time taken from task initiation to completion. The larger the value, the longer the time.

[0255] The vertical axis represents the computing nodes in the heterogeneous computing cluster (e.g., cpu_host_slow, etc., which will not be introduced one by one here). Different labels correspond to computing nodes with different performance and configurations, which are used to distinguish the node type and the scheduling and allocation object.

[0256] cpu_host_slow represents a low-speed computing node with low hardware configuration and weak computing performance. It is a poor-performing computing node in the cluster and processes tasks slowly.

[0257] The red blocks represent the communication overhead / data transmission time between tasks. The longer and more numerous the blocks, the longer the cross-node data transmission and network waiting time, and the greater the communication overhead.

[0258] The blue blocks represent the actual execution time of the task. The blocks correspond to the computation runtime of the task on the node, which is the effective computing power utilization period.

[0259] Our approach: WASF-RAG (Data Locality & Compact Packing) employs a data locality strategy. In the initial scheduling phase, associated tasks and dependent data of the Montage workflow are migrated in batches to the low-speed node `cpu_host_slow`, completing a one-time centralized data warm-up and resource preparation, resulting in a concentrated period of communication overhead. After the initial data preparation is complete, subsequent tasks are executed locally on this low-speed node, with no frequent cross-node transmissions. Communication overhead is significantly reduced, retaining only a very short period of necessary data interaction time.

[0260] Baseline: HEFT (Fragmentation & Communication Overhead) is a static heuristic algorithm that blindly pursues task parallelism. In the early stages, a large number of tasks are distributed and scheduled to high-speed nodes, while low-speed nodes (cpu_host_slow) are not assigned any tasks and have no communication behavior. After the high-speed nodes run out of resources, HEFT is forced to split and schedule the remaining tasks to low-speed nodes. At this time, it is necessary to repeatedly transmit scattered data across nodes, and there is no data locality planning, which leads to severe communication fragmentation and two wide-range communication time delays.

[0261] The HEFT algorithm lacks a global scheduling plan and simply splits tasks to pursue parallelism, resulting in tasks being scattered across multiple nodes. This leads to frequent cross-node transmission of fragmented data, numerous and scattered red communication blocks, and a significant increase in total time consumption.

[0262] WASF-RAG (this application) learns data locality strategies to aggregate related tasks and corresponding data to the same node (including low-speed nodes), reducing the number of cross-node transmissions, transforming scattered communication into one-time centralized communication, significantly reducing total communication overhead, and ultimately achieving a 63.5% performance improvement.

[0263] The task scheduling device provided in this application will be described below. The task scheduling device described below can be referred to in correspondence with the task scheduling method described above.

[0264] The task scheduling device may include:

[0265] The first acquisition module is used to acquire the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0266] The processing module is used to process the first parameter based on the first branch network to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster.

[0267] The selection module is used to select a scheduling result quantization value that matches the task to be scheduled from the knowledge base based on the first parameter and the second branch network; the scheduling result quantization value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0268] The second acquisition module is used to acquire the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0269] The update module is used to keep the parameters of the second branch network unchanged, update the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameters, and if the task set has not been completed, continue to execute the next task in the task set based on the updated model parameters of the first branch network.

[0270] The selected module can be used specifically for:

[0271] The second feature is extracted from the first parameter based on the second branch network; the second feature characterizes the attribute of the task to be scheduled not changing with the running state of the computing cluster.

[0272] Select historical topological features in the knowledge base that have a similarity to the second feature that meet the set conditions as neighbor features;

[0273] The quantized value of the scheduling result corresponding to the neighbor feature in the knowledge base is used as the quantized value of the scheduling result that matches the task to be scheduled.

[0274] In this embodiment, the update module updates the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter, which may specifically include:

[0275] Based on the first parameter and the similarity between the second feature and the neighbor features, a first weighting factor corresponding to the quantized value of the scheduling result is determined; the first weighting factor characterizes the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the first running state;

[0276] Based on the first weighting factor, the quantized value of the scheduling result is weighted to obtain the first potential energy value;

[0277] Based on the second parameter and the similarity between the second feature and the neighbor features, a second weighting factor corresponding to the quantized value of the scheduling result is determined; the second weighting factor characterizes the importance of the computing resource scheduling result corresponding to the historical task matching the task to be scheduled to the task to be scheduled in the second running state;

[0278] Based on the second weighting factor, the quantized value of the scheduling result is weighted to obtain the second potential energy value;

[0279] Based on the first potential energy value and the second potential energy value, update the model parameters of the first branch network.

[0280] The update module updates the model parameters of the first branch network based on the first potential energy value and the second potential energy value, which may specifically include:

[0281] Based on the first potential energy value and the second potential energy value, a first reward value is determined; the first reward value represents the degree of influence of the scheduling action on the scheduling target.

[0282] The model parameters of the first branch network are updated based on the first reward value.

[0283] In this embodiment, the task scheduling device may further include:

[0284] The third acquisition module is used to obtain the second reward value; the second reward value represents the degree of influence of the scheduling actions corresponding to all tasks in the task set on the scheduling target.

[0285] The update module updates the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter, which may specifically include:

[0286] The model parameters of the first branch network are updated based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter.

[0287] The update module updates the model parameters of the first branch network based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter. Specifically, this may include:

[0288] Based on the quantified value of the scheduling result of each task in the task set and the second parameter, a first reward value is determined for each task; the first reward value represents the degree of influence of the scheduling action corresponding to the task on the scheduling target.

[0289] The first reward value and the second reward value are combined to obtain the third reward value;

[0290] Based on the third reward value, an advantage value is determined; the advantage value characterizes the degree of advantage of the scheduling action of the task to be scheduled relative to the average scheduling level of the first branch network.

[0291] Based on the aforementioned advantage value, the model parameters of the first branch network are updated.

[0292] In this embodiment, the task scheduling device may further include:

[0293] Build modules are used for:

[0294] Obtain historical scheduling sample data of the computing cluster and / or simulated scheduling sample data generated based on the computing cluster;

[0295] Based on the historical scheduling sample data and / or the simulated scheduling sample data, a combination pair of features and values ​​is determined; the features represent the topological structure of the sample tasks in the historical scheduling sample data and / or the simulated scheduling sample data; the values ​​include the quantized value of the sample task completion time after inversion.

[0296] The combined pairs are stored to obtain a knowledge base.

[0297] In another embodiment of this application, an electronic device is provided, comprising: at least one processor and a memory connected to the processor, wherein:

[0298] The memory is used to store computer programs;

[0299] The processor is used to execute the computer program to enable the electronic device to perform the following method steps:

[0300] Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0301] Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster;

[0302] Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0303] Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0304] Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

[0305] In another embodiment of this application, a computer storage medium is provided, the storage medium carrying one or more computer programs, which, when executed by an electronic device, enable the electronic device to perform the following method steps:

[0306] Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster.

[0307] Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster;

[0308] Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target.

[0309] Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster.

[0310] Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

[0311] It should also be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the device embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.

[0312] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often the preferred implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, training equipment, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0313] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product.

[0314] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, training device, or data center to another website, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).

Claims

1. A task scheduling method, comprising: Retrieve the first parameter corresponding to the task to be scheduled in the task set; The first parameter characterizes the first topology between the task to be scheduled and other tasks in the task set, as well as the first running state of the computing cluster. Based on the first branch network, the first parameter is processed to obtain the scheduling action; The scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster; Based on the first parameter, the second branch network selects a quantized value of the scheduling result that matches the task to be scheduled from the knowledge base. The quantitative value of the scheduling result represents the degree of influence of the computing resource scheduling result corresponding to the historical task matched with the task to be scheduled on the scheduling objective. Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; The second parameter characterizes the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, as well as the second running state of the computing cluster. Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the scheduling result and the second parameter. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

2. The task scheduling method according to claim 1, wherein the second branch network selects a quantized value of the scheduling result matching the task to be scheduled from the knowledge base according to the first parameter, comprising: The second feature is extracted from the first parameter based on the second branch network; The second feature characterizes the attribute that the task to be scheduled does not change with the running state of the computing cluster; Select historical topological features in the knowledge base that have a similarity to the second feature that meet the set conditions as neighbor features; The quantized value of the scheduling result corresponding to the neighbor feature in the knowledge base is used as the quantized value of the scheduling result that matches the task to be scheduled.

3. The task scheduling method according to claim 2, wherein updating the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter includes: Based on the first parameter and the similarity between the second feature and the neighbor feature, a first weight factor corresponding to the quantized value of the scheduling result is determined; The first weighting factor represents the importance of the computing resource scheduling results corresponding to the historical tasks that match the task to be scheduled to the task to be scheduled in the first running state; Based on the first weighting factor, the quantized value of the scheduling result is weighted to obtain the first potential energy value; Based on the second parameter and the similarity between the second feature and the neighbor feature, a second weight factor corresponding to the quantized value of the scheduling result is determined; The second weighting factor characterizes the importance of the computing resource scheduling results corresponding to the historical tasks that match the task to be scheduled to the task to be scheduled in the second running state; Based on the second weighting factor, the quantized value of the scheduling result is weighted to obtain the second potential energy value; Based on the first potential energy value and the second potential energy value, update the model parameters of the first branch network.

4. The task scheduling method according to claim 3, wherein updating the model parameters of the first branch network based on the first potential energy value and the second potential energy value includes: Based on the first potential energy value and the second potential energy value, a first reward value is determined; The first reward value represents the degree of influence of the scheduling action on the scheduling target; The model parameters of the first branch network are updated based on the first reward value.

5. The task scheduling method according to claim 1, further comprising: Obtain the second reward value; The second reward value represents the degree of influence of the scheduling actions corresponding to all tasks in the task set on the scheduling objective; The step of updating the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameter includes: The model parameters of the first branch network are updated based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter.

6. The task scheduling method according to claim 5, wherein updating the model parameters of the first branch network based on the second reward value, the quantized value of the scheduling result of each task in the task set, and the second parameter includes: Based on the quantized value of the scheduling result of each task in the task set and the second parameter, a first reward value corresponding to each task is determined; The first reward value represents the degree of influence of the scheduling action corresponding to the task on the scheduling target; The first reward value and the second reward value are combined to obtain the third reward value; Based on the third reward value, an advantage value is determined; the advantage value characterizes the degree of advantage of the scheduling action of the task to be scheduled relative to the average scheduling level of the first branch network. Based on the aforementioned advantage value, the model parameters of the first branch network are updated.

7. The task scheduling method according to claim 1, wherein the knowledge base is constructed in the following manner: Obtain historical scheduling sample data of the computing cluster and / or simulated scheduling sample data generated based on the computing cluster; Based on the historical scheduling sample data and / or the simulated scheduling sample data, a combination pair of features and values ​​is determined; the features represent the topological structure of the sample tasks in the historical scheduling sample data and / or the simulated scheduling sample data; the values ​​include the quantized value of the sample task completion time after inversion. The combined pairs are stored to obtain a knowledge base.

8. A task scheduling device, comprising: The first acquisition module is used to acquire the first parameter corresponding to the task to be scheduled in the task set; The first parameter characterizes the first topology between the task to be scheduled and other tasks in the task set, as well as the first running state of the computing cluster. The processing module is used to process the first parameter based on the first branch network to obtain the scheduling action; The scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster; The selection module is used to select a quantized value of the scheduling result that matches the task to be scheduled from the knowledge base based on the first parameter and the second branch network. The quantitative value of the scheduling result represents the degree of influence of the computing resource scheduling result corresponding to the historical task matched with the task to be scheduled on the scheduling objective. The second acquisition module is used to acquire the second parameter corresponding to the task to be scheduled after the scheduling action is executed; The second parameter characterizes the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, as well as the second running state of the computing cluster. The update module is used to keep the parameters of the second branch network unchanged, update the model parameters of the first branch network based on the quantized value of the scheduling result and the second parameters, and if the task set has not been completed, continue to execute the next task in the task set based on the updated model parameters of the first branch network.

9. An electronic device, comprising: At least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor is used to execute the computer program to enable the electronic device to perform the following method steps: Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster. Based on the first branch network, the first parameter is processed to obtain a scheduling action; the scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster; Based on the first parameter, the second branch network selects a scheduling result quantification value that matches the task to be scheduled from the knowledge base; the scheduling result quantification value represents the degree of influence of the computing resource scheduling result corresponding to the historical task that matches the task to be scheduled on the scheduling target. Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; the second parameter represents the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, and the second running state of the computing cluster. Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.

10. A computer storage medium carrying one or more computer programs, which, when executed by an electronic device, enable the electronic device to perform the following method steps: Obtain the first parameter corresponding to the task to be scheduled in the task set; the first parameter represents the first topology between the task to be scheduled and other tasks in the task set and the first running state of the computing cluster. Based on the first branch network, the first parameter is processed to obtain the scheduling action; The scheduling action is used to allocate computing resources to the task to be scheduled in the computing cluster; Based on the first parameter, the second branch network selects a quantized value of the scheduling result that matches the task to be scheduled from the knowledge base. The quantitative value of the scheduling result represents the degree of influence of the computing resource scheduling result corresponding to the historical task matched with the task to be scheduled on the scheduling objective. Obtain the second parameter corresponding to the task to be scheduled after the scheduling action is executed; The second parameter characterizes the second topology between the task to be scheduled and other tasks in the task set after the scheduling action is executed, as well as the second running state of the computing cluster. Keeping the parameters of the second branch network unchanged, the model parameters of the first branch network are updated based on the quantized value of the second parameter of the scheduling result. If the task set has not been completed, the next task in the task set is executed based on the updated model parameters of the first branch network.