Server resource scheduling system for high-density computing environments

By analyzing scheduling data discrepancies and historical task adjustments in real time, the resource supply strategy was optimized, solving the problem of inaccurate resource prediction in high-density computing environments and achieving stability and efficiency in task execution.

CN120872610BActive Publication Date: 2026-06-09SHENZHEN STONE TECH HLDG CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN STONE TECH HLDG CO LTD
Filing Date
2025-09-19
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

In high-density computing environments, existing prediction models struggle to accurately predict task resource requirements, leading to resource waste or shortages and impacting task execution stability and service quality.

Method used

By acquiring the difference between real-time scheduling data and predicted values, we can analyze the future busyness of the server and the priority of task resource supply. Combined with historical task data, we can adjust the resource supply strategy, prioritize the handling of urgent tasks, and allocate resources reasonably.

Benefits of technology

It improves the accuracy of server resource scheduling and the stability of task execution, reduces resource waste, and ensures the efficient execution of critical tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120872610B_ABST
    Figure CN120872610B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of computer resource management, in particular to a server resource scheduling system for a high-density computing environment. The system acquires scheduling data of each dimension in real time, including task resource data; according to the difference between the actual value and the predicted value in the scheduling data of the dimension at the current time and the task resource data, the resource supply priority is acquired; according to the resource supply priority, the difference between the actual value and the predicted value of the preset specified historical task resource data of the same resource demand type of each task, the resource adjustment degree is acquired; based on the task resource data and the resource adjustment degree of each task at the current time, the server resources of the high-density computing environment at the current time are scheduled and processed. The application can accurately acquire the resource adjustment degree of each task at the current time, is beneficial to accurately adjusting the predicted resources of each task at the current time, and effectively improves the efficiency and stability of task execution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer resource management technology, and more specifically to a server resource scheduling system for high-density computing environments. Background Technology

[0002] With the rapid development of cloud computing, big data, and artificial intelligence technologies, modern data centers and supercomputers have formed high-density computing environments by integrating a large number of computing nodes (including but not limited to high-performance servers, GPU / TPU accelerator clusters, virtual machines, and container instances) within a limited physical space. In such environments, tens of thousands or even hundreds of thousands of computing tasks run concurrently, placing extremely high demands on the management and scheduling of underlying computing, storage, and network resources. Server resource scheduling systems use a series of algorithms and strategies to dynamically and rationally allocate limited hardware resources to different tasks. Their core objective is to achieve a balanced cluster load, maximize resource utilization, and ensure the quality of service for all types of tasks.

[0003] To address resource contention and sudden load spikes in high-density environments, existing technologies generally employ prediction-based scheduling strategies. These strategies collect historical monitoring data (such as CPU / memory utilization, task queue length, and I / O throughput) and utilize time series analysis, machine learning, or deep learning models (such as ARIMA, Prophet, and LSTM networks) to predict future task arrival trends and resource consumption. Based on these predictions, the system reserves resources in advance to buffer against sudden load spikes, prevent system congestion, and thus improve scheduling efficiency and system stability.

[0004] However, in high-density computing environments, the concurrent execution of massive tasks makes their load curves highly dynamic, non-periodic, and highly random, exhibiting complex characteristics such as multi-peak and long-tail distribution. Traditional prediction models face severe challenges in predicting accuracy when dealing with such complex fluctuations, often resulting in significant deviations. When predictions are too conservative, excessive resource reservation occurs. While this can mitigate resource shortages to some extent, it leads to a large amount of idle resources, causing significant waste and reducing the overall system's energy efficiency. Conversely, overly aggressive predictions result in insufficient resource reservations, making it impossible to effectively cope with actual peak task demands. This can easily lead to a series of service quality degradation issues, such as excessively long task queuing times, task execution failures, and breaches of Service Level Agreements (SLAs). Therefore, existing methods cannot accurately predict the resource requirements of each task in the system in real time, making task execution unstable. Summary of the Invention

[0005] To address the technical problem of being unable to accurately predict the resource requirements of various tasks in a system in real time, the present invention aims to provide a server resource scheduling system for high-density computing environments. The specific technical solution adopted is as follows:

[0006] This invention provides a server resource scheduling system for high-density computing environments, the system comprising:

[0007] The data acquisition module is used to acquire scheduling data for each dimension in real time, including server resource data and task resource data for each task; among which, the scheduling data for each dimension includes actual values ​​and predicted values;

[0008] The resource supply priority acquisition module is used to analyze the future busyness of the server based on the difference between the actual and predicted values ​​in the scheduling data of each dimension at the current moment. It combines the task resource data of each task at the current moment with the number of tasks with the same resource demand type as each task at the current moment to obtain the resource supply priority of each task at the current moment.

[0009] The resource adjustment degree acquisition module is used to acquire the resource adjustment degree of each task at the current moment based on the resource supply priority and the difference between the actual value and the predicted value of the task resource data of the preset specified historical tasks of the same resource demand type for each task at the current moment.

