Adaptive resource scheduling method and device for data center

By using an adaptive resource scheduling method to dynamically adjust the granularity of resource scheduling, the feedback latency problem in data centers during peak load periods is solved, achieving rapid response and efficient resource utilization.

CN121771001APending Publication Date: 2026-03-31INST OF COMPUTING TECH CHINESE ACAD OF SCI
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-02
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

Existing data center resource scheduling strategies suffer from long response delays and slow response times when facing sudden load peaks, leading to a decline in user experience.

Method used

An adaptive resource scheduling method is adopted, which dynamically adjusts the resource scheduling granularity by quantifying the residual interference tolerance (ReT) of the application, distinguishes between beneficiary and victim applications, and realizes variable-granularity resource allocation and reclamation.

Benefits of technology

It reduced feedback latency, improved response speed, optimized resource utilization, and ensured rapid recovery and stability of application performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121771001A_ABST
    Figure CN121771001A_ABST
Patent Text Reader

Abstract

The invention provides a self-adaptive resource scheduling method and device for a data center, and the method comprises the steps: obtaining the service quality state of a running application program at the beginning of a resource scheduling period; setting the resource scheduling granularity in the resource scheduling period through the service quality state; and carrying out resource scheduling on beneficiary applications and victim applications in the application program in the resource scheduling period according to the resource scheduling granularity. The invention further provides electronic equipment and a computer readable storage medium. According to the resource scheduling method, a nonlinear control strategy which is tightly coupled with the urgency quantitative model is adopted, the intelligent resource scheduling effect is achieved through specifically-designed interval and granularity mapping, and finally the technical purposes of reducing feedback delay, accelerating performance recovery and improving the resource utilization rate are achieved cooperatively.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of data center resource management and computer system performance optimization, and in particular, it is a resource scheduling method and apparatus for adaptively adjusting the granularity of resource scheduling in a dynamic environment in a data center. Background Technology

[0002] Data centers are a crucial infrastructure for cloud computing, but they often struggle to simultaneously address the issues of low system resource utilization and inconsistent quality of service (QoS) for hybrid applications. To fully utilize the abundant resources of data centers (such as processor cores, last-level cache, and memory bandwidth), various types of applications often run concurrently. These applications share system resources, and this resource sharing introduces significant uncertainty into application performance, making it difficult to guarantee the QoS of hybrid applications.

[0003] Data center workloads are diverse, broadly categorized into Latency Critical (LC) and Best Efforts (BE) applications. LC applications (such as web queries and social networking services) prioritize tail latency as a performance metric, while BE applications (such as big data mining applications) prioritize IPC (Internal Processing Rate). In data centers, tail latency for LC applications directly impacts user experience and carries higher priority, while BE applications, often batch processing-based, have relatively lower priority. However, the workload of LC applications typically fluctuates over time, often failing to fully utilize existing resources. To improve resource utilization, data centers typically employ application co-location, placing multiple applications on a single physical or virtual machine. To mitigate interference between applications, resource allocation strategies are required.

[0004] Existing resource schedulers, such as the ARQ strategy for allocating cores and last-level caches described in the patent "Resource Scheduling Method, Application Identification Method, and Related Equipment for Cloud Computing Systems" (application number: 202210303023.4), typically employ a fixed-granularity strategy when adjusting resources, meaning they only increase or decrease resources by one unit at a time. This strategy is effective when the system load is stable, but its drawbacks become apparent when faced with sudden load spikes. Because the adjustment step size is too small, the system needs to accumulate over multiple scheduling cycles to allocate sufficient resources to cope with the impact; this process is known as "feedback latency." During this period, application performance remains unsatisfactory, leading to a degraded user experience. Summary of the Invention

[0005] To address the issues of long feedback latency and slow response speed caused by fixed-granularity scheduling in existing technologies, this invention proposes an adaptive resource scheduling method for data centers, comprising: at the beginning of a resource scheduling cycle, obtaining the service quality status of the applications running in the data center; setting the resource scheduling granularity within the resource scheduling cycle based on the service quality status; and performing resource scheduling on beneficiary applications and victim applications within the application within the resource scheduling cycle using the resource scheduling granularity.

