A heterogeneous computing resource allocation method and system

CN119988011BActive Publication Date: 2025-10-28SUN YAT SEN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510064508.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-15
Publication Date
2025-10-28
Estimated Expiration
2045-01-15

Smart Images

  • Figure CN119988011B_ABST
    Figure CN119988011B_ABST
Patent Text Reader

Abstract

This invention relates to the technical fields of service computing and high-performance computing, and proposes a heterogeneous computing resource allocation method and system, comprising the following steps: obtaining a user request set and a resource set; allocating the computing resources of the resource set to each user request in the user request set, calculating the value of each allocated computing resource to its corresponding user request and summing the values ​​to obtain the total value of the allocated computing resources to the user request set; constructing a computing resource allocation optimization model with the optimization objective of maximizing the total value of the allocated computing resources to the user request set, considering the resource quantity constraints of the allocated computing resources and the resource number constraints allocated to each user request; solving the computing resource allocation optimization model to obtain the optimal resource allocation result. This method can effectively improve resource allocation efficiency in scenarios where both resources and requests arrive dynamically.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the technical fields of service computing and high-performance computing, and more specifically, to a method and system for allocating heterogeneous computing resources. Background Technology

[0002] Machine learning (ML) plays an increasingly important role in various applications such as computer vision, intelligent manufacturing, and e-commerce. ML models require a large amount of training data and significant computing power for training. Both training data and computing power contribute to the cost of model training for users, making it crucial for users to acquire appropriate resources within a specific budget a key challenge. For model training platforms with available data or computing power, making globally optimal allocations based on the platform's resources and the user's budget can improve resource utilization and save costs for the platform.

[0003] The design of a model training platform needs to consider three parts: a resource module, a user module, and a scheduling module. The resource module is used to uniformly maintain and manage all resources provided by the platform (such as training data and its remaining usage times, computing resources and their remaining usage time, etc.); the user module is used to uniformly manage user information, user budgets for resources, user model training requests, etc.; the scheduling module can be configured with different scheduling algorithms to allocate appropriate amounts of resources to different users.

[0004] Model training platforms face two main challenges: First, resources and users arrive dynamically, and future information cannot be obtained at the present moment; second, unlike CPU or memory resources, unrecoverable resources cannot be recovered after irreversible decisions are made, such as the number of times data is used and the remaining usage time of computing power, so careful decisions are required when allocating them. Summary of the Invention

[0005] To overcome the shortcomings of the prior art in making globally optimal resource allocation under dynamic resource and user arrival conditions, the present invention provides a heterogeneous computing resource allocation method and system capable of making globally optimal resource allocation.

[0006] To solve the above-mentioned technical problems, the technical solution of the present invention is as follows:

[0007] A method for allocating heterogeneous computing resources includes the following steps:

[0008] Obtain a user request set and a resource set. The user request set includes several user requests waiting for resource scheduling, and the resource set includes several computing resources. Each computing resource records its total resource quantity, and the computing resources in the resource set increase dynamically over time. Each user request in the user request set records the resource requirement of the user request for a single resource, the number of resources required, and the value of each computing resource in the resource set for the user request.

[0009] The computing resources of the resource set are allocated to each user request of the user request set. The value of each allocated computing resource to its corresponding user request is calculated and summed to obtain the total value of the allocated computing resources to the user request set.

[0010] With the optimization objective of maximizing the total value of the allocated computing resources to the set of user requests, and considering the resource quantity constraints of the allocated computing resources and the resource quantity constraints of the user requests, a computing resource allocation optimization model is constructed.

[0011] Solve the computational resource allocation optimization model to obtain the optimal resource allocation result.

[0012] The present invention also proposes a heterogeneous computing resource allocation system for implementing the above-mentioned heterogeneous computing resource allocation method, comprising: a resource module, a user module, and a scheduling module;

[0013] The resource module is used to provide the resource set to the scheduling module;

[0014] The user module is used to provide the scheduling module with the user request set and the user historical request set;