[0010] The data processing module is used to schedule and process server resources in the high-density computing environment at the current moment based on the task resource data and resource adjustment level of each task at the current moment.

[0011] Furthermore, the server resource data includes the number of tasks arriving on the server and the total amount of resources.

[0012] The task resource data includes resource requirements, execution time, reference resources, and the reference resource requirements and reference execution time.

[0013] Tasks with the same type of resource requirements are organized into queues according to their execution order. The resource requirement of each task is essentially the resource requirement of the queue in which the task belongs, and the execution time of each task is essentially the execution time of the queue in which the task belongs.

[0014] The actual and predicted values ​​of the task arrival quantity at the current moment are taken as the current task arrival quantity and the predicted task arrival quantity, respectively. The actual and predicted values ​​of the total resource quantity at the current moment are taken as the current total resource quantity and the predicted total resource quantity, respectively. The actual and predicted values ​​of the resource demand quantity are taken as the actual resource demand quantity and the predicted resource demand quantity, respectively. The predicted value of the execution time is taken as the predicted execution time. The predicted value of the reference resource demand quantity is taken as the predicted reference resource demand quantity. The predicted value of the reference execution time is taken as the predicted reference execution time.

[0015] Furthermore, the method for obtaining the priority of resource supply is as follows:

[0016] Based on the difference between the predicted number of tasks arriving and the current number of tasks arriving, as well as the difference between the predicted total resources and the current total resources, the future busyness of the server can be obtained.

[0017] Based on the predicted resource reference demand and predicted reference execution time of each reference resource in the task resource data of each task at the current moment, obtain the resource requirement complexity of each task at the current moment.

[0018] Based on the number of tasks with the same resource requirement type as each task at the current moment, the predicted resource requirement of each task at the current moment, and the predicted execution time, the processing urgency of each task at the current moment is obtained.

[0019] The normalized result of the product of the future busyness, the complexity of the resource demand, and the urgency of the processing is used as the resource supply priority for each task at the current moment.

[0020] Furthermore, the method for obtaining the future busyness level is as follows:

[0021] The difference between the predicted task arrival volume and the current task arrival volume is taken as the first difference;

[0022] The ratio of the predicted total resources to the current total resources will be used as the second difference.

[0023] The normalized product of the first and second differences is used as the future busy level of the server.

[0024] Furthermore, the method for obtaining the complexity of the resource requirements is as follows:

[0025] For any task and any type of reference resource at the current moment, the proportion of the predicted reference demand for that type of reference resource in the total amount of that type of reference resource is taken as the predicted proportion of that type of reference resource for that task.

[0026] The normalized result of the product of the predicted resource reference demand, the predicted proportion, and the predicted reference execution time for the reference resource corresponding to the task is used as the predicted blocking analysis value for the reference resource corresponding to the task.

[0027] The average of the predicted blocking analysis values ​​of all reference resources corresponding to the task is used as the resource requirement complexity of the task at the current moment.

[0028] Furthermore, the method for obtaining the urgency level of the processing is as follows:

[0029] For any task at the current moment, the negative correlation result of the predicted execution time of the task is used as the first processing analysis value for the task;

[0030] The normalized result of the product of the number of tasks in the queue to which the task belongs, the predicted resource requirement, and the first processing analysis value is used as the processing urgency of the task at the current moment.

[0031] Furthermore, the method for obtaining the degree of resource adjustment is as follows:

[0032] For any task at the current moment, the mean of the difference between the actual resource demand and the predicted resource demand of each preset designated historical task in the queue to which the task belongs is normalized and used as the degree of deviation of the resource demand prediction for that task.

[0033] The sum of the difference between the actual resource requirement and the predicted resource requirement for each pre-specified historical task in the queue where the task is located is used as the direction judgment value.

[0034] When the direction judgment value is negative, the result of normalizing the sum of the opposite of the deviation of the resource demand forecast for the task and the priority of the resource supply for the task is taken as the degree of resource adjustment for the task.

[0035] When the direction judgment value is positive, the normalized result of adding the deviation of the resource demand forecast of the task to the priority of resource supply of the task is used as the degree of resource adjustment for the task.

[0036] Furthermore, the method for scheduling server resources in the high-density computing environment at the current moment is as follows:

[0037] The product of the predicted resource demand and the degree of resource adjustment for each task at the current moment is used as the predicted resource demand adjustment value for each task at the current moment.

[0038] The sum of the predicted resource requirement of each task at the current moment and the adjusted predicted resource requirement is used as the corrected predicted resource requirement of each task at the current moment.

[0039] When the future busyness level is less than the preset future busyness level threshold, tasks with a current urgency level greater than the preset urgency level threshold are designated as urgent tasks; tasks with a current urgency level less than or equal to the preset urgency level threshold are designated as relaxed tasks.