[0006] Furthermore, the residual interference tolerance ReT of application i i Quantify the service quality status of application i; M i TL is the maximum tail latency that application i can tolerate. i1 Let ReT be the actual tail delay of application i; and let ReT be the minimum of the remaining interference tolerances ReT of all applications. min The corresponding application is the beneficiary application, with the remaining interference tolerance ReT of the beneficiary application. min Set the resource allocation granularity A for the victim application; designate applications other than the beneficiary application as victim applications, and set the remaining interference tolerance ReT for each victim application. i Set the resource recycling granularity R for each victim. i .

[0007] Furthermore, during this resource scheduling cycle, based on the remaining interference tolerance ReT i Sort all victim applications in descending order to generate a resource recovery sequence; then, in the forward order of this resource recovery sequence, process the victim application according to its corresponding resource recovery granularity R. i Perform resource reclamation until the reclaimed resources are greater than or equal to the resource allocation granularity A, or until all victim applications have completed resource reclamation; then allocate resources to the beneficiary application at resource allocation granularity A.

[0008] Preferably, if the remaining interference tolerance ReT min If the resource allocation granularity is less than the first allocation threshold, the resource allocation granularity is set to the first allocation granularity A1; if the remaining interference tolerance ReT min If the resource allocation granularity is greater than or equal to the first allocation threshold and less than the second allocation threshold, then the resource allocation granularity is set to the second allocation granularity A2; if the remaining interference tolerance ReT min If the resource allocation granularity is greater than or equal to the second allocation threshold, then the resource allocation granularity is set to the third allocation granularity A3; A1>A2>A3; if the remaining interference tolerance ReT i If the resource is less than the first recycling threshold, the recycling granularity is set to the first recycling granularity R1; if the remaining interference tolerance ReT iIf the resource recycling granularity is greater than or equal to the first recycling threshold and less than the second recycling threshold, then the resource recycling granularity is set to the second recycling granularity R2; if the remaining interference tolerance ReT i If the value is greater than or equal to the second recycling threshold, the resource recycling granularity is set as the third recycling granularity R3; R3>R2>R1.

[0009] The present invention also proposes a data center adaptive resource scheduling device, comprising: a detection module, used to obtain the service quality status of the application running in the data center at the beginning of the resource scheduling cycle; a granularity setting module, used to set the resource scheduling granularity within the resource scheduling cycle based on the service quality status; and a scheduling module, used to perform resource scheduling on the beneficiary application and the victim application in the application within the resource scheduling cycle using the resource scheduling granularity.

[0010] Furthermore, the detection module uses the residual interference tolerance ReT of application i. i Quantify the service quality status of application i; M i TL is the maximum tail latency that application i can tolerate. i1 The actual tail delay of application i; this granularity setting module uses the minimum value of all remaining interference tolerances ReT. min The corresponding application is the beneficiary application, with the beneficiary application's remaining interference tolerance ReT. min Set the resource allocation granularity A for the beneficiary application; designate applications other than the beneficiary application as victim applications, and set the residual interference tolerance ReT for each victim application. i Set the resource recycling granularity R for each victim. i .

[0011] Furthermore, during the resource scheduling cycle, the scheduling module bases its scheduling on the remaining interference tolerance ReT. i Sort all victim applications in descending order to generate a resource recovery sequence; then, in the forward order of this resource recovery sequence, process the victim application according to its corresponding resource recovery granularity R. i Perform resource reclamation until the reclaimed resources equal resource allocation granularity A, or until all victim applications have completed resource reclamation; then allocate resources to the beneficiary application at resource allocation granularity A.

[0012] Preferably, the allocation granularity setting module specifically includes, if the remaining interference tolerance ReT min If the resource allocation granularity is less than the first allocation threshold, the resource allocation granularity is set to the first allocation granularity A1; if the remaining interference tolerance ReT minIf the resource allocation granularity is greater than or equal to the first allocation threshold and less than the second allocation threshold, then the resource allocation granularity is set to the second allocation granularity A2; if the remaining interference tolerance ReT min If the resource allocation granularity is greater than or equal to the second allocation threshold, the third allocation granularity A3 is set; A1>A2>A3; the recycling granularity setting module specifically includes, if the remaining interference tolerance ReT i If the resource is less than the first recycling threshold, the recycling granularity is set to the first recycling granularity R1; if the remaining interference tolerance ReT i If the resource recycling granularity is greater than or equal to the first recycling threshold and less than the second recycling threshold, then the resource recycling granularity is set to the second recycling granularity R2; if the remaining interference tolerance ReT i If the value is greater than or equal to the second recycling threshold, the resource recycling granularity is set as the third recycling granularity R3; R3>R2>R1.

