Intelligent computing power center heterogeneous resource multi-objective scheduling method and system
By using the improved NSGA-II algorithm and mixed integer programming model, the multi-objective optimization problem in heterogeneous resource scheduling of intelligent computing centers was solved, and the overall efficiency of resource scheduling in a heterogeneous environment was improved.
Patent Information
- Application Number
- CN202610448869.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-07
- Publication Date
- 2026-08-25
AI Technical Summary
In the heterogeneous computing environment of intelligent computing centers, resource scheduling faces the challenges of complexity caused by the diversity of computing units and the conflict between multi-objective optimization requirements. Traditional scheduling strategies are difficult to balance computing power utilization, energy efficiency, response time and service quality.
An improved NSGA-II algorithm is used to generate Pareto optimal solution sets. Combined with a mixed integer programming model, resources are allocated. Task features are obtained through feature extraction and lightweight machine learning techniques to achieve multi-objective optimization of energy consumption, response time, resource utilization and cost.
It achieves multi-objective optimization of computing power utilization, energy efficiency, response time and service quality in heterogeneous resource environments, and improves the overall efficiency and effectiveness of resource scheduling.
Smart Images

Figure CN122633366A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of resource scheduling technology, and in particular to a method and system for multi-objective scheduling of heterogeneous resources in an intelligent computing center. Background Technology
[0002] With the rapid development of artificial intelligence technology, especially the explosive growth in the training and inference needs of large-scale models with hundreds of billions of parameters, intelligent computing centers have become a crucial infrastructure supporting AI applications. These intelligent computing centers need to handle massive computing tasks and face the triple challenges of "memory wall," "communication bottleneck," and "energy efficiency paradox." Traditional homogeneous computing architectures can no longer meet these demands. Heterogeneous computing architectures, through the collaborative deployment of computing units such as CPUs, GPUs, FPGAs, and ASICs, can theoretically improve the cost-effectiveness of computing power by 3-5 times, making them an inevitable choice for the construction of intelligent computing centers.
[0003] However, resource scheduling in heterogeneous environments faces significant challenges. The diversity of computing units (including differences in instruction set architecture, performance characteristics, and energy efficiency) makes resource scheduling exceptionally complex. For example, in a typical AI training scenario, the NVIDIA A100's FP16 computing power reaches 19.5 TFLOPS, the Huawei Ascend 910B's is 256 TFLOPS (INT8), while the Cambricon MLU370's TOPS / W reaches 2.9, suitable for the low-power requirements of inference scenarios. This fragmentation of the hardware ecosystem increases algorithm migration costs by 3-5 times; for instance, migrating ResNet-50 from CUDA to the Ascend platform requires 230 person-days. Simultaneously, intelligent computing centers need to balance multiple optimization objectives, including computing power utilization, energy efficiency, response time, and quality of service. These objectives often conflict; for example, increasing resource utilization may lead to increased energy consumption, while reducing response time may decrease system throughput. Traditional static scheduling strategies struggle to cope with such multi-objective conflicts and dynamic workloads, necessitating intelligent optimization methods to address this issue. Summary of the Invention
[0004] This invention provides a method and system for multi-objective scheduling of heterogeneous resources in intelligent computing centers, which solves the shortcomings of related technologies in intelligent computing centers that make it difficult to simultaneously meet the multi-objective optimization requirements of computing power utilization, energy efficiency, response time and service quality.
[0005] This invention provides a method for multi-objective scheduling of heterogeneous resources in an intelligent computing center, comprising the following steps: S1. Acquire computation task data and resource status data; the resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. S2. Extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements; S3. Based on the task characteristics and the resource status data, use the improved NSGA-II algorithm to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost. S4. Input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.
[0006] As a preferred approach, feature extraction is performed on the computational task data, including the following steps: The floating-point operation ratio of the task is calculated by analyzing the characteristics of the task instructions or the performance counters. Collect memory access address sequences and evaluate whether the memory access mode is a continuous access mode or a random access mode based on the step size distribution. Parse task communication parameters, identify communication modes, and count communication volume.
[0007] As a preferred embodiment, the step of generating a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization, and cost using the improved NSGA-II algorithm includes the following steps: S301. Randomly generate an initial population that satisfies the integer constraints; S302. Based on the task characteristics including task resource requirements and the resource status data, calculate the objective function value of each individual regarding energy consumption, response time, and resource utilization. S303. Stratify the population according to the Pareto dominance relation, and calculate the crowding entropy for each stratified population to obtain the density index of each solution set; the crowding entropy CE ( i The expression for ) is:
[0008] in, Indicates the first i The solution is at the th solution. j Normalized density values on each target M The target number; S304. Based on the density index of each solution set, a binary tournament is used to select the corresponding individuals to enter the mating pool. S305. The mating pool performs adaptive crossover and mutation to generate a progeny population; S306. Merge the parent and offspring populations and retain the best individual; S307. Determine whether the preset maximum number of iterations has been reached. If so, output the optimal individual as the Pareto optimal solution set; otherwise, proceed to step S302.
[0009] As a preferred embodiment, in step S306, the top 20% of individuals with non-dominated solutions are retained as the optimal individuals.
[0010] As a preferred approach, the Pareto optimal solution set is input into a mixed-integer programming model with constraints for resource allocation, including the following steps: S307. Determine whether the preset maximum number of iterations has been reached. If so, output the optimal individual as the Pareto optimal solution set; otherwise, proceed to step S302.
[0011] As a preferred embodiment, in step S306, the top 20% of individuals with non-dominated solutions are retained as the optimal individuals.
[0012] As a preferred approach, the Pareto optimal solution set is input into a mixed-integer programming model with constraints for resource allocation, including the following steps: S401. Select a set of solutions from the Pareto optimal solution set as target weights according to real-time scheduling requirements, or automatically determine the target weights using a multi-attribute decision method, and use the target weights as the optimization direction of the mixed integer programming model. S402. Construct a mixed-integer programming model: Define the decision variables of the model, construct the objective function based on the selected objective weights, and set constraints and initialize the model parameters; S403. Preprocessing to reduce variable size: Perform task-server compatibility analysis, iterate through all servers for each task, check whether their resource capacity meets the task requirements, and whether they have the accelerator type required by the task. Among them, retain servers that can meet their resource requirements and have the required accelerator type as candidate allocation schemes. S404. Generate high-quality initial solutions: Using the shortest processing time first heuristic algorithm, tasks are sorted from smallest to largest according to their estimated execution time, and the tasks are assigned to the servers with the lightest current load and that meet the resource constraints. At the same time, the start and stop status of the servers is recorded to form an allocation scheme. Among them, all the generated allocation schemes are used as the initial feasible solutions of the mixed integer programming model, and their objective function values are used as the initial upper bound of the branch and bound method. S405, Branch and Bound Solution and Constraint Tightening: The branch and bound method is used to solve the simplified mixed integer programming model. During the solution process, effective inequalities are dynamically added based on the information of the current relaxed solution. When the branch and bound method finds a solution that satisfies the optimality condition or reaches the preset solution time limit, the solution is stopped and the optimal resource allocation scheme is output, including the server allocated to each task, the start and stop status of each server, and the resource usage.
[0013] As a preferred embodiment, the constraints configured in the mixed-integer programming model include: Task allocation constraints include that each task must be assigned to, and can only be assigned to, one server. Resource capacity constraints include situations where the resource requirements of a task allocated to a server are less than or equal to its capacity. Heterogeneous accelerator constraints include assigning each task to a server with the appropriate accelerator type; and, Server start / stop constraints, including assigning tasks to running servers.
[0014] As a preferred embodiment, the mixed-integer programming model is configured with an objective function to minimize the total cost, the expression of which is:
[0015] in, Indicates server j energy consumption Indicates task i Response time Indicates task i Does it meet SLA requirements? , , These are weighting coefficients, which are dynamically adjusted based on the Pareto optimal solution set.
[0016] As a preferred embodiment, the method further includes the following steps: Based on a preset dynamic feedback cycle, global load information and energy consumption data are collected periodically in the first cycle, and the multi-objective optimization effect is evaluated periodically in the second cycle. The weight coefficients are dynamically adjusted based on the evaluation results. , , and the constraints configured in the hybrid integer programming model.
[0017] As a preferred embodiment, the method further includes the following steps: A heterogeneous resource-aware task scheduling scheme is adopted, which uses lightweight machine learning technology to predict resource changes between nodes and adapt tasks according to resource allocation.
[0018] This invention also provides a multi-objective scheduling system for heterogeneous resources in intelligent computing centers, applied to the multi-objective scheduling method for heterogeneous resources in intelligent computing centers proposed in this invention. It includes: The resource status monitoring module is used to acquire computing task data and resource status data; the resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. The task analysis module is used to extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements. The multi-objective optimization module is used to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost based on the task characteristics and the resource status data using an improved NSGA-II algorithm. The local scheduling module is used to input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.
[0019] Compared with the prior art, the beneficial effects of the technical solution of the present invention are: This invention decomposes the complex heterogeneous resource scheduling problem into multiple relatively independent yet collaborative layers. It generates Pareto optimal solution sets by employing an improved NSGA-II algorithm, supporting the trade-off optimization of four objectives: energy consumption, response time, resource utilization, and cost. Furthermore, it uses a mixed-integer programming model for precise resource allocation, adapting resource allocation to tasks to achieve multi-objective optimization requirements that balance computing power utilization, energy efficiency, response time, and service quality. Attached Figure Description
[0020] Figure 1 This is a flowchart illustrating a multi-objective scheduling method for heterogeneous resources in an intelligent computing center according to an embodiment of the present invention.
[0021] Figure 2 This is an architecture diagram of a multi-objective scheduling system for heterogeneous resources in an intelligent computing center, according to an embodiment of the present invention. Detailed Implementation
[0022] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.
[0023] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular forms “a,” “the,” and “the” used in this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.
[0024] It should be understood that although the terms first, second, third, etc., may be used in this invention to describe various information, this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of this invention, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."
[0025] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments.
[0026] This embodiment proposes a multi-objective scheduling method for heterogeneous resources in an intelligent computing center, such as... Figure 1 The diagram shown is a flowchart of the multi-objective scheduling method for heterogeneous resources in the intelligent computing center according to this embodiment.
[0027] The multi-objective scheduling method for heterogeneous resources in intelligent computing centers proposed in this embodiment includes the following steps: S1. Acquire computation task data and resource status data; the resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. S2. Extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements; S3. Based on the task characteristics and the resource status data, use the improved NSGA-II algorithm to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost. S4. Input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.
[0028] Intelligent computing centers typically contain various heterogeneous computing resources. In this embodiment, a unified resource abstraction is preferably provided through virtualization technology and standard interfaces. Specifically, this includes traditional CPU and GPU servers, as well as new computing units (such as NPUs and FPGAs) and dedicated accelerator cards (such as TPUs and APUs). To reduce the impact of hardware ecosystem fragmentation, a unified operator abstraction interface is preferably adopted to support operator calls and conversions for various hardware architectures.
[0029] In this embodiment, the improved NSGA-II algorithm is used to perform multi-objective optimization on the complex heterogeneous resource scheduling problem. Combined with a mixed integer programming model, the multi-objective decision of the upper layer is transformed into a specific resource allocation scheme, thereby realizing multi-objective scheduling of heterogeneous resources.
[0030] In an optional embodiment, step S1 preferably collects global resource status information through a distributed monitoring agent, including node load (CPU / GPU utilization, video memory usage), communication link status (bandwidth utilization, latency), and energy status (PUE, temperature, etc.).
[0031] Furthermore, step S1 involves dynamic data acquisition, selectively collecting information on task execution effectiveness and resource status changes. During implementation, key features are extracted using time series analysis and filtering techniques to provide feedback input for upper-level decision-making. Therefore, this embodiment supports feedback adjustments at various frequencies, ranging from second-level (load information) to minute-level (energy consumption information).
[0032] During the dynamic data acquisition process in step S1, real-time data such as node load and task progress can be selectively acquired at a second-level frequency, while slower-changing data such as energy consumption and temperature can be acquired at a minute-level frequency to obtain time-series data. The acquired data includes actual task completion time, SLA compliance status, node CPU / GPU utilization, memory usage, network throughput, real-time power consumption, and PUE value. The time-series data is processed using a moving average method to remove noise and extract trend components. Change rate detection identifies sudden load increases or temperature anomalies, autocorrelation analysis reveals load cyclical patterns, and the prediction error is calculated by comparing actual and predicted values.
[0033] Therefore, the key features extracted through time series analysis and method filtering techniques include: node load prediction deviation, used to adjust resource capacity constraints; load fluctuation intensity, used to trigger migration decisions; actual PUE value and grid carbon intensity, used to dynamically adjust energy consumption weights; task execution time deviation, used to correct task profiles; SLA violation rate, used to adjust response time weights; fault prediction confidence and node health score, used to optimize node selection preferences.
[0034] These key features are fed back to the task scheduler on a second-by-second basis for dynamic adjustment, to the multi-objective optimization module on a minute-by-minute basis for adjusting weight coefficients, and to the task analysis model on an hour-by-hour basis, forming a closed-loop optimization.
[0035] In an optional embodiment, step S2 involves feature extraction of the computation task data, including the following steps: By analyzing task instruction characteristics or performance counters, the floating-point operation ratio of the task is calculated to identify computationally intensive tasks. Collect memory access address sequences and evaluate whether the memory access mode is a continuous access mode or a random access mode based on the step size distribution. Parse task communication parameters, identify communication modes (such as global specifications and parameter servers), and count communication volume to predict overhead.
[0036] In an optional embodiment, step S3 employs an improved NSGA-II algorithm to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization, and cost, including the following steps: S301. Randomly generate an initial population that satisfies the integer constraints.
[0037] S302. Based on the task characteristics including task resource requirements and the resource status data, calculate the objective function value of each individual regarding energy consumption, response time, and resource utilization. The task characteristics include computational density, memory access patterns, communication patterns, and communication volume, which are characterized by the proportion of floating-point operations in the task. In the improved NSGA-II algorithm, these data will be encoded as decision variables for the scheduling scheme, constituting individuals in the initial population.
[0038] S303. Stratify the population according to the Pareto dominance relation, and calculate the crowding entropy for each stratified population to obtain the density index of each solution set; the crowding entropy CE ( i The expression for ) is:
[0039] in, Indicates the first i The solution (i.e., the task) is at the th... j Normalized density values on each target (i.e., the server). M The target number (i.e., the number of servers).
[0040] S304. Based on the density index of each solution set, a binary tournament is used to select the corresponding individuals to enter the mating pool.
[0041] S305. The mating pool performs adaptive crossover and mutation to generate offspring population.
[0042] During adaptive crossover and mutation, the crossover probability and mutation probability are calculated through an adaptive adjustment mechanism. The crossover probability... Adaptively adjust according to the following formula: in, For the current algebra, For the largest algebra, and These are the upper and lower bounds of the crossover probability, respectively. Preferably, ,and .
[0043] And mutation probability Conversely, it increases with the number of generations to enhance later search capabilities, and its expression is: in, and These are the upper and lower bounds of the mutation probability, respectively. Preferably, and .
[0044] This step will determine the crossover probability. and mutation probability As control parameters for genetic operations, they determine the proportion and intensity of individuals undergoing crossover and mutation in each generation of evolution. Specifically, they include: Application of crossover operation: In the mating pool, for each selected parent pair, a random number is first generated. If this random number is less than the crossover probability of the current generation, simulated binary crossover is performed on the pair to generate two offspring; otherwise, the parent pair is directly copied as offspring. The crossover probability adaptively decreases with the number of generations, allowing the algorithm to maintain high population diversity in the early stages and reduce the destruction of high-quality solutions in the later stages.
[0045] Application of the mutation operation: For each newly generated offspring individual, a random number is generated bit by bit (i.e., for each decision variable). If the random number is less than the mutation probability of the current generation, a polynomial mutation is performed on the encoded value of that bit to introduce a local perturbation; otherwise, the bit remains unchanged. The mutation probability adaptively increases with the number of generations, enhancing the algorithm's ability to escape local optima in later stages.
[0046] Adaptive adjustment mechanism: In the early stages of evolution, the algorithm performs crossover operations with a high probability to achieve a broad global search. As the number of generations progresses, the crossover probability gradually decreases to reduce the disruption of favorable gene patterns. Conversely, the mutation probability remains low in the early stages to stabilize the evolutionary direction, while gradually increasing in the later stages to enhance the ability to perform fine-grained searches in local regions and prevent the algorithm from getting trapped in local optima. Through this dynamic balance, the algorithm can adaptively adjust its search strategy according to the current evolutionary state.
[0047] S306. Merge the parent and offspring populations and retain the best individual.
[0048] S307. Determine whether the preset maximum number of iterations has been reached. If so, output the optimal individual as the Pareto optimal solution set; otherwise, proceed to step S302.
[0049] The improved NSGA-II algorithm outputs a Pareto optimal solution set, which is a set of scheduling schemes that satisfy multiple objective trade-offs, including energy consumption, response time, resource utilization, and cost. Each solution corresponds to a task-node allocation scheme, specifically including information such as which computing node each task is assigned to, the start / stop status of each node, and the resource allocation ratio. The schemes in the solution set are independent of each other, providing users with diverse trade-off options. In this embodiment, each solution optionally corresponds to a set of task-node allocation schemes and their estimated performance values on the four objectives of energy consumption, response time, resource utilization, and cost.
[0050] In scheduling algorithm research, the NSGA-II algorithm (i.e., the non-dominated sorting genetic algorithm) is widely used in scheduling problems due to its excellent multi-objective optimization capabilities. The NSGA-II algorithm efficiently searches for Pareto optimal solutions in the solution space by simulating biological evolution. Its core idea is to maintain solution diversity through non-dominated sorting and crowding distance calculation. This embodiment introduces an adaptive crossover and mutation operator to the traditional NSGA-II algorithm, dynamically adjusting the genetic operator parameters based on population diversity and generation number to enhance later-stage search capabilities. It also incorporates a diversity maintenance strategy based on crowding entropy, calculating crowding entropy for each stratified population and comprehensively considering the distribution characteristics of solutions in both the objective and decision spaces to better maintain solution diversity and avoid premature convergence. Furthermore, it adds elite retention and local search mechanisms, preserving some individuals from non-dominated solutions to directly enter the next generation, ensuring the retention of elite solutions. Simultaneously, it performs a local search on the sparse regions in the Pareto front, enhancing the algorithm's development capabilities.
[0051] Furthermore, in step S306, the top 20% of individuals with non-dominated solutions are retained as optimal individuals.
[0052] In this process, after each generation of evolution, the merged population is sorted using non-dominated algorithms to obtain multiple Pareto front levels (F1, F2, F3, etc.). All non-dominated solutions in the first front F1 are sorted from most crowded to least crowded, and the top 20% of individuals (if less than one in 20%, only one is retained) are directly copied to the next generation population, without participating in subsequent crossover and mutation operations. These elite individuals retain the best genetic information from the current generation, ensuring the algorithm converges in the correct direction and does not lose any high-quality solutions found.
[0053] Alternatively, the improved NSGA-II algorithm used in step S3 incorporates a preference weighting mechanism. The steps include: Weight vector initialization: Preset the initial weight vector according to the application scenario requirements (such as energy consumption priority, response time priority). These represent four objectives: energy consumption, response time, resource utilization, and cost, respectively, and must satisfy... .
[0054] Fitness calculation stage: When calculating the individual objective function value, a weight vector is introduced to weight and aggregate the original objective value to generate a weighted fitness value, which serves as an auxiliary basis for non-dominated ranking.
[0055] Non-dominated ranking optimization: Based on the traditional Pareto dominance relation, a weighted dominance criterion is added: if individual A is significantly better than individual B in the weighted aggregation value and not inferior to B in other objectives, then A is determined to dominate B. This allows the algorithm to guide the search in the direction of user preferences while maintaining the diversity of the Pareto front.
[0056] Selection guidance: In the binary adversarial selection, individuals with better weighted fitness values are given priority to enter the pairing pool, thereby increasing the evolutionary pressure in the preferred direction.
[0057] Dynamic adjustment mechanism: Based on real-time feedback (such as changes in grid carbon intensity and task urgency), the weight vector is dynamically updated and the algorithm is re-optimized to achieve adaptive adjustment of preferences.
[0058] In an optional embodiment, step S4 involves inputting the Pareto optimal solution set into a constrained mixed-integer programming model for resource allocation, including the following steps: S401. Obtain the Pareto optimal solution set: Receive the Pareto optimal solution set output by the improved NSGA-II algorithm. Each solution in the solution set corresponds to a set of task-node allocation schemes and their estimated performance values on four objectives: energy consumption, response time, resource utilization, and cost. Based on the actual needs of the current scheduling scenario (e.g., prioritizing low-energy consumption schemes when the grid carbon intensity is high, and prioritizing short-response-time schemes when the task is urgent), select a solution from the Pareto optimal solution set output in the previous step as the optimization benchmark (i.e., objective weight), or use a multi-attribute decision-making method (e.g., the approximation of ideal solution ranking method) to automatically determine the preference weights of each objective (i.e., objective weights), and use the determined objective weights as the optimization direction of the mixed integer programming model.
[0059] S402. Construct a mixed-integer programming model: Based on the selected target weights, construct the objective function of the mixed-integer programming model, i.e., minimize the weighted total cost; define decision variables, including task allocation variables (indicating whether a task is assigned to a server), server start / stop variables (indicating whether a server is turned on), accelerator usage variables (indicating whether a server uses a specific type of accelerator); and initialize model parameters, including the rated energy consumption of each server, the estimated response time of tasks on each server, the service quality penalty coefficient, etc., and set constraints.
[0060] S403. Preprocessing to reduce variable size: Perform task-server compatibility analysis, iterating through all servers for each task to check if their resource capacity (such as CPU cores, memory size, and storage space) meets the task requirements and if they have the required accelerator type. Only task-server pairs that meet the conditions are retained as candidate allocation schemes, eliminating completely infeasible task allocation variables, thereby reducing the number of integer variables in the model and lowering the computational complexity of subsequent solutions.
[0061] S404. Generating High-Quality Initial Solutions: Using the Shortest Processing Time First (SPT) heuristic algorithm, tasks are sorted by their estimated execution time from smallest to largest and processed sequentially. For each task, a server with the most remaining resources that satisfies all resource constraints is temporarily assigned, and the server's start / stop status is recorded to form an allocation scheme. The generated complete allocation scheme is used as the initial feasible solution of the mixed-integer programming model, and its objective function value is used as the initial upper bound of the branch and bound method to accelerate the search for the optimal solution.
[0062] S405, Branch and Bound Solution and Constraint Tightening: The branch and bound method is used to accurately solve the simplified mixed-integer programming model. During the solution process, effective inequalities (cutting planes) are dynamically added based on information from the current relaxed solution. For example, when the task allocation of a server exceeds its capacity, an inequality is added to limit the number of tasks on that server, gradually tightening the constraints and narrowing the search space for feasible solutions. When the branch and bound method finds a solution that satisfies the optimality condition or reaches the preset solution time limit, the solution stops and the optimal resource allocation scheme is output. The scheme includes the server identifier for each task allocation, the start / stop status of each server, the accelerator usage of each server, and the estimated energy consumption, response time, and resource utilization rate corresponding to the scheme.
[0063] Optionally, the optimal resource allocation scheme can be sent to the lower-level task scheduler for execution, while recording various performance indicators of the scheme for subsequent feedback adjustments and model optimization.
[0064] Furthermore, for large-scale problems, this embodiment introduces the following acceleration strategy in step S405: Preprocessing stage: Invalid variables are eliminated through task-server compatibility analysis, which has been implemented in the aforementioned S403 step; Initial solution generation: A high-quality initial solution is generated using the shortest processing time first algorithm, which has been implemented in step S404; Cutting plane method: Dynamically add effective inequalities during the branch and bound solution process, which has been implemented in step S405.
[0065] Furthermore, to adapt to dynamic environmental changes, the following feedback adjustment steps may optionally be included after step S406: Record the deviation between the actual execution results and the model's predicted values; When the deviation exceeds the preset threshold, model parameter correction or constraint adjustment is triggered. The corrected parameters are used for scheduling decisions in the next cycle, forming a closed-loop optimization.
[0066] More preferably, the constraints configured in the mixed-integer programming model include: (1) Task allocation constraints, including that each task must be assigned to and can only be assigned to one server:
[0067] in, Indicates task i Assign to server j , i.e., task allocation variables; N Total number of tasks; (2) Resource capacity constraints, including the requirement that the resource requirements of the tasks allocated to the server are less than or equal to its capacity:
[0068] in, Indicates task i For the k The demand for this type of resource. Among them, k This is an index for resource types, typically including the number of CPU cores, memory size (GB), storage space (GB), and number of GPUs. These values originate from the task resource requirement characteristics predicted in step S2 using a lightweight machine learning algorithm. Indicates server j Upper k Total capacity of the resource class; (3) Heterogeneous accelerator constraints, including assigning each task to a server with the corresponding accelerator type:
[0069] in, Indicates server j Are there accelerator types? k That is, the accelerator uses variables; Indicates the required accelerator type k The set of tasks; and, (4) Server start / stop constraints, including assigning tasks to started servers:
[0070] in, L For a sufficiently large positive number, Indicates server jWhether it is enabled or not, i.e., the server start / stop variable.
[0071] More preferably, the mixed-integer programming model is configured with an objective function for minimizing the total cost, the expression of which is:
[0072] in, Indicates server j energy consumption Indicates task i Response time Indicates task i Does it meet SLA requirements? , , These are weighting coefficients, which are dynamically adjusted based on the Pareto optimal solution set.
[0073] More preferably, according to a preset dynamic feedback cycle, global load information and energy consumption data are collected periodically in the first cycle, and the multi-objective optimization effect is evaluated periodically in the second cycle, with the weight coefficients dynamically adjusted based on the evaluation results. , , and the constraints configured in the hybrid integer programming model.
[0074] The evaluation of the multi-objective optimization effect includes the following steps: S801. Collect evaluation data: At the end of an evaluation cycle, collect the actual scheduling execution data that was actually running during that cycle, including the actual completion time of each task, the actual energy consumption of each server, the time-series data of resource utilization, and the service quality (SLA) compliance status.
[0075] S802. Calculate multi-objective performance indicators: Based on the collected data, calculate four core indicators within the cycle: average task response time, total energy consumption, average resource utilization, and SLA violation rate. Compare these with the expected target values set during scheduling decisions to obtain the deviation rate of each indicator.
[0076] S803. Generate a comprehensive score: Using a weighted summation method or the TOPSIS multi-attribute decision-making method, the deviation rates of the four indicators are combined into a comprehensive score. A higher score indicates that the actual execution effect is closer to the optimization goal, while a lower score indicates that the scheduling effect deviates from expectations.
[0077] S804. Identify and optimize bottlenecks: Analyze the sources of deviation for each indicator. If the response time deviation is too large, check whether the task allocation is reasonable or whether the node is overloaded. If the energy consumption deviation is too large, analyze the carbon intensity change or the node energy efficiency performance. If the resource utilization rate is low, check the load balancing situation. If the SLA violation rate increases, check the task priority guarantee mechanism.
[0078] S805. Dynamic Adjustment Decision: Based on the comprehensive score and bottleneck identification results, adjust the weight coefficients according to preset rules. , , For example, if the energy consumption deviation is significant, the energy consumption weight should be appropriately increased. If the response time deteriorates, increase the weight of the response time. Meanwhile, based on the bottleneck identification results, the constraints in the mixed-integer programming model are dynamically adjusted, such as relaxing the upper limit of resource capacity constraints or adjusting server start-up and shutdown thresholds, to make the model more adaptable to the actual operating environment.
[0079] In an optional embodiment, this embodiment further includes the following steps: A heterogeneous resource-aware task scheduling scheme is adopted, which uses lightweight machine learning technology to predict resource changes between nodes and adapt tasks according to resource allocation.
[0080] The heterogeneous resource-aware task scheduling scheme is an intelligent scheduling method that can identify and utilize the hardware differences between computing nodes. This scheme not only focuses on the load status of nodes but also delves into the differences in architectural characteristics, computing power, energy efficiency, and memory access bandwidth among different nodes (CPU, GPU, NPU, etc.), as well as the differences in task execution efficiency on different types of nodes. By perceiving these heterogeneous characteristics, the scheduler can select the most suitable node type for each task's computing needs, achieving optimal "task-resource" matching, thereby improving overall computing efficiency, reducing energy consumption, and ensuring service quality.
[0081] In this embodiment, the task scheduling steps include: S901. Task Preprocessing and Sorting: Based on the resource allocation scheme output by the mixed-integer programming model, obtain a queue of tasks to be scheduled. Specifically, tasks are sorted comprehensively based on task priority, estimated execution time, and resource requirements (such as computational density, memory access mode, and communication mode). Higher-priority tasks are scheduled first; for tasks with the same priority, the shortest estimated execution time is prioritized.
[0082] S902, Node Status Awareness and Prediction: Real-time acquisition of the operational status of each computing node, including CPU / GPU utilization, memory usage, temperature, and the number of currently queued tasks. Simultaneously, lightweight machine learning models (such as gradient boosting trees or lightweight recurrent neural networks) are used to predict the resource availability of nodes in the near future. Model input includes the node's historical load sequence, current task execution progress, and information on upcoming tasks; the output is a predicted value for the available resources of the node in the near future.
[0083] S903, Task-Node Matching Decision: For the currently scheduled task, traverse all available nodes and comprehensively consider the following factors to determine the matching score: (1) Hardware compatibility: Whether the task is suitable for running on this type of node (e.g., GPU-intensive tasks should be selected with priority to GPU nodes). (2) Resource availability: Whether the current and predicted available resources of the node meet the task requirements; (3) Energy efficiency performance: The energy efficiency ratio of this node under the current load; (4) Data locality: Whether the data required by the task has been cached locally on the node or on a nearby node; (5) Load balancing: Avoid distributing too many tasks to the same node; (6) The multi-factor weighted scoring method is used to calculate the comprehensive score of each candidate node, and the node with the highest score is selected as the target node.
[0084] S904, Scheduling Execution and Status Update: Distribute tasks to the selected target nodes and update the node's resource occupancy status and task queue information. For nodes predicted to be experiencing resource strain, pause the allocation of new tasks in advance to avoid overload.
[0085] S905. Dynamic Adjustment and Anomaly Handling: During task execution, continuously monitor node load changes and task execution progress. If node load exceeds a preset threshold or task execution progress deviates significantly from expectations, trigger a dynamic adjustment mechanism: For tasks not yet started, reassess the allocation scheme; for tasks in progress, assess whether migration is necessary (e.g., migrating to a less loaded node). In case of node failure or other anomalies, immediately add the affected tasks back to the scheduling queue and trigger rescheduling.
[0086] Through the above steps, the heterogeneous resource-aware task scheduling scheme enables proactive prediction and rapid response to changes in node resources, ensuring that task allocation always adapts to the current system state and improving the overall scheduling effect. Example
[0087] This embodiment proposes a multi-objective scheduling system for heterogeneous resources in an intelligent computing center, applying the multi-objective scheduling method for heterogeneous resources in an intelligent computing center proposed in Embodiment 1. For example... Figure 2 The diagram shown is an architecture diagram of the heterogeneous resource multi-objective scheduling system of the intelligent computing center in this embodiment.
[0088] The multi-objective scheduling system for heterogeneous resources in the intelligent computing center proposed in this embodiment includes: The resource status monitoring module is used to acquire computing task data and resource status data; the resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. The task analysis module is used to extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements. The multi-objective optimization module is used to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost based on the task characteristics and the resource status data using an improved NSGA-II algorithm. The local scheduling module is used to input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.
[0089] The global scheduling layer, consisting of the resource status monitoring module, task analysis module, and multi-objective optimization module, serves as the system's "intelligent brain," responsible for multi-objective optimization decisions and global resource allocation.
[0090] More preferably, the resource status monitoring module collects global resource status information through a distributed monitoring agent, including node load (CPU / GPU utilization, memory usage), communication link status (bandwidth utilization, latency), and energy status (PUE, temperature, etc.). This module employs time-series prediction technology, which can predict hardware failures 10-30 minutes in advance with an accuracy rate of up to 94.7%.
[0091] The resource status monitoring module is equipped with a dynamic feedback mechanism. This mechanism iteratively adjusts the strategy based on real-time data from edge nodes, forming a closed-loop optimization process of "monitoring-decision-execution-feedback". For example, the system collects global load information and energy consumption data every 5 minutes, evaluates the multi-objective optimization effect every 30 minutes, and dynamically adjusts the weight parameters of the NSGA-II algorithm and the constraints of the MIP model based on the evaluation results.
[0092] More preferably, the task analysis module performs feature extraction and analysis on the input task, including computationally intensive identification (such as the proportion of matrix operations), memory access pattern evaluation (continuous or random access), and communication pattern analysis (All-Reduce, Parameter Server, etc.). This module uses lightweight machine learning algorithms to predict task resource requirements with an accuracy of over 90%.
[0093] More preferably, the multi-objective optimization module uses an improved NSGA-II algorithm to generate a Pareto optimal solution set, supporting trade-off optimization of four objectives: energy consumption, response time, resource utilization, and cost. This module innovatively introduces a preference weighting mechanism, allowing users to dynamically adjust objective weights according to the application scenario.
[0094] Furthermore, the local scheduling module acts as the "execution center," responsible for transforming the multi-objective decisions of the upper layer into specific resource allocation schemes.
[0095] Optionally, the local scheduling module includes: Resource Allocator: Employs a mixed-integer programming model for precise resource allocation, comprehensively considering task constraints, resource constraints, and objective constraints. This module supports both online and offline solution modes. The online mode uses heuristic rules for fast response, while the offline mode uses the branch and bound method to find the optimal solution.
[0096] Task scheduler: Responsible for mapping and scheduling tasks to specific computing nodes, supporting various scheduling strategies (such as load balancing, energy consumption priority, and performance priority) and adaptive adjustment mechanisms. This module adopts a heterogeneous resource-aware task scheduling scheme, using lightweight machine learning technology to predict resource changes between nodes and adapt tasks according to resource allocation.
[0097] Dynamic Feedback Unit: This unit collects information on task execution performance and resource status changes, extracts key features through time series analysis and filtering techniques, and provides feedback input for upper-level decision-making. This module supports feedback adjustments at various frequencies, ranging from second-level (load information) to minute-level (energy consumption information).
[0098] Optionally, the system further includes a resource layer. This resource layer contains various heterogeneous computing resources and provides a unified resource abstraction through virtualization technology and standard interfaces. This layer includes not only traditional CPU and GPU servers, but also new computing units (such as NPUs and FPGAs) and dedicated accelerator cards (such as TPUs and APUs). To reduce the impact of hardware ecosystem fragmentation, this layer provides a unified operator abstraction interface, supporting operator calls and conversions for various hardware architectures.
[0099] It should be noted that the system described in this embodiment uses the multi-objective scheduling method for heterogeneous resources in the intelligent computing center proposed in Embodiment 1. Therefore, the optional implementation methods proposed in Embodiment 1 are also applicable in this embodiment and will not be described in detail.
[0100] The terminology used in the accompanying drawings is for illustrative purposes only and should not be construed as limiting the invention. Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art can make other variations or modifications based on the above description. It is neither necessary nor possible to exhaustively describe all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the claims of the present invention.
Claims
1. A multi-objective scheduling method for heterogeneous resources in an intelligent computing center, characterized in that, Includes the following steps: S1. Acquire computation task data and resource status data; the resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. S2. Extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements; S3. Based on the task characteristics and the resource status data, use the improved NSGA-II algorithm to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost. S4. Input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.
2. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 1, characterized in that, Feature extraction of the computational task data includes the following steps: The floating-point operation ratio of the task is calculated by analyzing the characteristics of the task instructions or the performance counters. Collect memory access address sequences and evaluate whether the memory access mode is a continuous access mode or a random access mode based on the step size distribution. Parse task communication parameters, identify communication modes, and count communication volume.
3. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 1, characterized in that, The method of generating a Pareto optimal solution set that satisfies multiple objectives such as energy consumption, response time, resource utilization, and cost using the improved NSGA-II algorithm includes the following steps: S301. Randomly generate an initial population that satisfies the integer constraints; S302. Based on the task characteristics including task resource requirements and the resource status data, calculate the objective function value of each individual regarding energy consumption, response time, and resource utilization. S303. Stratify the population according to the Pareto dominance relation, and calculate the crowding entropy for each stratified population to obtain the density index of each solution set; the crowding entropy CE ( i The expression for ) is: ; in, Indicates the first i The solution is at the th solution. j Normalized density values on each target M The target number; S304. Based on the density index of each solution set, a binary tournament is used to select the corresponding individuals to enter the mating pool. S305. The mating pool performs adaptive crossover and mutation to generate a progeny population; S306. Merge the parent and offspring populations and retain the best individual; S307. Determine whether the preset maximum number of iterations has been reached. If so, output the optimal individual as the Pareto optimal solution set; otherwise, proceed to step S302.
4. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 3, characterized in that, In step S306, the top 20% of individuals with non-dominated solutions are retained as optimal individuals.
5. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 1, characterized in that, The Pareto optimal solution set is input into a mixed-integer programming model with constraints for resource allocation, including the following steps: S401. Select a set of solutions from the Pareto optimal solution set as target weights according to real-time scheduling requirements, or automatically determine the target weights using a multi-attribute decision method, and use the target weights as the optimization direction of the mixed integer programming model. S402. Construct a mixed-integer programming model: Define the decision variables of the model, construct the objective function based on the selected objective weights, and set constraints and initialize the model parameters; S403. Preprocessing to reduce variable size: Perform task-server compatibility analysis, iterate through all servers for each task, check whether their resource capacity meets the task requirements, and whether they have the accelerator type required by the task. Among them, retain servers that can meet their resource requirements and have the required accelerator type as candidate allocation schemes. S404. Generate high-quality initial solutions: Using the shortest processing time first heuristic algorithm, tasks are sorted from smallest to largest according to their estimated execution time, and the tasks are assigned to the servers with the lightest current load and that meet the resource constraints. At the same time, the start and stop status of the servers is recorded to form an allocation scheme. Among them, all the generated allocation schemes are used as the initial feasible solutions of the mixed integer programming model, and their objective function values are used as the initial upper bound of the branch and bound method. S405, Branch and Bound Solution and Constraint Tightening: The branch and bound method is used to solve the simplified mixed integer programming model. During the solution process, effective inequalities are dynamically added based on the information of the current relaxed solution. When the branch and bound method finds a solution that satisfies the optimality condition or reaches the preset solution time limit, the solution is stopped and the optimal resource allocation scheme is output, including the server allocated to each task, the start and stop status of each server, and the resource usage.
6. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 5, characterized in that, The constraints configured in the mixed-integer programming model include: Task allocation constraints include that each task must be assigned to, and can only be assigned to, one server. Resource capacity constraints include situations where the resource requirements of a task allocated to a server are less than or equal to its capacity. Heterogeneous accelerator constraints include assigning each task to a server with the appropriate accelerator type; Server start / stop constraints, including assigning tasks to running servers.
7. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 5, characterized in that, The mixed-integer programming model includes an objective function for minimizing the total cost, expressed as follows: ; in, Indicates server j energy consumption Indicates task i Response time Indicates task i Does it meet SLA requirements? , , is the weighting coefficient, which is dynamically adjusted based on the Pareto optimal solution set.
8. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to claim 7, characterized in that, The method further includes the following steps: Based on a preset dynamic feedback cycle, global load information and energy consumption data are collected periodically in the first cycle, and the multi-objective optimization effect is evaluated periodically in the second cycle. The weight coefficients are dynamically adjusted based on the evaluation results. , , and the constraints configured in the hybrid integer programming model.
9. The method for multi-objective scheduling of heterogeneous resources in an intelligent computing center according to any one of claims 1 to 8, characterized in that, The method further includes the following steps: A heterogeneous resource-aware task scheduling scheme is adopted, which uses lightweight machine learning technology to predict resource changes between nodes and adapt tasks according to resource allocation.
10. A multi-objective scheduling system for heterogeneous resources in an intelligent computing center, employing the multi-objective scheduling method for heterogeneous resources in an intelligent computing center as described in any one of claims 1 to 7, characterized in that, include: The resource status monitoring module is used to acquire computing task data and resource status data; The resource status data includes real-time status data collected in real time, and predicted status data obtained through time series prediction. The task analysis module is used to extract features from the computation task data and use a lightweight machine learning algorithm to obtain task features that include task resource requirements. The multi-objective optimization module is used to generate a Pareto optimal solution set that satisfies multiple objectives of energy consumption, response time, resource utilization and cost based on the task characteristics and the resource status data using an improved NSGA-II algorithm. The local scheduling module is used to input the Pareto optimal solution set into a mixed integer programming model with constraints to allocate resources and obtain a resource allocation scheme.