[0015] The scheduling module is used to allocate resources to user requests waiting for resource scheduling in the user request set based on the resource set and the user historical request set, using the heterogeneous computing resource allocation method.

[0016] The present invention also proposes a computer device including a memory and a processor, wherein the memory stores computer-readable instructions, which, when executed by the processor, cause the processor to perform the steps of the heterogeneous computing resource allocation method described above.

[0017] Compared with the prior art, the beneficial effects of the technical solution of the present invention are:

[0018] With the goal of maximizing the total value of the allocated computing resources to the set of user requests, and considering the resource quantity constraints of the allocated computing resources and the resource quantity constraints of the user requests, a computing resource allocation optimization model is constructed. By solving the computing resource allocation optimization model, the optimal resource allocation result is obtained, which can effectively improve resource allocation efficiency in scenarios where both resources and requests arrive dynamically. Attached Figure Description

[0019] Figure 1 This is a flowchart illustrating the heterogeneous computing resource allocation method of Example 1;

[0020] Figure 2 This is a pseudocode diagram of the historical information perception resource allocation mechanism proposed in Example 3;

[0021] Figure 3 This is the overall design drawing proposed in Example 3. Detailed Implementation

[0022] The accompanying drawings are for illustrative purposes only and should not be construed as limiting the scope of this embodiment.

[0023] To better illustrate this embodiment, some parts in the accompanying drawings may be omitted, enlarged, or reduced, and do not represent the actual product dimensions;

[0024] It will be understood by those skilled in the art that certain well-known structures and their descriptions may be omitted in the accompanying drawings.

[0025] The technical solution of the present invention will be further described below with reference to the accompanying drawings and embodiments.

[0026] Example 1

[0027] This embodiment proposes a method for allocating heterogeneous computing resources. Figure 1 This is a flowchart illustrating the heterogeneous computing resource allocation method of this embodiment;

[0028] The heterogeneous computing resource allocation method proposed in this embodiment includes the following steps:

[0029] S1: Obtain a user request set and a resource set. The user request set includes several user requests waiting for resource scheduling. The resource set includes several computing resources, and each computing resource records its total resource quantity. The computing resources in the resource set increase dynamically over time. Each user request in the user request set records the resource requirement of the user request for a single resource, the number of resources required, and the value of each computing resource in the resource set for the user request.

[0030] S2: Allocate the computing resources of the resource set to each user request of the user request set, calculate the value of each allocated computing resource to its corresponding user request and sum them up to obtain the total value of the allocated computing resources to the user request set;

[0031] S3: With the optimization objective of maximizing the total value of the allocated computing resources to the user request set, and considering the resource quantity constraints of the allocated computing resources and the resource quantity constraints of the user requests, construct a computing resource allocation optimization model.

[0032] S4: Solve the computational resource allocation optimization model to obtain the optimal resource allocation result.

[0033] In the specific implementation process, the optimization objective is to maximize the total value of the allocated computing resources to the user request set. Considering the resource quantity constraints of the allocated computing resources and the resource number constraints of the user requests, a computing resource allocation optimization model is constructed. By solving the computing resource allocation optimization model, the optimal resource allocation result is obtained, which can effectively improve the resource allocation efficiency in scenarios where both resources and requests arrive dynamically.

[0034] In an optional embodiment, the expression of the computing resource allocation optimization model includes:

[0035]

[0036]

[0037] In the formula, S represents the objective function of the computational resource allocation optimization model. p This represents the total value of the allocated computing resources for the set of user requests. Let o represent the set of user requests. Let d represent the set of resources, and p represent computing resources. o,d x represents the value of computing resource d to user request o. o,d Let x represent the decision variable, where x is the value of computing resource d when it is allocated to user request o. o,d =1, when computing resources are not allocated to user request o, x o,d =0, and x o,d , where x is the matrix element of the decision variable matrix;

[0038] Under the constraints of the allocated computing resources and the number of resources requested by the user, the objective function is solved. Maximize the decision variable matrix x, according to the objective function The optimal resource allocation is obtained by maximizing the decision variable matrix x.