[0013] The present invention also proposes an electronic device, including the data center adaptive resource scheduling device as described above.

[0014] The present invention also proposes a computer-readable storage medium storing computer-executable instructions, characterized in that, when the computer-executable instructions are executed, the data center adaptive resource scheduling method described above is implemented. Attached Figure Description

[0015] Figure 1 This is a flowchart of the data center adaptive resource scheduling method of the present invention.

[0016] Figure 2 This is a schematic diagram comparing the performance of the resource scheduling method of the present invention with the fixed granularity (FG) scheduling method.

[0017] Figure 3 This is a schematic diagram comparing the resource scheduling method of the present invention and ARQ in the same application scenario.

[0018] Figure 4A , 4B This is a pseudocode diagram of the data center adaptive resource scheduling method of the present invention.

[0019] Figure 5 This is a schematic diagram of the data center adaptive resource scheduling device of the present invention.

[0020] Figure 6 This is a schematic diagram of an electronic device according to the present invention.

[0021] Figure 7 This is a schematic diagram of the hardware structure of an electronic device according to the present invention. Detailed Implementation

[0022] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0023] It should be noted that, in this application, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus.

[0024] In the absence of further restrictions, an element defined by the phrase "comprising a..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0025] This invention discloses a dynamic resource scheduling method. To address the issues of slow response and long recovery time in traditional fixed-granularity scheduling strategies under dynamic loads, it introduces a novel, adaptive, and variable-granularity scheduling paradigm. Its core is an "urgency-aware variable-granularity" mechanism, meaning the intensity of resource scheduling should match the severity of the problem. This resource scheduling method monitors the Quality of Service (QoS) status of LC applications in real time, quantifying the degree of "urgency" of its deviation from the target. This allows the scheduler to allocate resources on demand based on the application's real-time needs. The granularity of resource allocation (i.e., the amount of resources adjusted in a single instance) is no longer fixed but dynamically linked to the degree of urgency. When application performance is stable, the system employs fine-grained adjustments to avoid over-allocation, preventing resource waste and performance oscillations. When application performance deteriorates sharply and QoS is seriously threatened, the system automatically switches to a large-granularity mode, performing a one-time, large-scale resource allocation to quickly restore application performance to normal levels, thus achieving rapid intervention and performance recovery.

[0026] The resource scheduling method of the present invention includes:

[0027] 1. Quantify urgency

[0028] The urgency of LC applications is quantified by calculating their Residual Interference Tolerance (ReT) in real time to determine their QoS urgency. A lower ReT value indicates a more urgent situation.

[0029] The ReT calculation method is shown below, where Indicates user The maximum tolerable tail delay, Indicates application Tail delay after interference.

[0030]

[0031] Among them, when the actual tail delay Below target When ReT is positive, it indicates that performance meets the requirements and has a margin of safety. The closer ReT is to 1, the higher the margin of safety; when the actual tail delay... Exceeding the target When ReT is negative, it indicates that performance has violated the SLO (Service Level Objective). The larger the absolute value of ReT, the more severe the violation and the greater the urgency of performance recovery.

[0032] 2. Variable granularity decision

[0033] The core of this invention lies in the fact that the granularity of resource scheduling (i.e., the number of resource units adjusted in a single instance) is not fixed, but dynamically correlated with the urgency level (ReT). This dynamic correlation is achieved through a carefully designed piecewise function (interval design). The interval thresholds and mapping granularity values ​​of the piecewise function are determined based on extensive analysis and experimental verification of typical data center load behavior, aiming to achieve an optimal balance between rapidly suppressing performance defaults and avoiding excessive resource allocation. Within each resource scheduling cycle, resource allocation and reclamation operations are performed simultaneously on all applications running in the data center. Resource allocation is based on the resource allocation granularity, while resource reclamation is based on the resource reclamation granularity. Specifically,