[0040] Based on the revised predicted resource requirements of urgent tasks and the predicted resource requirements of relaxed tasks, the server resources of the high-density computing environment are scheduled and processed at the current moment.

[0041] When the future busyness level is greater than or equal to the preset future busyness level threshold, tasks with a current resource supply priority lower than the preset resource supply priority threshold will be delayed; tasks with a current resource supply priority greater than or equal to the preset resource supply priority threshold will be prioritized.

[0042] Based on the compressed results of the revised predicted resource requirements for delayed tasks and the revised predicted resource requirements for prioritized tasks, the server resources of the high-density computing environment are scheduled for the current moment.

[0043] Furthermore, the method for obtaining the preset specified historical tasks is as follows:

[0044] For any task at the current moment, a preset number of historical tasks in the queue that precede and are adjacent to the current task are all designated as preset historical tasks.

[0045] Furthermore, the predicted task arrival amount, predicted total resource amount, predicted resource demand, predicted execution time, reference resource, predicted reference resource demand, and predicted reference execution time are all obtained through the output of the prediction model LSTM.

[0046] The present invention has the following beneficial effects:

[0047] This invention first analyzes the future busyness of the server based on the difference between the actual and predicted values ​​in the scheduling data of each dimension at the current moment, preparing for accurate adjustment of predicted resources for tasks. It further combines the task resource data of each task at the current moment with the number of tasks with the same resource requirements as each task at the current moment to obtain the resource supply priority of each task at the current moment, accurately reflecting the priority and extent of the predicted resources required by each task at the current moment, and indirectly reflecting the initial adjustability of the predicted resources for each task at the current moment. To accurately determine the degree of adjustment of the predicted resources for each task at the current moment, it further considers the same resource requirements of each task at the current moment... The study analyzes the differences between the actual and predicted values ​​of task resource data for historical tasks with preset source demand types. It then examines the deviations in the predicted resource values ​​for each task at the current moment, and, combined with resource supply priority, determines the degree of resource adjustment for each task at the current moment. This accurately reflects the adjustability of the predicted resources for each task at the current moment, facilitating the accurate determination of the predicted resources for each task in the future. Furthermore, based on the task resource data and resource adjustment degree of each task at the current moment, the study schedules server resources in the high-density computing environment, effectively improving the accuracy and rationality of server resource scheduling, while also enhancing the efficiency and stability of task execution. Attached Figure Description

[0048] To more clearly illustrate the technical solutions and advantages in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0049] Figure 1 This is a structural block diagram of a server resource scheduling system for high-density computing environments provided in an embodiment of the present invention;

[0050] Figure 2 A flowchart illustrating a method for obtaining resource supply priority according to an embodiment of the present invention;

[0051] Figure 3 This is a schematic diagram of a computer device provided according to an embodiment of the present invention. Detailed Implementation

[0052] To further illustrate the technical means and effects adopted by the present invention to achieve its intended purpose, the following, in conjunction with the accompanying drawings and preferred embodiments, details the specific implementation, structure, features, and effects of the server resource scheduling system for high-density computing environments proposed according to the present invention. In the following description, different "one embodiment" or "another embodiment" do not necessarily refer to the same embodiment. Furthermore, specific features, structures, or characteristics in one or more embodiments can be combined in any suitable form.

[0053] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.

[0054] The specific solution of the server resource scheduling system for high-density computing environments provided by the present invention will be described in detail below with reference to the accompanying drawings. Example 1

[0055] This invention proposes a server resource scheduling system for high-density computing environments. Please refer to [link / reference]. Figure 1 The diagram illustrates a structural block diagram of a server resource scheduling system for high-density computing environments provided by an embodiment of the present invention. The system includes: a data acquisition module 10, a resource supply priority acquisition module 20, a resource adjustment degree acquisition module 30, and a data processing module 40.

[0056] The data acquisition module 10 is used to acquire scheduling data for each dimension in real time, including server resource data and task resource data for each task; wherein, the scheduling data for each dimension includes actual values ​​and predicted values.

[0057] Specifically, to accurately analyze server resource scheduling in a high-density computing environment and ensure the stable execution of each task in the system in real time, this embodiment acquires real-time monitoring data of computing nodes, task monitoring data, and system environment data. The computing node monitoring data includes CPU usage data, GPU / TPU accelerator data, memory usage data, storage I / O related data, network latency, energy consumption, and temperature. The task monitoring data includes task parameters, resource consumption trajectories, and task waiting times. The system environment data includes historical load curves, fault event logs, and node online status. This allows for subsequent prediction of the resource requirements of each task at the current moment.