[0039] In an optional embodiment, the expression for the resource quantity constraint of the allocated computing resources includes:

[0040]

[0041] In the formula, st1 represents the resource quantity constraint of the allocated computing resources, and r o x represents the resource requirement of user request o for a single computing resource. o,d Denotes decision variables, ∈ d This represents the total amount of resources used to calculate resource d.

[0042] In an optional embodiment, the expression for the constraint on the number of resources requested by the user includes:

[0043]

[0044] In the formula, st2 represents the constraint on the number of resources allocated to the user request, and x o,d Let m represent the decision variable. o This indicates the maximum number of resources that can be allocated to user request o.

[0045] In an optional embodiment, when solving the computational resource allocation optimization model, the resource allocation result is optimized using information from historical user requests, and the steps include:

[0046] Obtain a set of historical user requests, including an offline set of historical user requests. and the online historical user request set, the offline historical user request set It includes several offline historical user requests that have completed resource scheduling before this resource scheduling was started. The online historical user request set includes user requests that have already received resource scheduling after this resource scheduling was started.

[0047] The computational resource allocation optimization model is transformed into a linear programming problem using the historical user request set.

[0048] Let o be the l-th user request in the set of user requests. (l) When performing resource scheduling, the current set of resources is recorded as... Let the set of online historical user requests at the current moment be denoted as in, This represents the first to the (l-1)th user request in the user request set. The total request set at the current moment is denoted as... in, Then the linear programming problem The expressions include:

[0049]

[0050] In the formula, p i,d This represents the value of computing resource d to historical user request i. This indicates a request from the l-th user waiting for resource scheduling. (l) When performing resource scheduling, the virtual decision variable corresponding to historical user request i, and Virtual decision vector vector elements, This indicates that computing resource d responds to user request o. (l) value, Indicates user request o (l) The corresponding decision variables, and Decision vector vector elements;

[0051] Considering the resource constraints on the amount of computing resources allocated to historical user requests, and the constraints on the number of resources allocated to each historical user request, the solution is to make... Decision vector that maximizes the value Depend on The decision variable matrix x is formed, where n represents the total number of user requests waiting for resource scheduling in the user request set.

[0052] As an example, This represents the collection of offline historical user requests. Represents the set of online historical user requests, o (l) This indicates the currently scheduled user request. This represents the set of online historical user requests and the currently scheduled user requests.

[0053] In an optional embodiment, the expression for the resource quantity constraint of the allocated computing resources that takes into account historical user requests includes:

[0054]

[0055] In the formula, st3 represents the resource constraint of the allocated computing resources requested by historical users, and r i This represents the resource requirement of user i for a single computing resource in the past. Indicates user request o (l) The resource requirement for a single computing resource, ∈ D This represents the total amount of resources used to calculate resource d.

[0056] In an optional embodiment, the expression for the constraint on the number of resources allocated to user requests that take into account historical user requests includes:

[0057]

[0058]

[0059] In the formula, st4 represents the constraint on the number of resources allocated to a user request in the past, and the constraint st 41 st 42 st 43 and st 44 Constraint st4, m i This indicates the maximum number of resources that can be allocated to historical user request i. Indicates that the request is assigned to the current user. (l) The maximum number of resources.

[0060] In an alternative embodiment, a linear programming problem is solved. Obtain the probability vector At that time, an open-source solver was used for the solution; during the solution process, due to... It is a dummy decision variable; the history of the decision request cannot be modified. This is a decision reference value for the current user request, representing the computing resource d allocated to the user request o. (l) The probabilities of all decision variables will form a vector. In order to avoid violating constraint st during the solution process 42 For decision vectors Sort, only the first Each resource can be eligible for allocation, which will be provisional. Recorded as For the former Individual resources, settings To avoid violating constraints st during resource allocation 41 , will user request o (l) Requirements for a single computing resource Computing the remaining amount of resource d Comparison, if the remaining resources and If the difference is greater than or equal to the preset threshold, then otherwise,