[0034] Figure 1 This is a flowchart of the data center adaptive resource scheduling method of the present invention. Figure 1 As shown, in the first embodiment of the present invention, a resource scheduling method is proposed, comprising:

[0035] Step S1: At the beginning of a resource scheduling cycle, obtain the status indicators of all running applications in the data center, including the maximum tail latency M that application i can tolerate. i And the actual tail delay TL of application i i1 The service quality status of an application is calculated using its status metrics.

[0036] In this embodiment, the residual interference tolerance ReT of application i is used. i Quantify the service quality status of application i;

[0037]

[0038] Step S2: Based on the service quality status, determine the resource scheduling granularity of the current resource scheduling cycle through a preset functional relationship, where a higher urgency level corresponds to a larger allocation granularity, and a lower urgency level corresponds to a smaller allocation granularity.

[0039] The resource scheduling method of the present invention performs resource scheduling on the application with the worst QoS performance in each resource scheduling period (which will be allocated resources during resource scheduling, referred to as the beneficiary application) and the k best performing applications (which will reclaim resources during resource scheduling, referred to as the victim applications). In other words, firstly, the beneficiary application is identified and its resource allocation granularity is obtained; then, the victim applications are identified and the resource reclamation granularity of each victim application is obtained; finally, in step S3, resource scheduling is performed based on the resource allocation granularity and the resource reclamation granularity.

[0040] Specifically, the steps for determining the granularity of resource scheduling include: sorting all applications based on the residual interference tolerance ReT, identifying the application with the smallest residual interference tolerance ReT in the sorted sequence as the beneficiary application for this round of resource scheduling, and using the residual interference tolerance ReT of the beneficiary application... min Define the resource allocation granularity for this round of resource scheduling; designate applications other than the beneficiary application as victim applications, and set the remaining interference tolerance ReT for each victim application. i Set the resource recycling granularity R for each victim. i In actual scheduling, based on the remaining interference tolerance ReT i Sort all victim applications in descending order to generate a resource recovery sequence; then, in ascending order of this resource recovery sequence, process the victim application according to its corresponding resource recovery granularity R. i Resource reclamation continues until the reclaimed resources equal the resource allocation granularity A, or until all victim applications have completed resource reclamation. Therefore, only the k applications with the largest ReT in the ReT sorting sequence are actually the true victim applications in this round of resource scheduling.

[0041] Furthermore, based on the urgency level of the beneficiary application and the resource status of the victim application, the resource allocation granularity and resource reclamation granularity of this round of resource scheduling are specifically set; for example, if the remaining interference tolerance ReT min If the resource allocation granularity is less than the first allocation threshold AT1, then the resource allocation granularity is set to the first allocation granularity A1; if the remaining interference tolerance ReT min If the resource allocation granularity is greater than or equal to the first allocation threshold AT1 and less than the second allocation threshold AT2, then the resource allocation granularity is set to the second allocation granularity A2; if the remaining interference tolerance ReT minIf the resource allocation granularity is greater than or equal to the second allocation threshold AT2, the resource allocation granularity is set to the third allocation granularity A3; A1>A2>A3; In this embodiment, AT1=-9, AT2=-4, A1=3, A2=2, A3=1; The specific settings of the resource allocation granularity are shown in Table 1.

[0042]

[0043] Table 1

[0044] If the remaining interference tolerance ReT i If the resource recovery granularity is less than the first recovery threshold RT1, then the resource recovery granularity is set as the first recovery granularity R1; if the remaining interference tolerance ReT i If the resource recycling granularity is greater than or equal to the first recycling threshold RT1 and less than the second recycling threshold RT2, then the resource recycling granularity is set to the second recycling granularity R2; if the remaining interference tolerance ReT max If the value is greater than the second recycling threshold RT2, the resource recycling granularity is set as the third recycling granularity R3; R3>R2>R1; In this embodiment, RT1=-2, RT2=0.9, R1=0, R2=1, R3=2; The specific settings of the resource recycling granularity are shown in Table 2.

[0045]

[0046] Table 2

[0047] Step S3: During this resource scheduling cycle, resource allocation operations are performed on beneficiary applications based on resource allocation granularity, and resource reclamation operations are performed on victim applications based on resource reclamation granularity.