[0058] To accurately predict the resource requirements of each task in real time and ensure more stable task execution in a high-density computing environment, tasks are first divided into queues based on their resource requirement type. This involves constructing queues for tasks of the same resource requirement type according to their execution order, including CPU-intensive queues, GPU / TPU queues, I / O-intensive queues, and memory-intensive queues. Then, historical queue data for various resource requirements up to the current moment, along with relevant computing node monitoring data, task monitoring data, and system environment data, are used as input to the prediction model LSTM (Long Short-Term Memory). The LSTM model outputs the number of tasks arriving and the total resource requirements for the server within a future preset time period. In this embodiment, the preset time period is set to 5 minutes. Implementers can set the duration of the preset time period according to actual conditions; it is not limited here, but the start time of the preset time period must be the next moment after the current moment. Simultaneously, the queue position of each task at the current moment, the task parameters of each task at the current moment, the resource consumption trajectory, and the task waiting time are used as input to the prediction model LSTM. The LSTM model outputs the predicted execution time and predicted resource requirements for each task at the current moment. Among them, the prediction model LSTM (Long Short-Term Memory) is a well-known technology and will not be described in detail.

[0059] For better description, this embodiment acquires scheduling data for each dimension in real time, including server resource data and task resource data for each task. The scheduling data for each dimension includes actual and predicted values. It should be noted that server resource data includes the number of tasks arriving on the server and the total amount of resources; task resource data includes resource requirements, execution duration, reference resources, and the reference resource requirements and reference execution duration for each reference resource. The resource requirements for each task are essentially the resource requirements of the queue in which the task belongs, and the execution duration of each task is essentially the execution duration of the queue in which the task belongs. The reference resources for each task include multiple types, essentially representing the multiple resources (such as CPU, memory, GPU, and bandwidth) that each task is predicted to rely on simultaneously during future execution. The reference resource requirements and reference execution duration for each reference resource are essentially the demand for each type of reference resource and the corresponding execution duration for each task during future execution.

[0060] To better distinguish between the actual and predicted values ​​of the scheduling data for each dimension, the actual and predicted values ​​of the task arrivals at the current moment are respectively used as the current task arrivals and predicted task arrivals; the actual and predicted values ​​of the total resources at the current moment are respectively used as the current total resources and predicted total resources; the actual and predicted values ​​of the resource requirements are respectively used as the actual resource requirements and predicted resource requirements; the predicted value of the execution duration is used as the predicted execution duration; the predicted value of the reference resource requirement is used as the predicted reference resource requirement; and the predicted value of the reference execution duration is used as the predicted reference execution duration. The predicted task arrivals, predicted total resources, predicted resource requirements, predicted execution duration, reference resources, predicted reference resource requirements, and predicted reference execution duration are all obtained from the output of the prediction model LSTM.

[0061] It should be noted that the current task arrival volume and the current total resource volume both correspond to the current preset time period. The current preset time period must have the same duration as the future preset time period, and the end time of the current time period must be the current time.

[0062] The resource supply priority acquisition module 20 is used to analyze the future busyness of the server based on the difference between the actual value and the predicted value in the scheduling data of each dimension at the current moment, and to obtain the resource supply priority of each task at the current moment by combining the task resource data of each task at the current moment and the number of tasks with the same resource demand type as each task at the current moment.

[0063] Specifically, in high-density computing environments, system load exhibits strong fluctuations and phased characteristics. When the number of tasks arriving and the total amount of resources increase significantly within a predetermined time period, it indicates that task execution is at its peak. To ensure task execution stability and avoid congestion, tasks currently being executed should be prioritized for more predicted server resources. Simultaneously, when the predicted resource requirement and execution time for each type of reference resource for a task are both higher at the current moment, it indicates that the task's future resource requirements are more complex and numerous, requiring more predicted server resources. Conversely, when the predicted resource requirement, execution time, and number of tasks in the queue for a task are higher, the task needs to be executed quickly to release occupied resources and avoid queuing, necessitating priority in resource allocation. Therefore, this embodiment analyzes the future server busyness based on the difference between actual and predicted values ​​in the scheduling data for each dimension at the current moment. Combining this with the task resource data for each task at the current moment and the number of tasks with the same resource requirement type, it obtains the resource allocation priority for each task at the current moment. The greater the priority of resource supply, the greater the predicted resource demand for the corresponding task should be, and the higher it should be prioritized for execution.

[0064] Preferably, in one possible implementation of this embodiment, the method for obtaining resource supply priority is described in [reference needed]. Figure 2 The document presents a flowchart of a method for obtaining resource supply priority according to this embodiment, which includes the following steps:

[0065] Step S201: Based on the difference between the predicted task arrival volume and the current task arrival volume, and the difference between the predicted total resource volume and the current total resource volume, obtain the future busy level of the server.

[0066] When the predicted number of tasks arriving is greater than the current number of tasks arriving, and the predicted total resource amount is greater than the current total resource amount, it indicates that the amount of data running on the server will be greater in the future preset time period. Therefore, this embodiment obtains the future busy level of the server based on the difference between the predicted number of tasks arriving and the current number of tasks arriving, and the difference between the predicted total resource amount and the current total resource amount. The greater the future busy level, the more server resources need to be reserved to ensure the stable execution of tasks at the current moment.