[0061] Example 2

[0062] This embodiment proposes a heterogeneous computing resource allocation system to implement the heterogeneous computing resource allocation method proposed in Embodiment 1.

[0063] This embodiment proposes a heterogeneous computing resource allocation system, which includes: a resource module, a user module, and a scheduling module;

[0064] The resource module is used to provide the resource set to the scheduling module;

[0065] The user module is used to provide the scheduling module with the user request set and the user historical request set;

[0066] The scheduling module is used to allocate resources to user requests waiting for resource scheduling in the user request set based on the resource set and the user historical request set, using the heterogeneous computing resource allocation method.

[0067] This embodiment also proposes a computer device, including a memory and a processor. The memory stores computer-readable instructions, which, when executed by the processor, cause the processor to perform the steps of the heterogeneous computing resource allocation method as described in Embodiment 1.

[0068] It is understood that the heterogeneous computing resource allocation system and computer equipment in this embodiment are used to implement the method of embodiment 1. The options in embodiment 1 above are also applicable to this embodiment, so they will not be described again here.

[0069] Example 3

[0070] This embodiment is a specific implementation example of a heterogeneous computing resource allocation method based on Embodiment 1.

[0071] For the user module, this invention defines the total set of user requests as follows: The set of historical user requests that existed on the platform before scheduling was initiated was: The set of user requests in the entire scheduling window is Total Requests H represents the historical request set. The size, O represents the set of user requests in the scheduling window. The size of the request. When each user request arrives, this invention defines that scheduling enters a new round, where the number of user requests arriving in round l is 0. (l) .

[0072] For the resource module, this invention defines the total resource set as follows: The resources in the resource set increase dynamically over time. For each newly arrived resource d, there exists a total resource usage. In round l, the remaining amount of resource d will be defined as In round l, the total resources of all resources in the platform can be represented as a vector. The remaining amount of all resources can be represented as a vector.

[0073] This invention stores a triplet for each request i. in This indicates the amount of resources requested by request i. This indicates the resource quantity required by request i. This represents the value of all resources for request i in round l, where

[0074] In the scenario of this invention, each user desires the platform to allocate appropriate resources for model training for each request, while the platform aims to allocate appropriate resources to appropriate user requests without exceeding the total resource usage limit. Combining these two objectives, the optimization problem in this scenario can be defined as:

[0075]

[0076] Where matrix x is the decision variable, x o,d ∈x. When resource d is allocated to user request o, x o,d =1, otherwise x o,d =0. Constraint (1b) restricts the allocation of each resource from exceeding its total resource usage, constraint (1c) restricts the upper limit of the number of resources requested by each user, and constraint (1d) restricts the scheduling module from satisfying the characteristic of integer allocation.

[0077] Currently, despite significant efforts in resource allocation, several challenges remain. First, the platform's highly dynamic nature. Resource allocation is made without knowing the exact users and resources yet to arrive. Second, the need for caution when making irreversible decisions regarding unrecoverable resources. If the platform responds to every user's resource request, unrecoverable resources could be quickly depleted. Existing technologies using greedy algorithms for allocation fall short of optimal allocation.

[0078] To address these challenges, this invention proposes a novel resource allocation strategy—a history-aware resource allocation strategy. Compared to previous techniques, this invention utilizes historical information from platform users to overcome the problem of getting trapped in local optima in online scenarios. This invention is the first to model a history-aware resource allocation problem, aiming to maximize the overall utility of platform users while considering the dynamic reachability of users and resources.

[0079] This invention optimizes resource allocation by utilizing information from users' historical requests. When identifying each arriving online user request, the invention evaluates it holistically along with existing historical requests. If the current request has a higher value after allocation, it is prioritized; otherwise, valuable resources are reserved for subsequent allocations.

[0080] The steps of the historical information perception resource allocation mechanism are as follows:

[0081] When the user requests o (l) Upon arrival, this algorithm will construct a set containing historical information. Because of the original optimization problem This is an integer linear programming problem, an NP-hard problem, which has been proven impossible to solve in polynomial time. Therefore, this invention transforms it into the linear programming problem shown below.

[0082]

[0083] Among them, constraint (2b) restricts the total usage of historical and current requests to not exceed the total resource limit, which means that the current request will be set aside each time a decision is made. (l) The comparison with historical requests becomes increasingly stringent as the number of requests increases. Constraints (2c) and (2d) limit the number of requests for both historical and current requests, while constraints (2e) and (2f) ensure that the problem is a linear programming problem that can be solved in polynomial time.

[0084] Therefore, the historical information-aware resource allocation algorithm solves the problem using a solver each time a new user request arrives. Due to the problem Used to solve problems that include historical records, where It is a dummy decision variable; its history has already been determined and cannot be modified by the decision request. Decision variable This is a decision reference value for the current request, representing the allocation of resource d to request o. (l) The probability of [the outcome]. All decision variables will form a vector. Next, the historical information-aware resource allocation algorithm will, in order to avoid violating constraints (2d), adjust the decision vector. Sort, only the first Each resource can be eligible for allocation; at this time, settings are configured. However, in practice, this allocation may violate constraint (2b), therefore the requested amount also needs to be adjusted. With the remaining amount of resources In comparison, resources can only be actually allocated when there is a relatively sufficient amount of resources remaining.

[0085] Figure 2 This is a pseudocode diagram illustrating the historical information perception resource allocation mechanism proposed in this embodiment. Figure 2 A specific implementation example of converting the historical information perception resource allocation mechanism into pseudocode is shown.

[0086] This invention proposes a resource allocation method for model training platforms, which can fully utilize historical information within the platform to effectively improve resource allocation efficiency and ensure that most resources are allocated reasonably. This invention details the algorithm used—a historical information-aware resource allocation mechanism. This invention can be implemented in various ways, including but not limited to:

[0087] The algorithm for evaluating the value of requests and resources can employ various approaches, such as a data value evaluation algorithm for training data resources and a request training duration value evaluation algorithm for training time resources.

[0088] Solving linear programming problems Obtain the probability vector Various approaches can be adopted, such as using open-source solvers like Clarabel, OSQP, SCS, and ECOS, or proposing approximation algorithms with lower time complexity.

[0089] The modeling methods and data structures for requests and resources can be modified according to the specific circumstances of the system.

[0090] For a data sharing platform with a large amount of data, the platform wants to limit the frequency of data usage to avoid widespread data privacy leaks due to excessive data exposure. Data and user requests are constantly arriving. In this case, the platform can model the resources of this invention as data and modify the relevant data structures to meet the needs of the data sharing platform. The platform can also model the requests of this invention as requests to enter the data sharing platform. During scheduling, the platform can build a historical information database and connect to the historical information-aware resource allocation mechanism of this invention to optimize data allocation using historical information.

[0091] For a computing platform that leases computing power from a third-party cloud platform, the platform can allocate a limited amount of computing time to its users, while rental and user requests are constantly arriving. In this case, the platform can model the resources of this invention as computing time and modify the relevant data structures to meet the needs of the computing platform. The platform can also model the requests of this invention as training tasks entering the computing platform. During scheduling, the platform can build a historical information database and integrate the historical information-aware resource allocation mechanism of this invention, using historical information to optimize data allocation.

[0092] Figure 3 This is the overall design diagram proposed in this embodiment. The overall design concept of the heterogeneous computing resource allocation method of this application is as follows: Figure 3 As shown.

[0093] The beneficial effects of the heterogeneous computing resource allocation method of this application will be explained in conjunction with existing technologies 1-3.

[0094] Existing technology 1 modifies the mainstream fair allocation algorithm, namely the Dominant Resource Fairness (DRF) algorithm. It designs a fair allocation algorithm for unrecoverable resources, aiming to ensure that all users obtain resources fairly. This technology formally proves that its algorithm satisfies the four properties of fair scheduling: SharingIncentive, Strategy-proofness, Pareto Efficiency, and Envy-freeness.