[0048] During resource scheduling, within the specified resource scheduling cycle, based on the remaining interference tolerance ReT i Sort all victim applications in descending order to generate a resource recovery sequence; then, in the forward order of this resource recovery sequence, process the victim application according to its corresponding resource recovery granularity R. i Resource recycling continues until the recycled resources equal resource allocation granularity A, or until all victim applications have completed resource recycling. Here, "recycled resources equal resource allocation granularity A" means that for the last victim application to have its resources recycled, only all or part of the resources that satisfy the requirement that the cumulative recycled resources equal the resources that the beneficiary application needs to allocate need to be recycled. The case of "only recycling part of the resources that satisfy the requirement that the cumulative recycled resources equal the resources that the beneficiary application needs to allocate need to be recycled" corresponds to the situation where the total amount of recyclable resources of all victim applications cannot fully meet the resource requirements of the beneficiary applications.

[0049] In summary, this variable granularity decision-making mechanism is a nonlinear control strategy closely coupled with an urgency quantification model. Through a specially designed interval and granularity mapping, it achieves intelligent resource scheduling and ultimately synergistically achieves the three core technological innovation goals of reducing feedback latency, accelerating performance recovery, and improving resource utilization.

[0050] Figure 2 This is a schematic diagram comparing the performance of the resource scheduling method of this invention with the fixed-granularity (FG) scheduling method. Figure 1 As shown, the performance of the fixed-granularity (FG) strategy and the adaptive variable-granularity (Pharos) strategy of this invention is compared under a sudden surge in load. At period 0, both strategies maintained an acceptable tail latency (90ms). As the load increased, the tail latency increased (105ms in period 1), and both strategies gradually increased the resource slice by one unit. The key difference appears in periods 2 and 3: when the tail latency deteriorated to 150ms and 300ms respectively, FG continued to use a conservative fixed-granularity resource adjustment method; while this invention implemented an urgency-aware variable-granularity resource scheduling scheme, restoring the tail latency to a normal level (90ms) by period 4. FG continued to lag behind due to its slower recovery speed.

[0051] This invention further demonstrates efficient post-recovery behavior: resource allocation is immediately paused once the system stabilizes, and redundant slices are proactively reclaimed (cycle 4), thereby avoiding over-provisioning. In contrast, FG continuously allocates resources until cycle 6, resulting in insufficient resource utilization. Overall, Figure 1 This highlights the core advantage of the invention—minimizing feedback delays and preventing resource waste through adaptive and urgency-aware granular adjustment.

[0052] Figure 3 This demonstrates the advantages of this invention in real-world application scenarios. When Xapian experiences sudden QoS violations (at 50 seconds and 180 seconds), this invention (Pharos) achieves latency recovery by rapidly allocating additional computing cores. In contrast, the coarse-grained ARQ response described in the patent "Resource Scheduling Method, Application Identification Method, and Related Equipment for Cloud Computing Systems" not only prolongs the duration of the violation but also triggers a cascading delay in Moses and Img-dnn applications. The pseudocode of this invention's data center adaptive resource scheduling method executed in the data center is as follows: Figure 4A , 4B As shown.

[0053] It should be noted that, in various embodiments of the present invention, the order of the steps does not imply the order of execution. The execution order of each step should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0054] The following are system embodiments corresponding to the above method embodiments. This embodiment can be implemented in conjunction with the above embodiments. The relevant technical details mentioned in the above embodiments are still valid in this embodiment, and will not be repeated here to reduce repetition. Accordingly, the relevant technical details mentioned in this embodiment can also be applied to the above embodiments.

[0055] Figure 5 This is a schematic diagram of the data center adaptive resource scheduling device of the present invention. Figure 5 As shown, in a second embodiment of the present invention, a resource scheduling device 10 is provided, comprising:

[0056] The detection module 11 is used to obtain the service quality status of the applications running in the data center at the beginning of the resource scheduling cycle.

[0057] Granularity setting module 12 is used to set the resource scheduling granularity within the resource scheduling cycle based on the service quality status;

[0058] The scheduling module 13 is used to perform resource scheduling on the beneficiary application and the victim application in the application within the resource scheduling cycle at the resource scheduling granularity.