[0067] In one possible implementation of this embodiment, the method for obtaining future busyness is as follows: the difference between the predicted number of tasks arriving and the current number of tasks arriving is taken as the first difference; the ratio of the predicted total resource amount to the current total resource amount is taken as the second difference; the larger both the first and second differences are, the greater the data processing volume of the server in the future preset time period. The product of the first and second differences is then normalized to obtain the server's future busyness. This embodiment uses a normalization function to normalize the product of the first and second differences. It should be noted that this embodiment does not consider the case where the current total resource amount is 0.

[0068] Step S202: Based on the predicted resource reference demand and predicted reference execution time of each reference resource in the task resource data of each task at the current moment, obtain the resource requirement complexity of each task at the current moment.

[0069] The greater the complexity of resource requirements, the more server resources will need to be prioritized during the execution of the corresponding task.

[0070] In one possible implementation of this embodiment, the method for obtaining the complexity of resource requirements is as follows: For any reference resource corresponding to any task at the current moment, the proportion of the predicted reference resource requirement for that task to the total amount of that reference resource is taken as the predicted proportion of that reference resource for that task. The larger the predicted proportion, the greater the requirement for that reference resource for that task, indirectly indicating that the task will require more server resources in the subsequent execution process. When the predicted resource reference requirement, predicted proportion, and predicted reference execution time for each type of reference resource corresponding to the task are all higher, it indicates that the task will have a greater demand intensity for various reference resources in the future execution process, and the resource release time will be longer. In order to avoid resource blocking in the future execution process of the task, more predicted server resources should be allocated to the task. Then, the result of normalizing the product of the predicted resource reference requirement, predicted proportion, and predicted reference execution time for that type of reference resource corresponding to the task is taken as the predicted blocking analysis value for that type of reference resource corresponding to the task. Then, the average of the predicted blocking analysis values ​​of all types of reference resources corresponding to the task is taken as the resource requirement complexity of the task at the current moment. In this embodiment, the product of the predicted resource reference demand, the predicted proportion, and the predicted reference execution time is normalized using the norm normalization function.

[0071] This gives us the complexity of the resource requirements for each task at the current moment.

[0072] Step S203: Based on the number of tasks with the same resource requirement type as each task at the current moment, the predicted resource requirement of each task at the current moment, and the predicted execution time, obtain the processing urgency of each task at the current moment.

[0073] Given the diverse types of tasks and intense competition for server resources, the urgency of resource requirements varies significantly across different tasks. Assessing the urgency of resource requirements for each task at the current moment helps identify critical tasks with higher resource response demands, thereby reserving more spare resources and ensuring stable task execution in real time. The more tasks in a task's queue and the higher its predicted resource requirement, the more urgent the task needs to be to release occupied resources, indicating higher processing urgency. Conversely, the shorter the predicted execution time of the task, the faster it needs to be completed to avoid queuing. Therefore, this embodiment obtains the processing urgency of each task at the current moment based on the number of tasks with the same resource requirement type, the predicted resource requirement of each task at the current moment, and the predicted execution time. The higher the processing urgency, the more priority should be given to allocating predicted server resources to the corresponding task during subsequent execution.

[0074] In one possible implementation of this embodiment, the method for obtaining the urgency level is as follows: For any task at the current moment, the negative correlation result of the predicted execution time of the task is used as the first processing analysis value of the task; in this embodiment, the reciprocal of the predicted execution time is used as the negative correlation result of the predicted execution time. It should be noted that this embodiment does not consider the case where the predicted execution time is 0. Then, the normalized result of the product of the number of tasks in the queue to which the task belongs, the predicted resource requirement, and the first processing analysis value is used as the processing urgency level of the task at the current moment. In this embodiment, the normalization function is used to normalize the product of the number of tasks in the queue to which the task belongs, the predicted resource requirement, and the first processing analysis value.

[0075] This gives us the urgency level of each task at the current moment.

[0076] Step S204: The normalized result of the product of the future busyness, the complexity of the resource demand, and the urgency of the processing is used as the resource supply priority for each task at the current moment.

[0077] It is known that the greater the future workload, the more complex the resource requirements, and the greater the urgency of processing, the more server resources should be allocated to the corresponding task during its subsequent execution. Therefore, this embodiment normalizes the product of the resource requirement complexity, processing urgency, and future workload for each task at the current moment, and uses this product as the resource allocation priority for each task at the current moment. This embodiment uses the norm normalization function to normalize the product of the above resource requirement complexity, processing urgency, and future workload.

[0078] At this point, the resource supply priority for each task at the current moment is obtained.