[0095] Existing technology 1 requires users to have a complete understanding of their resource needs. Since user resource needs are fixed, the platform cannot allocate more suitable resources based on remaining resources. Furthermore, this technology prioritizes fairness in resource allocation; when there are many users and their resource needs are high, fair allocation may result in each user receiving only a small share of resources, leaving the needs of most users unmet.

[0096] Existing technology 2 models the scheduling problem as a variant of the maximum knapsack problem, with the aim of maximizing the platform's allocation efficiency to all users, and proposes an approximate algorithm to solve it.

[0097] Existing technology 2 requires users to have a complete understanding of resource requirements. Since users' resource requirements are fixed, the platform cannot allocate more suitable resources based on the remaining amount of resources.

[0098] Existing technology 3 models the scheduling problem as a variant of an online generalized allocation problem, aiming to maximize the platform's allocation efficiency to all users. This technology proposes a threshold-based online algorithm to solve the problem and formally proves the competition ratio of the algorithm, ensuring that even under the worst input, the distance between the algorithm's result and the result of the optimal solution has an upper bound.

[0099] Existing technology 3 relies on a realistic assumption that all users' resource demands must be much less than the total amount of resources remaining.

[0100] Compared to existing technologies, this invention effectively improves resource allocation efficiency in scenarios where both resources and requests arrive dynamically. When comparing control variables, this invention demonstrates a significant improvement over existing technologies in terms of the total value of all available requests.

[0101] The same or similar labels correspond to the same or similar parts;

[0102] The terms used to describe positional relationships in the accompanying drawings are for illustrative purposes only and should not be construed as limiting the scope of this embodiment.

[0103] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art can make other variations or modifications based on the above description. It is neither necessary nor possible to exhaustively describe all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the claims of the present invention.

Claims

1. A method for allocating heterogeneous computing resources, characterized in that, Includes the following steps: Obtain a user request set and a resource set. The user request set includes several user requests waiting for resource scheduling, and the resource set includes several computing resources. Each computing resource records its total resource quantity, and the computing resources in the resource set increase dynamically over time. Each user request in the user request set records the resource requirement of the user request for a single resource, the number of resources required, and the value of each computing resource in the resource set for the user request. The computing resources of the resource set are allocated to each user request of the user request set. The value of each allocated computing resource to its corresponding user request is calculated and summed to obtain the total value of the allocated computing resources to the user request set. With the optimization objective of maximizing the total value of the allocated computing resources to the set of user requests, and considering the resource quantity constraints of the allocated computing resources and the resource quantity constraints of the user requests, a computing resource allocation optimization model is constructed. Solve the aforementioned computational resource allocation optimization model to obtain the optimal resource allocation result; When solving the computational resource allocation optimization model, the steps for optimizing the resource allocation result by utilizing information from historical user requests include: Obtain a set of historical user requests, including an offline set of historical user requests. and the online historical user request set, the offline historical user request set It includes several offline historical user requests that have completed resource scheduling before this resource scheduling was started. The online historical user request set includes user requests that have already received resource scheduling after this resource scheduling was started. The computational resource allocation optimization model is transformed into a linear programming problem using the historical user request set. ; Let the first one in the set of user requests be... User request When performing resource scheduling, the current set of resources is recorded as follows: Let the set of online historical user requests at the current moment be denoted as ,in, Represents the first to the second in the user request set. Each user request, the total set of requests at the current moment is denoted as . ,in, Then the linear programming problem The expressions include: In the formula, Represents computing resources Requests from historical users value, Indicates the first A number of user requests awaiting resource scheduling. When performing resource scheduling, historical user requests The corresponding virtual decision variables, and Virtual decision vector vector elements, Represents computing resources User request value, Indicates user request The corresponding decision variables, and Probability vector vector elements; Considering the resource constraints on the amount of computing resources allocated to historical user requests, and the constraints on the number of resources allocated to each historical user request, the solution is to make... The probability vector that maximizes the value of ,Depend on ~ Composition of decision variable matrix The This represents the total number of user requests waiting for resource scheduling in the user request set.

