Cross-domain GPU affinity scheduling method and system
Through the cross-domain GPU affinity scheduling method, GPU resources are screened and evaluated, and the problem of GPU affinity not considered in the existing technology is solved, which improves the accuracy and efficiency of GPU resource configuration and meets the diverse computing needs. And minimize cost.
Patent Information
- Application Number
- CN202411440151.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-15
- Publication Date
- 2025-01-10
AI Technical Summary
The existing GPU scheduling strategies are mainly concentrated in the local resource pool, and the affinity between the GPU and the application is not fully considered, resulting in the allocated GPU resources that may not be most suitable for users' needs.
The cross-domain GPU affinity scheduling method is adopted to gradually narrow the scheduling scope through resource list filtering, affinity calculation and cost evaluation, and select the most suitable GPU resource for scheduling. Specific steps include obtaining GPU information and application metric data, classifying applications, filtering GPU resources of similar categories, using multi-dimensional indicators to evaluate affinity scores, and sorting and selecting the most suitable resources.
It improves the accuracy and efficiency of GPU resource allocation, ensures that the application allocates the most affinity GPU resources, meets diversified computing needs, and minimizes the cost.
Smart Images

Figure CN119292782A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field related to GPU scheduling, and in particular, to a cross-domain GPU affinity scheduling method and system. Background Art
[0002] The statements in this section merely provide background information related to the present disclosure and do not necessarily constitute prior art.
[0003] With the rapid development of artificial intelligence, deep learning and other fields, GPU, as a hardware device dedicated to graphics rendering and parallel computing, has become an indispensable tool in deep learning, scientific computing, data analysis and other fields. Due to the continuous increase and diversification of computing tasks, local GPU resources may not be able to meet all needs. For example, in scenarios such as large-scale model training, complex data processing and real-time reasoning, local GPU resources may be limited by computing power, memory capacity, etc., and cannot meet the requirements of applications. Therefore, cross-domain GPU resource scheduling becomes necessary, integrating local and cross-domain GPU resources to allow applications to call GPU resources from other resource pools, thereby improving overall computing efficiency and resource utilization, and meeting diverse computing needs.
[0004] In cross-domain GPU resource scheduling, applications are allocated and scheduled in different GPU clusters in the same data center or GPU clusters outside the data center. Different GPU clusters may use GPU devices of different models and architectures, and their performance, computing power, memory capacity and other characteristics are different. It is necessary to select GPU resources with affinity according to application requirements. Affinity scheduling refers to scheduling applications to execute on the GPU device that best matches their performance requirements, which requires consideration of the characteristics of the application and the performance characteristics of different GPU devices; the inventors found in their research that most of the existing scheduling strategies are scheduled in the local resource pool, and most of the existing methods focus on scheduling according to resource requirements, without considering the affinity between the GPU and the application. The allocated GPU resources may not be the most user-friendly GPU resources. Summary of the invention
[0005] In order to solve the above problems, the present disclosure proposes a cross-domain GPU affinity scheduling method and system, which gradually narrows the scheduling scope through resource list screening, affinity calculation and cost evaluation, thereby improving the accuracy and efficiency of GPU resource configuration.
[0006] In order to achieve the above objectives, the present disclosure adopts the following technical solutions:
[0007] One or more embodiments provide a cross-domain GPU affinity scheduling method, comprising the following steps:
[0008] Obtain GPU information in each resource pool and indicator data of the application to be processed;
[0009] Classify the application to be processed according to its indicator data to obtain the category of the application to be processed;
[0010] According to the historical matching information in the historical matching library, the existing GPU resources are filtered based on the category of the application to be processed, and a list of GPU resources similar to the category of the application to be processed is screened out;
[0011] For the obtained GPU resource list, use multi-dimensional indicators to evaluate the affinity between the application and GPU resources, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling.
[0012] One or more embodiments provide a cross-domain GPU affinity scheduling system, including:
[0013] Data acquisition module: configured to obtain GPU information in each resource pool and indicator data of the application to be processed;
[0014] Application classification module: configured to classify the application to be processed according to the indicator data of the application to be processed to obtain the category of the application to be processed;
[0015] Filtering module: configured to filter the historical matching library constructed by GPU information in each resource pool based on the category of the application to be processed, and select a list of GPU resources similar to the category of the application to be processed;
[0016] Affinity evaluation module: is configured to evaluate the affinity between the application and the GPU resources using multi-dimensional indicators for the obtained GPU resource list, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling.
[0017] An electronic device includes a memory and a processor, and computer instructions stored in the memory and executed on the processor. When the computer instructions are executed by the processor, the steps in the above-mentioned cross-domain GPU affinity scheduling method are completed.
[0018] Compared with the prior art, the present invention has the following beneficial effects:
[0019] The present invention comprehensively considers the local resource pool and the cross-domain resource pool to implement scheduling, uses a classification model to predict the category to which the application belongs, screens out a list of GPU resources that are affinity to the category, evaluates the affinity between the application and the GPU based on data such as load and data transmission cost, and selects the GPU resource scheduling with the highest score; at the same time, after resource list screening, affinity calculation and cost evaluation, the scheduling scope is gradually narrowed, thereby improving the accuracy and efficiency of GPU resource configuration.
[0020] The advantages of the present disclosure and the advantages of additional aspects will be described in detail in the following specific embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The accompanying drawings constituting a part of the present disclosure are used to provide a further understanding of the present disclosure. The exemplary embodiments of the present disclosure and the description thereof are used to explain the present disclosure but do not constitute a limitation of the present disclosure.
[0022] Figure 1 is a flowchart of a scheduling method according to Embodiment 1 of the present disclosure;
[0023] Figure 2 is a flow chart of a method for preprocessing acquired historical application data according to Embodiment 1 of the present disclosure;
[0024] Figure 3 is a flow chart of a GPU resource scheduling solution based on cost evaluation according to Embodiment 1 of the present disclosure;
[0025] Figure 4 is a block diagram of a system according to Embodiment 2 of the present disclosure; DETAILED DESCRIPTION
[0026] The present disclosure is further described below in conjunction with the accompanying drawings and embodiments.
[0027] It should be noted that the following detailed descriptions are exemplary and are intended to provide further explanation of the present disclosure. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present disclosure belongs.
[0028] It should be noted that the terms used here are only for describing specific embodiments and are not intended to limit exemplary embodiments according to the present disclosure. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof. It should be noted that, in the absence of conflict, the various embodiments in the present disclosure and the features in the embodiments can be combined with each other. The embodiments will be described in detail below in conjunction with the accompanying drawings.
[0029] Example 1
[0030] In the technical solutions disclosed in one or more embodiments, Figures 1 to 3 As shown, a cross-domain GPU affinity scheduling method includes the following steps:
[0031] S1: Obtain GPU information in each resource pool and indicator data of the application to be processed;
[0032] S2: classify the indicator data of the application to be processed to obtain the category of the application to be processed;
[0033] S3: According to the historical matching information in the historical matching library, the existing GPU resources are filtered based on the category of the application to be processed, and a list of GPU resources similar to the category of the application to be processed is screened out;
[0034] S4: For the obtained GPU resource list, use multi-dimensional indicators to evaluate the affinity between the application and the GPU resources, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling;
[0035] A further technical solution is that when the GPU resources with the highest score are insufficient, the cost of the GPU resources in the GPU resource list is calculated, and the GPU resource combination solution with the lowest cost is selected for scheduling;
[0036] In this embodiment, scheduling is implemented by comprehensively considering local resource pools and cross-domain resource pools, using a classification model to predict the category to which the application belongs, screening out a list of GPU resources that are affinity to the category, evaluating the affinity between the application and the GPU based on data such as load and data transmission cost, and selecting the GPU resource with the highest score for scheduling; at the same time, through resource list screening, affinity calculation, and cost evaluation, the scheduling scope is gradually narrowed, thereby improving the accuracy and efficiency of GPU resource configuration.
[0037] In this embodiment, a classification prediction model is used to predict the type of application, and a GPU with stronger affinity can be screened out according to the category of the application; in the GPU scheduling process, multiple indicators are considered to evaluate the affinity between the application and the GPU, and the GPU with the highest affinity score is selected for scheduling. By calculating the affinity score by integrating indicators of multiple dimensions, the application and GPU resources can be matched more accurately; in the case of insufficient local resources, the cross-domain resource cost or the combined use of the cost of local resources and cross-domain resources is used to select an appropriate resource scheduling strategy. This method minimizes the cost while satisfying the application affinity.
[0038] In step S1, GPU information in each resource pool is obtained, and the GPU information includes monitoring data such as GPU memory and utilization;
[0039] Specifically, a configuration file is created for each GPU cluster, the configuration file is used to record GPU information, and the configuration file is updated according to a set periodic update mechanism to reflect the latest hardware status;
[0040] The resource pool includes a local resource pool and a cross-domain resource pool, and each resource pool is equipped with a GPU cluster;
[0041] In step S2, the indicator data of the application to be processed is classified to obtain the category of the application to be processed; further, the training process of the classification prediction model includes the following steps:
[0042] Step S21, obtaining the indicator data of historical applications and the category labels corresponding to the applications;
[0043] Each application has j indicator data Y = {Y i ,i=1,2,...,j}, there are n types of applications S={S i ,i=1,2,...,n};
[0044] Furthermore, it also includes preprocessing the historical application data, such as Figure 2 As shown, including:
[0045] 21.1 Generate an indicator vector t with indicator information by embedding each indicator data of the application through the word embedding layer 1 ,t 2 ,...,t j , where the indicator vector is j-dimensional;
[0046] 21.2 The class labels s to be applied 1 ,s 2 ,...,s n One-hot encoding is used to convert the label vector into a binary vector, where the label vector is n-dimensional;
[0047] Step S22: construct a bidirectional gated recurrent prediction model (BiGRU model) as a classification prediction model, including an input layer, a bidirectional GRU network layer and an output layer.
[0048] Specifically, the input layer receives application feature data, and the bidirectional GRU network layer processes the forward and reverse information of the sequence data at the same time to generate context representation. According to the output of the GRU layer, the model uses a normalization function to calculate the probability value of each category. The model uses a cross entropy loss function to evaluate the difference between the predicted probability and the true label, thereby optimizing the model parameters and achieving better classification results.
[0049] Step S23, use the gradient descent method to train the classification prediction model; use the historical application indicator data and the corresponding category labels to generate indicator vectors and label vectors as input through the above preprocessing, input them into the classification prediction model, output the application category prediction vector, and iterate the loop to obtain the trained classification prediction model.
[0050] Specifically, the model is trained for multiple rounds using the training set. After each round of training, the accuracy is calculated on the model using the test set, and the model of the current round is evaluated, and then the parameter information is updated by the gradient descent method to optimize the current model. After multiple rounds of training, the model with the highest accuracy is saved as the optimal model. In this embodiment, the epoch parameter is 30, the indicator vector dimension is j, and the label vector dimension is n.
[0051] Specifically, for a new application to be processed, the output label vector is represented as a probability value for predicting each type, and the largest value is selected as the category to which the application belongs.
[0052] In step S3, filtering is performed according to the GPU resource list matching the application category in the historical matching library through the built-in filtering algorithm;
[0053] Specifically, this embodiment selects M computing domains, each of which has N i ,i=1,2,...,m resource pools, each resource pool has different GPU resources, and the GPU resources of each computing domain are aggregated into a list GPU 1 ,GPU 2 ,...,GPU n , where each GPU resource has a tuple, which mainly contains the GPU type, the resource pool and computing domain to which the GPU belongs, the computing node where it is located, and other GPU resource information such as memory capacity.
[0054] Furthermore, if there are applications of similar categories, according to the identified application category S j , obtain the corresponding historical matching GPU resource list from the historical matching library, use the list to filter the currently available cross-domain GPU resources, select more suitable GPU resources and compile them into a GPU resource list GPU 1 ,GPU 2 ,...,GPU m Among them, the historical matching library is an existing database that records the GPUs that have been matched historically by applications of each category;
[0055] In step S4, the affinity between the application and the GPU resources is evaluated using multi-dimensional indicators, including the following steps:
[0056] Step 41: Obtain multi-dimensional evaluation indicators, define the evaluation indicators as tuples, and perform normalization processing;
[0057] Define multiple indices as a tuple index = (x 1 ,x 2 ,...,x n );
[0058] For each indicator, the conversion is performed by setting f i Functions are: y i =f i (x i ),i=1,2,...,n;
[0059] Since the calculation formulas corresponding to different indicators have different units and dimensions, these indicators need to be normalized before calculating the affinity score. The normalization formula is:
[0060]
[0061] Specifically, the multi-dimensional evaluation indicators may include load, data transmission cost, energy consumption, and purchase cost. The tuple index of the multi-dimensional indicators = (load, data transmission cost, energy consumption, purchase cost). Selecting these indicators can improve the efficiency of application execution, reduce resource usage, and reduce scheduling costs overall. It comprehensively evaluates the affinity between applications and GPU resources from multiple dimensions and can select the GPU resources that are most compatible with the application. Specifically, in order to screen out the most compatible GPU resources, the affinity score calculation process is applied to the actual GPU resource data. Taking four types of GPU resources as an example, among which GPU A For local GPU resources, GPU B , GPU C , GPU D All are cross-domain GPU resources. The indicators of GPU resource candidates are shown in Table 1:
[0062] Table 1
[0063]
[0064] A feasible implementation scheme is to calculate the load in the multi-dimensional evaluation index of affinity, which can be obtained by weighted summation of CPU utilization, GPU utilization and disk utilization. The specific calculation formula is:
[0065] L=w g *Usage CPU +w c *Usage GPU +w d Usage Disk
[0066] Among them, Usage g 、Usage c 、Usage d are CPU utilization, GPU utilization and disk utilization respectively, w g 、w c 、w dThey are the weights of each indicator, and their sum is 1. Each weight can be set according to the situation.
[0067] Specifically, the weight of the computational load is set according to the degree of impact on the execution efficiency of the application task;
[0068] GPU plays a great role in accelerating the execution of applications. The utilization of GPU directly affects the execution efficiency of these tasks. Therefore, the weight of GPU utilization is relatively large. In this embodiment, the load weights are w c =0.3, w g =0.5, w d =0.2, according to the formula, GPU A , GPU B , GPU C , GPU D The loads are 48%, 42%, 36%, and 62% respectively.
[0069] A feasible implementation scheme is to measure the data transmission cost using the transmission time, which is specifically calculated using the data size, network delay, and network bandwidth:
[0070]
[0071] Specifically, in this embodiment, the data volume of the application to be processed is 20 GB, and the data transmission costs calculated according to the formula are 0.102, 0.676, 0.512, and 1.005, respectively, in seconds.
[0072] A feasible implementation scheme, energy consumption directly affects the electricity cost and cooling cost of the data center. By optimizing energy consumption, energy saving and cost control can be achieved. The energy consumption calculation formula is:
[0073] E = P·t;
[0074] Among them, P is power consumption, t is usage time;
[0075] In this embodiment, the GPU A , GPU B , GPU C , GPU D The energy consumption is 2400, 3150, 3000 and 2800 respectively, in W·h.
[0076] Furthermore, the purchase cost can be in the form of leasing, and the calculation formula for leasing cost is as follows:
[0077] C=R·t·n
[0078] Where R is the unit price of the rental, t is the usage time, and n is the number of GPU cards. A , GPU B , GPU C , GPU D The purchase costs are 720, 540, 768, and 784 respectively.
[0079] Step 42: According to the impact of the indicator on the overall score, the indicator is divided into positive indicators and negative indicators. According to the positive and negative characteristics of the indicator, the normalized value is adjusted so that the indicator values are all positive values, as follows:
[0080] For positive indicators: y i ″=y i ′;
[0081] For negative indicators: y i ″=1-y i ′;
[0082] Specifically, for the four GPUs in Table 1: local GPU resources, GPU B , GPU C , GPU D ; The normalized values of load are 0.26, 0.22, 0.19, and 0.33, respectively; the normalized values of data transmission cost are 0.05, 0.29, 0.22, and 0.44, respectively; the normalized values of energy consumption are 0.21, 0.28, 0.26, and 0.25, respectively; the normalized values of rental cost are 0.26, 0.19, 0.27, and 0.28, respectively;
[0083] Step 43, setting weights, and weighting all the obtained indicators based on the weights to obtain the affinity score of each GPU resource; wherein the weights are set according to the degree of influence of the evaluation indicators on the execution efficiency of the application tasks.
[0084] Specifically, calculate the affinity score:
[0085]
[0086] The weights of different indicators are: The weight is set adaptively according to the impact of the indicator on the application execution efficiency. is the adjusted normalized index value;
[0087] The affinity score is calculated using the index values of load, data transmission cost, energy consumption, and rental cost in step 41 above:
[0088] Score = w 1 ·(1-L′)+w2 ·(1-T′)+w 3 ·(1-E′)+w 4 (1-C′)
[0089] Among them, w i , i = 1, 2, 3, 4 are the weights of each indicator, the sum is 1, L′, T′, E′, C′ are the normalized indicator values;
[0090] Specifically, in this embodiment, i ,i=1,2,3,4 are 0.4, 0.3, 0.2, 0.1 respectively. The load and data transmission time affect the utilization efficiency and performance of GPU resources, so they are set to higher weights, and the energy consumption and rental cost are set to lower weights to calculate the GPU A , GPU B , GPU C , GPU D The affinity scores are 0.813, 0.75, 0.779, and 0.658 respectively. The GPU with the highest affinity score is selected. A Scheduling.
[0091] Step 44: After calculating the affinity score of each GPU resource, the scores are sorted and the GPU resource with the higher score is selected for scheduling; that is, a scheduling request can be issued to the GPU resource with the highest score;
[0092] Furthermore, if the GPU resource with the highest affinity score is insufficient for processing application resources, the GPU cost can be further evaluated using multi-dimensional evaluation indicators for the GPU resources in the GPU resource list, including the following steps:
[0093] Step 51: define the multi-dimensional evaluation index as a tuple and convert it, and then perform normalization processing;
[0094] The multi-dimensional evaluation indicators can include load, data transmission cost, energy consumption and purchase cost. The multi-dimensional indicators are defined as a tuple index2 = (e 1 ,e 2 ,...,e n );
[0095] For each indicator conversion can be achieved through p i () function, p i () function is a setting function, and has calculation formulas: i =p i (e i ),i=1,2,...,n;
[0096] Specifically, the same normalization method as step 41 is used to normalize zi Normalize to get z i ′,
[0097] Step 52: Adjust the normalized value according to the positive and negative characteristics of the indicator;
[0098] For positive indicators: z i ′′=1-z i ′;
[0099] For negative indicators: z i ″=z i ′;
[0100] Step 53: weight the adjusted indicator value according to the set indicator weight to obtain the cost of scheduling a single GPU;
[0101] Step 54, calculating the cost of using multiple GPUs in combination, comparing and selecting the scheduling scheme with the minimum cost as the GPU scheduling scheme;
[0102] Specifically, calculate the cost of the GPU:
[0103]
[0104] The weights of different indicators are: z i ″ is the adjusted normalized index value;
[0105] When multiple GPU resource scheduling are used in combination, the cost is calculated based on the ratio of resource usage:
[0106]
[0107] Among them, the weights of different GPU costs are is the ratio of the resource requirement of the application on the GPU to the total resource requirement of the application, and extra is the other cost after normalization.
[0108] An optional implementation method is to calculate the costs of the two cases separately and use cross-domain resources a separately. i The cost is Cost a The cost of combining local resources and cross-domain resources is Cost b , if Cost a <Cost b , then choose to use only a i , if Cost a >Cost b , multiple GPU resources are used in combination.
[0109] When local resources are insufficient, use the cross-domain resource cost or the cost of local resources and cross-domain resources in combination to select an appropriate resource scheduling strategy. This method minimizes the cost while satisfying application affinity.
[0110] Specifically, taking the specific example in Table 1 as an example, the process of selecting GPU scheduling through cost calculation is explained, such as Figure 3 As shown, the description is as follows:
[0111] Cost calculation evaluation index tuple index = (load, data transmission cost, energy consumption, purchase cost);
[0112] The cost is evaluated using multiple indicators. The cost calculation formula for each GPU resource is as follows:
[0113] Cost = w 1 ·L′+w 2 ·T′+w 3 ·E′+w 4 ·C′
[0114] Among them, w i ,i=1,2,3,4 are the weights of load, data transmission cost, energy consumption and purchase cost respectively, L', T', E', C' use the calculation results in step 4;
[0115] Specifically, w i ,i=1,2,3,4 are 0.4, 0.3, 0.2, 0.1 respectively.,Load and data transmission time affect the utilization efficiency and performance of GPU resources,,so they are set to higher weights, and energy consumption and rental cost are set to lower weights.,In the first case, only cross-domain resources GPU are used. C , calculate the Cost according to the formula a =0.221.
[0116] Combining Resources GPU A and GPU C When scheduling, the cost is calculated based on the proportion of resource usage, and the GPU needs to be taken into account when calculating the cost. A With GPU C Data transfer between:
[0117]
[0118]
[0119]
[0120]
[0121] Costtotal =w 1 ·L total +w 2 ·(T total +T extra )+w 3 ·E total +w 4 ·C total
[0122] Among them, δ represents the proportion of GPU resources used to resource requirements, which can be set according to specific circumstances, w 1 、w 2 、w 3 、w 4 are the weights of load, data transmission cost, energy consumption and purchase cost respectively. T extra GPU after normalization A With GPU C The cost of data transmission between them;
[0123] Specifically, in this embodiment, the GPU A Resources account for 60% of the application's resource requirements, GPU C Resources account for 40% of the application's resource requirements, Calculate Cost according to the formula b =0.218;
[0124] Due to Cost a >Cost b The second case has a lower cost, so we choose to use the local resource GPU in combination. A and cross-domain resource GPU C .
[0125] This embodiment implements a cross-domain GPU affinity scheduling method, uses a classification model to predict the type of application, and can screen out a GPU with stronger affinity according to the category of the application.
[0126] Example 2
[0127] Based on Example 1, this embodiment provides a cross-domain GPU affinity scheduling system, such as Figure 4 As shown, including:
[0128] Data acquisition module: configured to obtain GPU information in each resource pool and indicator data of the application to be processed;
[0129] Application classification module: configured to classify the application to be processed according to the indicator data of the application to be processed to obtain the category of the application to be processed;
[0130] Filtering module: configured to filter existing GPU resources based on the category of the application to be processed according to the historical matching information in the historical matching library, and screen out a list of GPU resources similar to the category of the application to be processed;
[0131] Affinity evaluation module: is configured to evaluate the affinity between the application and the GPU resources using multi-dimensional indicators for the obtained GPU resource list, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling.
[0132] Furthermore, it also includes a cost evaluation module: when the GPU resource with the highest score is insufficient, it is configured to calculate the cost of the GPU resources in the GPU resource list and select the GPU resource combination solution with the lowest cost for scheduling.
[0133] It should be noted here that the various modules in this embodiment correspond one-to-one to the various steps in Example 1, and the specific implementation process is the same, which will not be repeated here.
[0134] Example 3
[0135] Based on Example 1, this embodiment provides an electronic device, including a memory and a processor, and computer instructions stored in the memory and running on the processor. When the computer instructions are executed by the processor, the steps in a cross-domain GPU affinity scheduling method described in Example 1 are completed.
[0136] Example 4
[0137] Based on Example 1, this embodiment provides a computer-readable storage medium for storing computer instructions. When the computer instructions are executed by a processor, the steps in a cross-domain GPU affinity scheduling method of Example 1 are completed.
[0138] The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. For those skilled in the art, the present disclosure may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.
[0139] Although the above describes the specific implementation methods of the present disclosure in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present disclosure. Technical personnel in the relevant field should understand that on the basis of the technical solution of the present disclosure, various modifications or variations that can be made by those skilled in the art without creative work are still within the scope of protection of the present disclosure.
Claims
1. A cross-domain GPU affinity scheduling method, characterized in that: The steps include: Obtain GPU information in each resource pool and indicator data of the application to be processed; Classify the application to be processed according to its indicator data to obtain the category of the application to be processed; According to the historical matching information in the historical matching library, the existing GPU resources are filtered based on the category of the application to be processed, and a list of GPU resources similar to the category of the application to be processed is screened out; For the obtained GPU resource list, use multi-dimensional indicators to evaluate the affinity between the application and GPU resources, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling.
2. The cross-domain GPU affinity scheduling method according to claim 1, characterized in that: The training process of the classification prediction model includes the following steps: Obtain the indicator data of historical applications and the category labels corresponding to the applications; Preprocess the acquired data, convert the applied indicator data into indicator vectors, and convert the category labels into binary indicator vectors; A bidirectional gated cyclic prediction model is constructed as a classification prediction model. The index vector and label vector generated by preprocessing are used as input and input into the classification prediction model. The application category prediction vector is output and the gradient descent method is used for cyclic iterative training to obtain the trained classification prediction model.
3. A cross-domain GPU affinity scheduling method as claimed in claim 2, characterized in that: Each indicator data of the application is passed through the word embedding layer to generate an indicator vector with indicator information; The applied category label is converted into a binary label vector using one-hot encoding.
4. The cross-domain GPU affinity scheduling method according to claim 1, characterized in that: Use multi-dimensional indicators to evaluate the affinity between applications and GPU resources, including the following steps: Obtain multi-dimensional evaluation indicators, define the evaluation indicators as tuples, and perform normalization; According to the impact of the indicator on the overall score, the indicator is divided into positive indicators and negative indicators. According to the positive and negative characteristics of the indicator, the normalized value is adjusted so that the indicator values are all positive; Set weights and weight all evaluation indicators based on the weights to obtain the affinity score of each GPU resource; After calculating the affinity score of each GPU resource, the scores are sorted and the GPU resource with the highest score is selected for scheduling.
5. The cross-domain GPU affinity scheduling method according to claim 4, characterized in that: Weights are set, and all obtained evaluation indicators are weighted based on the weights, wherein the weights are set according to the degree of influence of the evaluation indicators on the execution efficiency of the application tasks.
6. The cross-domain GPU affinity scheduling method according to claim 1, characterized in that: The cost of the GPU resources selected based on affinity is calculated, and the GPU resource combination with the lowest cost is selected for scheduling.
7. The cross-domain GPU affinity scheduling method according to claim 6, characterized in that: Use multi-dimensional indicators to evaluate the cost of GPU, including the following steps: Define the multi-dimensional evaluation indicators as tuples, transform them, and then normalize them; Adjust the normalized value according to the positive and negative characteristics of the indicator; The adjusted indicator value is weighted according to the set indicator weight to obtain the cost of scheduling a single GPU; Calculate the cost of combining multiple GPUs, compare and select the scheduling scheme with the lowest cost as the GPU scheduling scheme.
8. A cross-domain GPU affinity scheduling system, characterized in that: include: Data acquisition module: configured to obtain GPU information in each resource pool and indicator data of the application to be processed; Application classification module: configured to classify the application to be processed according to the indicator data of the application to be processed to obtain the category of the application to be processed; Filtering module: configured to filter existing GPU resources based on the category of the application to be processed according to the historical matching information in the historical matching library, and screen out a list of GPU resources similar to the category of the application to be processed; Affinity evaluation module: is configured to evaluate the affinity between the application and the GPU resources using multi-dimensional indicators for the obtained GPU resource list, calculate and sort the affinity scores, and select the GPU resource with the highest score for scheduling.
9. A cross-domain GPU affinity scheduling system as claimed in claim 8, characterized in that: It also includes a cost evaluation module: when the GPU resources with the highest score are insufficient, it is configured to calculate the cost of the GPU resources in the GPU resource list and select the GPU resource combination solution with the lowest cost for scheduling.
10. An electronic device, characterized in that: The invention comprises a memory and a processor, and computer instructions stored in the memory and executed on the processor. When the computer instructions are executed by the processor, the steps in the cross-domain GPU affinity scheduling method described in any one of claims 1 to 7 are completed.
Citation Information
Cited By
Model training resource scheduling method applied to multiple data centers and related device
CN121029421A
Model training resource scheduling method applied to multiple data centers and related device
CN121029421B
Computation locality utilization based on an application instruction set
US12688108B2
Computation locality utilization based on an application instruction set
US20250103458A1