[0079] The resource adjustment degree acquisition module 30 is used to acquire the resource adjustment degree of each task at the current moment based on the resource supply priority and the difference between the actual value and the predicted value of the task resource data of the preset specified historical tasks of the same resource demand type for each task at the current moment.

[0080] Specifically, considering the potential errors in task resource demand prediction in high-density computing environments, if the predicted value is too low, it may lead to insufficient resource allocation, causing task blocking or a decline in service quality; if the predicted value is too high, it will result in resource waste and reduce system utilization. To analyze the reliability of the predicted resource demand for each task at the current moment in real time, this embodiment indirectly determines the unreliability of the predicted resource demand for each task at the current moment by monitoring the differences between the actual and predicted resource demands of historical tasks in the queue of each task in recent times. This allows for determining the degree and direction of correction for the predicted resource demand of each task at the current moment. On the other hand, considering that tasks with high resource supply priority should adopt a conservative strategy, i.e., allocating more resources to prioritize their resource needs, tasks with higher resource supply priority should have a greater degree of adjustment in their predicted resource demand. Therefore, this embodiment obtains the degree of resource adjustment for each task at the current moment based on the resource supply priority and the differences between the actual and predicted values ​​of the task resource data of preset designated historical tasks of the same resource demand type for each task at the current moment. The greater the degree of resource adjustment, the greater the upward adjustment of the predicted resource demand for the corresponding task.

[0081] Preferably, in one feasible implementation of this embodiment, the method for obtaining the preset designated historical tasks is as follows: for any task at the current moment, a preset number of historical tasks in the queue that precede and are adjacent to the current task are all taken as the preset designated historical tasks. In this embodiment, the preset number is set to 5. The implementer can set the size of the preset number according to the actual situation, and it is not limited here.

[0082] Preferably, in one feasible embodiment, the method for obtaining the degree of resource adjustment is as follows: for any task at the current moment, the mean of the absolute values ​​of the differences between the actual resource requirements and the predicted resource requirements of each preset designated historical task in the task's queue is normalized, and this result is used as the degree of deviation of the task's resource requirement prediction. In this embodiment, the mean of the absolute values ​​of the above differences is normalized using the norm normalization function. The greater the degree of deviation of the resource requirement prediction, the greater the degree of adjustment needed for the predicted resource requirement of the task, but the direction of adjustment cannot be determined. When the actual resource requirement of each preset designated historical task in the task's queue is greater than its predicted resource requirement, the predicted resource requirement of the task should be adjusted upwards. When the actual resource requirement of each preset designated historical task in the task's queue is less than its predicted resource requirement, the predicted resource requirement of the task should be adjusted downwards. At the same time, considering that the higher the priority of the task's resource supply, the higher the predicted resource requirement of the task should be adjusted upwards, this ensures the stability of the task in subsequent execution.

[0083] Therefore, in this embodiment, the sum of the difference between the actual resource demand and the predicted resource demand for each preset designated historical task in the queue where the task is located is obtained as the direction judgment value. When the direction judgment value is negative, the opposite of the predicted deviation of the resource demand of the task is added to the resource supply priority of the task and then normalized, which is used as the resource adjustment degree of the task. When the direction judgment value is positive, the predicted deviation of the resource demand of the task is added to the resource supply priority of the task and then normalized, which is used as the resource adjustment degree of the task.

[0084] This gives us the resource adjustment level for each task at the current moment.

[0085] The data processing module 40 is used to schedule and process the server resources of the high-density computing environment at the current moment based on the task resource data and resource adjustment degree of each task at the current moment.

[0086] Specifically, in order to obtain the predicted resource requirements of each task in real time and ensure that the tasks in the system always maintain stable and efficient operation, this embodiment first analyzes the predicted resource requirements of each task at the current moment based on the task resource data and resource adjustment degree of each task at the current moment, and then performs reasonable scheduling of server resources in the high-density computing environment at the current moment.

[0087] Preferably, in one feasible embodiment, the method for scheduling server resources in a high-density computing environment at the current moment is as follows: the product of the predicted resource demand and the resource adjustment level of each task at the current moment is used as the predicted resource demand adjustment value of each task at the current moment; the sum of the predicted resource demand and the predicted resource demand adjustment value of each task at the current moment is used as the corrected predicted resource demand of each task at the current moment. To plan server resources more rationally, this embodiment sets a preset future busyness threshold of 0.6. The implementer can set the size of the preset future busyness threshold according to the actual situation, which is not limited here. When the future busyness is less than the preset future busyness threshold, it indicates that the overall task execution is not under pressure in the preset future time period. At this time, tasks with a processing urgency greater than the preset processing urgency threshold at the current moment are designated as urgent tasks; tasks with a processing urgency less than or equal to the preset processing urgency threshold at the current moment are designated as relaxed tasks. This embodiment sets the preset processing urgency threshold to 0.7. The implementer can set the size of the preset processing urgency threshold according to the actual situation, which is not limited here. To prevent urgent tasks from queuing or failing due to insufficient predicted resources, this embodiment schedules server resources in the high-density computing environment at the current moment based on the corrected predicted resource requirements of urgent tasks and the predicted resource requirements of relaxed tasks.