2. The heterogeneous computing resource allocation method according to claim 1, characterized in that, The expression of the computing resource allocation optimization model includes: In the formula, Let represent the objective function of the computational resource allocation optimization model. This represents the total value of the allocated computing resources for the set of user requests. This represents the set of user requests. Indicates a user request. This refers to the set of resources. Represents computing resources. Represents computing resources User request value, Represents decision variables, when computational resources Assigned to user request hour, When computing resources are not allocated to user requests hour, ,and Decision variable matrix Matrix elements; Under the constraints of the allocated computing resources and the number of resources requested by the user, the objective function is solved. Maximize the decision variable matrix According to the objective function Maximize the decision variable matrix Perform computational resource allocation to obtain the optimal resource allocation result.

3. The heterogeneous computing resource allocation method according to claim 2, characterized in that, The expression for the resource quantity constraint of the allocated computing resources includes: In the formula, This represents the resource quantity constraint of the allocated computing resources. Indicates user request Resource requirements for a single computing resource. Represents decision variables, Represents computing resources The total amount of resources.

4. The heterogeneous computing resource allocation method according to claim 2, characterized in that, The expression for the constraint on the number of resources allocated to a user request includes: In the formula, This indicates the constraint on the number of resources allocated to a user's request. Represents decision variables, Indicates allocation to user request The maximum number of resources.

5. The heterogeneous computing resource allocation method according to any one of claims 2 to 4, characterized in that, The expression for the resource quantity constraint of the allocated computing resources that takes into account historical user requests includes: In the formula, This represents the resource constraints on the computing resources allocated to historical user requests. Indicates historical user requests Resource requirements for a single computing resource. Indicates user request Resource requirements for a single computing resource. Represents computing resources The total amount of resources.

6. The heterogeneous computing resource allocation method according to claim 1, characterized in that, The expression for the constraint on the number of resources allocated to user requests that takes into account historical user requests includes: In the formula, This represents the constraint on the number of resources allocated to a user request from a historical user request. , , and Compositional constraints , Indicates that the request was assigned to a historical user. The maximum number of resources, Indicates the request is assigned to the current user. The maximum number of resources.

7. The heterogeneous computing resource allocation method according to claim 6, characterized in that, Solving linear programming problems Obtain the probability vector At that time, an open-source solver was used for the solution; during the solution process, due to... It is a dummy decision variable; the history of the decision cannot be modified by the request. It is a decision reference value based on the current user request, representing computing resources. Assigned to user request The probabilities of all decision variables will form a vector. In order to avoid violating constraints during the solution process For probability vectors Sort, only the first Each resource can be eligible for allocation, which will be provisional. Recorded as For the former Individual resources, settings To avoid violations of constraints during resource allocation , will user request Requirements for a single computing resource With computing resources Remaining resources Comparison, if the remaining resources and If the difference is greater than or equal to the preset threshold, then ,otherwise, .

8. A heterogeneous computing resource allocation system, used to implement the heterogeneous computing resource allocation method according to any one of claims 5 to 7, characterized in that, include: Resource module, user module, and scheduling module; The resource module is used to provide the resource set to the scheduling module; The user module is used to provide the scheduling module with the user request set and the historical user request set; The scheduling module is used to allocate resources to user requests waiting for resource scheduling in the user request set based on the resource set and the historical user request set, using the heterogeneous computing resource allocation method.

9. A computer device comprising a memory and a processor, wherein the memory stores computer-readable instructions, characterized in that, When the computer-readable instructions are executed by the processor, the processor performs the steps of the heterogeneous computing resource allocation method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Dynamic RAN slicing method based on information perception and joint computing cache

    CN116743584A

  • Task scheduling optimization method and system based on equipment state analysis

    CN118193169A