[0059] In a third embodiment of the present invention, a computer-readable storage medium is provided. The data center adaptive resource scheduling device of the present invention, if its functions are implemented as software functional units and sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a computer-readable storage medium and includes several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. Therefore, in the third embodiment of the present invention, a computer-readable storage medium is provided for storing a computer program of a data center adaptive resource scheduling method. It should be understood that the computer-readable storage medium in the embodiments of the present invention can be volatile memory and / or non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).

[0060] Figure 6 This is a schematic diagram of an electronic device according to the present invention. Figure 6As shown, in the fourth embodiment of the present invention, an electronic device 100 is proposed, including the data center adaptive resource scheduling device as described above. Those skilled in the art will understand that all or part of the steps in the above methods can be implemented by a program instructing related hardware (e.g., processor, FPGA, ASIC, etc.). All or part of the steps in the above embodiments can also be implemented using one or more integrated circuits. Accordingly, each module in the above embodiments can be implemented in hardware, for example, by implementing its corresponding function through an integrated circuit, or it can be implemented as a software functional module, for example, by a processor executing a program / instruction stored in memory to implement its corresponding function. The embodiments of the present invention are not limited to any particular combination of hardware and software.

[0061] It should be noted that the structure of the electronic device shown in the accompanying drawings of this invention does not constitute a limitation thereof. The actual knowledge structure recognition device may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0062] The electronic device of the present invention can be any device with data processing capabilities, such as a computer or other similar device. The device embodiment can be implemented in software, hardware, or a combination of both. Taking software implementation as an example, as a logical device, it is formed by the processor of any data processing device loading the corresponding computer program instructions from non-volatile memory into memory for execution. Figure 7 This is a schematic diagram of the hardware structure of an electronic device according to the present invention. Figure 7 As shown, from a hardware perspective, this is a hardware structure diagram of any data processing-capable device where the data center adaptive resource scheduling device of the present invention is located, except... Figure 7 In addition to the processor, memory, network interface, and non-volatile memory shown, any data processing device in the embodiment may also include other hardware depending on the actual function of the data processing device, which will not be described in detail here.

[0063] When implemented using software, the above embodiments can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more sets of available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium. A semiconductor medium can be a solid-state drive.

[0064] The FUSE-based NPU simulation method of this invention has advantages such as high fidelity, high performance, low development complexity, and good scalability. By perfectly simulating the Linux standard device driver interface through FUSE, the entire software stack (driver, runtime, application) can run in the simulation environment without modification, greatly improving the reliability of testing and verification. User-space simulation avoids the huge overhead of full-system simulation. The dual-thread parallel architecture effectively hides I / O latency, resulting in high simulation efficiency and meeting the needs of rapid iterative development of large-scale neural network models. It fully utilizes mature open-source components (NEMU, libfuse), requiring only incremental development on top of them, with a clear technical roadmap and reduced implementation and maintenance difficulty. The architecture of this invention is easily extensible to simulate more types of devices or support new instruction extensions, providing possibilities for simulating more complex heterogeneous computing systems in the future.

[0065] The above embodiments are only used to illustrate the present invention and are not intended to limit the present invention. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, all equivalent technical solutions also fall within the scope of the present invention, and the patent protection scope of the present invention should be defined by the claims.

Claims

1. A method for adaptive resource scheduling in a data center, the method comprising: The method comprises: at the beginning of a resource scheduling period, obtaining a service quality state of an application program running in a data center; based on the service quality state, setting a resource scheduling granularity in the resource scheduling period; based on the resource scheduling granularity, performing resource scheduling on a beneficiary application and a victim application in the application program in the resource scheduling period.

2. The data center adaptive resource scheduling method of claim 1, wherein, with the remaining tolerance to interference ReT of the application i i quantifying the quality of service status of the application i; , M i TL is the maximum tail latency that the application i can tolerate i1 TL is the actual tail latency of the application i; the minimum ReT among the remaining interference tolerances ReT of all applications min the corresponding application is the beneficiary application, with the remaining interference tolerance ReT of the beneficiary application min set the resource allocation granularity A for the victim application; the corresponding application is the victim application, with the remaining interference tolerance ReT of each victim application i set the resource recovery granularity R for each victim application i .