[0088] When the future busy level is greater than or equal to a preset future busy level threshold, it indicates that the overall task execution will be under pressure within a preset future time period. In this case, tasks with a current resource supply priority lower than the preset resource supply priority threshold are designated as delayed execution tasks; tasks with a current resource supply priority greater than or equal to the preset resource supply priority threshold are designated as priority execution tasks. In this embodiment, the preset resource supply priority threshold is set to 0.6. Implementers can set the size of the preset resource supply priority threshold according to actual conditions, which is not limited here. To ensure more stable execution of priority tasks, this embodiment schedules server resources in the high-density computing environment based on the compressed result of the revised predicted resource demand of delayed execution tasks and the revised predicted resource demand of priority tasks.

[0089] In summary, this embodiment acquires scheduling data for each dimension in real time, including task resource data; based on the difference between actual and predicted values ​​in the scheduling data of each dimension at the current moment, and the task resource data, it obtains the priority of resource supply; based on the priority of resource supply and the difference between actual and predicted values ​​of task resource data for preset designated historical tasks of the same resource demand type for each task, it obtains the degree of resource adjustment; based on the task resource data and the degree of resource adjustment for each task at the current moment, it performs scheduling processing on the server resources of the high-density computing environment at the current moment. This invention, by accurately acquiring the degree of resource adjustment for each task at the current moment, facilitates accurate adjustment of predicted resources for each task at the current moment, effectively improving the efficiency and stability of task execution. Example 2

[0090] This invention also proposes a server resource scheduling device for high-density computing environments. The device includes a memory and a processor. The memory stores executable program code, and the processor calls and executes the executable program code to perform the server resource scheduling system for high-density computing environments provided in the embodiments of this application. Specifically, the device may be a chip, component, or module. The chip may include a connected processor and memory; the memory stores instructions, and when the processor calls and executes the instructions, the chip can perform the server resource scheduling system for high-density computing environments provided in the above embodiments.

[0091] Furthermore, this application also protects a computer device; please refer to [link to relevant documentation]. Figure 3 The computer device includes a memory 401, a processor 402, and a computer program 403 stored in the memory 401 and running on the processor 402. When the processor 402 executes the computer program 403, the computer device can execute any server resource scheduling system for high-density computing environments described above. Example 3

[0092] The present invention also provides a computer-readable storage medium storing computer program code, which, when executed on a computer, causes the computer to perform the aforementioned method steps to implement the server resource scheduling system for high-density computing environments provided in the above embodiments. Example 4

[0093] The present invention also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned related steps to implement the server resource scheduling system for high-density computing environments provided in the above embodiments.

[0094] In this embodiment, the device, computer-readable storage medium, computer program product, or chip are all used to execute the corresponding methods provided above. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods provided above, and will not be repeated here.

[0095] It should be noted that the order of the above embodiments of the present invention is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. The processes depicted in the accompanying drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0096] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.

Claims

1. A server resource scheduling system for high-density computing environments, characterized in that, The system includes: The data acquisition module is used to acquire scheduling data for each dimension in real time, including server resource data and task resource data for each task. The scheduling data for each dimension includes actual and predicted values. The server resource data includes the number of tasks arriving on the server and the total amount of resources. The task resource data includes resource requirements, execution time, reference resources, and the reference resource requirements and reference execution time of the reference resources. The resource supply priority acquisition module is used to analyze the future busyness of the server based on the difference between the actual and predicted values ​​in the scheduling data of each dimension at the current moment. It combines the task resource data of each task at the current moment with the number of tasks with the same resource demand type as each task at the current moment to obtain the resource supply priority of each task at the current moment. The resource adjustment degree acquisition module is used to acquire the resource adjustment degree of each task at the current moment based on the resource supply priority and the difference between the actual value and the predicted value of the task resource data of the preset specified historical tasks of the same resource demand type for each task at the current moment. The data processing module is used to schedule and process the server resources of the high-density computing environment at the current moment based on the task resource data and resource adjustment degree of each task at the current moment. The method for obtaining the future busyness level is as follows: The difference between the predicted task arrival volume and the current task arrival volume is taken as the first difference; The ratio of the predicted total resources to the current total resources will be used as the second difference. The product of the first difference and the second difference, after normalization, is used as the future busyness of the server. The method for obtaining the degree of resource adjustment is as follows: For any task at the current moment, the mean of the difference between the actual resource demand and the predicted resource demand of each preset designated historical task in the queue to which the task belongs is normalized and used as the degree of deviation of the resource demand prediction for that task. The method for obtaining the preset specified historical tasks is as follows: For any task at the current moment, a preset number of historical tasks in the queue that precede and are adjacent to the task are all designated as preset historical tasks. The sum of the difference between the actual resource requirement and the predicted resource requirement for each pre-specified historical task in the queue where the task is located is used as the direction judgment value. When the direction judgment value is negative, the result of normalizing the sum of the opposite of the deviation of the resource demand forecast for the task and the priority of the resource supply for the task is taken as the degree of resource adjustment for the task. When the direction judgment value is positive, the normalized result of adding the deviation of the resource demand forecast of the task to the priority of resource supply of the task is used as the degree of resource adjustment for the task.

2. The server resource scheduling system for high-density computing environments as described in claim 1, characterized in that, Tasks with the same type of resource requirements are organized into queues according to their execution order. The resource requirement of each task is essentially the resource requirement of the queue in which the task belongs, and the execution time of each task is essentially the execution time of the queue in which the task belongs. The actual and predicted values ​​of the task arrival quantity at the current moment are taken as the current task arrival quantity and the predicted task arrival quantity, respectively. The actual and predicted values ​​of the total resource quantity at the current moment are taken as the current total resource quantity and the predicted total resource quantity, respectively. The actual and predicted values ​​of the resource demand quantity are taken as the actual resource demand quantity and the predicted resource demand quantity, respectively. The predicted value of the execution time is taken as the predicted execution time. The predicted value of the reference resource demand quantity is taken as the predicted reference resource demand quantity. The predicted value of the reference execution time is taken as the predicted reference execution time.

3. The server resource scheduling system for high-density computing environments as described in claim 2, characterized in that, The method for obtaining the priority of resource supply is as follows: Based on the difference between the predicted number of tasks arriving and the current number of tasks arriving, as well as the difference between the predicted total resources and the current total resources, the future busyness of the server can be obtained. Based on the predicted resource reference demand and predicted reference execution time of each reference resource in the task resource data of each task at the current moment, obtain the resource requirement complexity of each task at the current moment. Based on the number of tasks with the same resource requirement type as each task at the current moment, the predicted resource requirement of each task at the current moment, and the predicted execution time, the processing urgency of each task at the current moment is obtained. The normalized result of the product of the future busyness, the complexity of the resource demand, and the urgency of the processing is used as the resource supply priority for each task at the current moment.

4. The server resource scheduling system for high-density computing environments as described in claim 3, characterized in that, The method for obtaining the complexity of the resource requirements is as follows: For any task and any type of reference resource at the current moment, the proportion of the predicted reference demand for that type of reference resource in the total amount of that type of reference resource is taken as the predicted proportion of that type of reference resource for that task. The normalized result of the product of the predicted resource reference demand, the predicted proportion, and the predicted reference execution time for the reference resource corresponding to the task is used as the predicted blocking analysis value for the reference resource corresponding to the task. The average of the predicted blocking analysis values ​​of all reference resources corresponding to the task is used as the resource requirement complexity of the task at the current moment.

5. The server resource scheduling system for high-density computing environments as described in claim 3, characterized in that, The method for obtaining the urgency level of the processing is as follows: For any task at the current moment, the reciprocal of the predicted execution time of the task is used as the first processing analysis value for the task; The normalized result of the product of the number of tasks in the queue to which the task belongs, the predicted resource requirement, and the first processing analysis value is used as the processing urgency of the task at the current moment.

6. The server resource scheduling system for high-density computing environments as described in claim 3, characterized in that, The method for scheduling server resources in a high-density computing environment at the current moment is as follows: The product of the predicted resource demand and the degree of resource adjustment for each task at the current moment is used as the predicted resource demand adjustment value for each task at the current moment. The sum of the predicted resource requirement of each task at the current moment and the adjusted predicted resource requirement is used as the corrected predicted resource requirement of each task at the current moment. When the future busyness level is less than the preset future busyness level threshold, tasks with a current urgency level greater than the preset urgency level threshold will be treated as urgent tasks. Tasks whose urgency level at the current moment is less than or equal to the preset urgency threshold are designated as relaxed tasks. Based on the revised predicted resource requirements of urgent tasks and the predicted resource requirements of relaxed tasks, the server resources of the high-density computing environment are scheduled and processed at the current moment. When the future busyness level is greater than or equal to the preset future busyness level threshold, tasks with a current resource supply priority lower than the preset resource supply priority threshold will be delayed; tasks with a current resource supply priority greater than or equal to the preset resource supply priority threshold will be prioritized. Based on the compressed results of the revised predicted resource requirements for delayed tasks and the revised predicted resource requirements for prioritized tasks, the server resources of the high-density computing environment are scheduled for the current moment.

7. The server resource scheduling system for high-density computing environments as described in claim 2, characterized in that, The predicted task arrival rate, predicted total resource quantity, predicted resource requirement, predicted execution time, reference resource, predicted reference resource requirement, and predicted reference execution time are all obtained through the output of the prediction model LSTM.