3. The data center adaptive resource scheduling method of claim 2, wherein, In the resource scheduling period, based on the remaining interference tolerance ReT i Perform descending arrangement on all victim applications to generate a resource recycling sequence; in the forward order of the resource recycling sequence, recycle the resources of the victim applications in the corresponding resource recycling granularity R i Recycle the resources until the recycled resources are greater than or equal to the resource allocation granularity A, or all victim applications complete the resource recycling; allocate the resources to the beneficiary applications in the resource allocation granularity A.

4. The data center adaptive resource scheduling method of claim 2, wherein, if the residual interference tolerance ReT min is less than the first allocation threshold, set the resource allocation granularity to the first allocation granularity A1; if the remaining interference tolerance ReT min if the remaining interference tolerance ReT min if the remaining interference tolerance ReT A1>A2>A3; if the residual interference tolerance ReT i is less than a first recovery threshold, setting the resource recovery granularity to a first recovery granularity R1; if the residual interference tolerance ReT i is greater than or equal to the first recovery threshold and less than a second recovery threshold, setting the resource recovery granularity to a second recovery granularity R2; if the residual interference tolerance ReT i is greater than or equal to the second recovery threshold, setting the resource recovery granularity to a third recovery granularity R3; R3>R2>R1.

5. A data center adaptive resource scheduling apparatus, characterized by, The method comprises: at the beginning of a resource scheduling period, a detection module is configured to obtain a service quality state of an application program running in a data center; based on the service quality state, a granularity setting module is configured to set a resource scheduling granularity in the resource scheduling period; based on the resource scheduling granularity, a scheduling module is configured to perform resource scheduling on a beneficiary application and a victim application in the application program in the resource scheduling period.

6. The data center adaptive resource scheduling apparatus of claim 1, wherein, The detection module quantifies the quality of service state of the application i i quantifies the quality of service state of the application i , M i TL is the maximum tail latency that the application i can tolerate i1 TL is the actual tail latency of the application i The granularity setting module sets the resource allocation granularity A for the beneficiary application with the residual interference tolerance ReT of the beneficiary application min , and sets the resource recovery granularity R for each victim application with the residual interference tolerance ReT of each victim application i . i The corresponding application is the beneficiary application, and the resource allocation granularity A is set for the beneficiary application with the residual interference tolerance ReT of the beneficiary application min , and the application other than the beneficiary application is the victim application, and the resource recovery granularity R is set for each victim application with the residual interference tolerance ReT of each victim application i .

7. The data center adaptive resource scheduling apparatus of claim 6, wherein, The scheduling module, at the resource scheduling period, based on the remaining interference tolerance ReT i The resource recycling sequence is generated by performing descending arrangement on all victim applications; the victim applications are recycled in the forward order of the resource recycling sequence with their corresponding resource recycling granularity R i The resource recycling is performed until the recycled resource equals the resource allocation granularity A, or all victim applications complete the resource recycling; the resource allocation is performed on the beneficiary applications with the resource allocation granularity A.

8. The data center adaptive resource scheduling apparatus of claim 6, wherein, The allocation granularity setting module specifically includes: if the remaining interference tolerance ReT min is less than the first allocation threshold, setting the resource allocation granularity as the first allocation granularity A1; if the remaining interference tolerance ReT min if the remaining interference tolerance ReT min if the remaining interference tolerance ReT A1>A2>A3; The recycling granularity setting module specifically includes, if, the remaining tolerance, the remaining interference tolerance ReT imax If the resource is less than the first recycling threshold, the recycling granularity is set to the first recycling granularity R1; if the remaining tolerance is the remaining interference tolerance ReT max ReT i If the resource recycling granularity is greater than or equal to the first recycling threshold and less than the second recycling threshold, then the resource recycling granularity is set to the second recycling granularity R2; if the remaining tolerance is the remaining interference tolerance ReT max ReT i If the value is greater than or equal to the second recycling threshold, the resource recycling granularity is set as the third recycling granularity R3; R3>R2>R1.

9. An electronic device comprising the data center adaptive resource scheduling apparatus according to any one of claims 5-8.

10. A computer-readable storage medium storing computer-executable instructions, the computer-executable instructions comprising: When the computer executable instructions are executed, the method according to any one of claims 1-4 is implemented.

Citation Information

Patent Citations

  • Resource scheduling method of cloud computing system, application identification method and related equipment

    CN116846978A