A method and system for unified scheduling of heterogeneous computing power based on global planning

Through global planning and intelligent monitoring technology, the problem of unified management difficulty and low resource utilization in heterogeneous computing power equipment management and scheduling is solved, efficient allocation of heterogeneous computing power resources and system stability are achieved, and operation and maintenance are reduced Cost and improve user experience.

CN118760507BActive Publication Date: 2025-01-14WHALE CLOUD TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411238002.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-05
Publication Date
2025-01-14
Estimated Expiration
2044-09-05

AI Technical Summary

Technical Problem

The existing technology has problems such as high difficulty in unified management, low resource utilization, uneven computing power allocation and system performance bottlenecks in the management and scheduling of heterogeneous computing power equipment, which leads to high resource waste and operation and maintenance costs, affecting user experience and System stability.

Method used

Using a unified scheduling method of heterogeneous computing power based on global planning, real-time monitoring and real-time monitoring of heterogeneous computing power resources is realized by acquiring device information, establishing a global computing power planning model, dynamic monitoring and optimizing resource allocation, combined with machine learning and deep learning algorithms, real-time monitoring of heterogeneous computing power resources and Rational allocation to ensure resource utilization and system stability.

Benefits of technology

It improves the utilization rate and productivity of heterogeneous computing power resources, reduces management difficulty and cost, ensures the smooth operation of computing power applications and efficient utilization of resources, and enhances the maintainability and scalability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118760507B_ABST
    Figure CN118760507B_ABST
Patent Text Reader

Abstract

The present invention proposes a method and system for unified scheduling of heterogeneous computing power based on global planning, including obtaining heterogeneous computing power equipment information; establishing a global computing power planning model; dynamically monitoring and identifying equipment status; application status tracking and resource scheduling; optimizing node and device selection; mounting device files and driver directories; multi-dimensional computing power usage monitoring; computing power usage rationality evaluation and exception handling. The present invention constructs an agile and rigorous heterogeneous computing power unified scheduling process through forward-looking and systematic global computing power planning design, realizes intelligent perception and precise scheduling of multiple heterogeneous computing powers, and provides multi-dimensional heterogeneous computing power resource monitoring capabilities, which effectively supports the accurate evaluation of the rationality of computing power usage, better meets the complex and changeable computing power application scenarios, and effectively drives the dual improvement of heterogeneous computing power utilization and productivity.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computing power management and intelligent scheduling, and in particular to a method and system for unified scheduling of heterogeneous computing power based on global planning. Background Art

[0002] With the continuous development of AIGC and digital intelligence, computing needs and computing power scale are increasing day by day. Traditional CPU computing power can no longer adapt to and meet most computing power application scenarios. At this time, major hardware manufacturers have launched various heterogeneous computing power devices, such as GPU, NPU, FPGA, etc., to meet the needs of users in different scenarios. Various heterogeneous computing power is gradually used in various scenarios such as training, fine-tuning, and reasoning of ordinary models and large models. According to different ways of using resources, computing power resources can be divided into two usage methods: resource isolation and resource sharing. Resource isolation includes whole card isolation and partial isolation, and resource sharing refers to whole card sharing.

[0003] In the prior art, the management and scheduling of heterogeneous computing devices face many challenges. First, there are many types of heterogeneous computing devices with different performance parameters, which makes it extremely complicated to manage and schedule them in a unified manner. Secondly, in a multi-tenant environment, differentiated computing power requirements need to ensure that each tenant can obtain the required computing power resources, while also ensuring the overall stability of the system and efficient use of resources. However, existing scheduling methods often cannot take into account the efficient use of different types of computing power equipment, resulting in low resource utilization and even waste of resources. In addition, the existing technology lacks flexibility and intelligent means when dealing with real-time changes in computing power requirements and resource allocation, which can easily lead to system performance bottlenecks and uneven computing power distribution.

[0004] The consequences of these problems are obvious. First, low resource utilization and waste directly increase computing costs and reduce the economic benefits of the system. Second, uneven distribution of computing power and system performance bottlenecks will lead to unstable operation of computing power applications, affect user experience, and may even cause the failure of key tasks. Finally, complex management and high management costs have brought tremendous pressure to operation and maintenance personnel, reducing the maintainability and scalability of the system.

[0005] Therefore, it is urgent to propose an effective unified scheduling method for heterogeneous computing power to solve the problems existing in the existing technology, improve the utilization and productivity of heterogeneous computing power resources, and ensure the smooth operation of various computing power applications. Summary of the invention

[0006] In order to overcome the shortcomings of the prior art, the present invention proposes a unified scheduling method and system for heterogeneous computing power based on global planning. By simply defining the global computing power planning, isolated resources, shared resources and computing power pools can be divided to build a logically rigorous unified scheduling process. In addition, the multi-dimensional heterogeneous computing power resource monitoring capability can achieve the coordinated, orderly and reasonable allocation of heterogeneous computing power, greatly improving the utilization and productivity of heterogeneous computing power resources.

[0007] To achieve the above object, the present invention provides a method for unified scheduling of heterogeneous computing power based on global planning, comprising:

[0008] Step 1: Obtain heterogeneous computing power device information, including device type, performance parameters, and current status;

[0009] Step 2: Establish a global computing power planning model, use the optimization algorithm to plan the computing power pool, and define the device list and its scheduling weight;

[0010] Step 3: Dynamically monitor and identify device status, label the hardware of cluster nodes through machine learning algorithms, and achieve real-time monitoring and discovery of heterogeneous computing resources;

[0011] Step 4: Application status tracking and resource scheduling, real-time acquisition and analysis of resource types, quantities, topology structures, and device selection ranges requested by applications;

[0012] Step 5: Optimize node and device selection, comprehensively consider factors such as node resource utilization, network latency, and energy efficiency, and select the optimal computing nodes and devices;

[0013] Step 6: Mount the device files and driver directories, and mount the files and driver directories of the selected device into the application container;

[0014] Step 7: Multi-dimensional computing power usage monitoring, using multi-dimensional monitoring tools to obtain real-time usage of nodes, containers, computing power devices, application processes, and other levels;

[0015] Step 8: Assess the rationality of computing power usage and handle exceptions. Use deep learning algorithms to assess the rationality of heterogeneous computing power resources, record and analyze abnormal data when an exception occurs, send prompt information, and develop a repair plan.

[0016] Further, step 1 comprises:

[0017] Obtaining isolated device and shared device information of multiple cluster nodes, wherein the device information includes device type, performance parameters, and current status;

[0018] Machine learning algorithms are used to label node hardware to identify different types of heterogeneous computing devices.

[0019] Step 2 includes:

[0020] Use optimization algorithms to plan the computing power pool;

[0021] Define the equipment list and its scheduling weights to ensure the reasonable allocation of resources;

[0022] Based on the global planning model and real-time collected equipment data, the resource sequence filling algorithm is applied to generate a detailed resource map, including information such as equipment quantity, type and capacity.

[0023] Further, step 3 includes:

[0024] Label the hardware of cluster nodes through machine learning algorithms;

[0025] Automatically deploy and update device awareness plug-ins to achieve real-time monitoring and discovery of heterogeneous computing resources;

[0026] Utilize the state cycle control mechanism to monitor the deployment status of computing power applications in real time.

[0027] Step 4 includes:

[0028] Obtain and analyze the resource type, quantity, topology, and device selection range requested by the application;

[0029] Update scheduling strategies in real time to ensure accurate matching of resource demand and allocation.

[0030] Further, step 5 comprises:

[0031] Based on multi-dimensional optimization strategy, comprehensive consideration is given to factors such as node resource utilization, network latency, and energy efficiency;

[0032] Filter out the best computing nodes and devices to ensure that the devices meet the resource and topology requirements of the application and optimize the overall system performance.

[0033] Step 6 includes:

[0034] Mount the files and driver directories of the selected device into the application container;

[0035] Ensure that applications can efficiently access and utilize heterogeneous computing resources.

[0036] Further, step 7 includes:

[0037] Use multi-dimensional monitoring tools to obtain and analyze the usage of nodes, containers, computing devices, application processes, and other levels in real time;

[0038] Dynamically adjust monitoring strategies to improve resource utilization efficiency and prevent resource waste.

[0039] Step 8 includes:

[0040] Use deep learning algorithms to evaluate the rationality of the use of heterogeneous computing resources and provide data support;

[0041] In case of abnormal use of computing resources, record and analyze abnormal data and send prompt information;

[0042] Use decision tree algorithm to analyze abnormal causes and develop repair plans;

[0043] Calculate and update the moving average of exception handling in real time to ensure the effectiveness of the repair plan.

[0044] A heterogeneous computing power unified scheduling system based on global planning, applicable to the heterogeneous computing power unified scheduling method based on global planning, including a global computing power planning module, a heterogeneous computing power intelligent perception module, a heterogeneous computing power unified scheduling module, a device use management module and a heterogeneous computing power multi-dimensional monitoring module;

[0045] Global computing power planning module: used to plan the global computing power of the entire cluster, including the default resource usage mode, the default maximum number of sharing times, the node isolation device list, the node sharing device list, the computing power pool device list, the computing power pool device weight, and supports the creation and update of plans;

[0046] Heterogeneous computing power intelligent perception module: used to timely perceive and discover heterogeneous computing power devices, and instantly synchronize computing power resources to the cluster management controller. The heterogeneous computing power devices that can be perceived include NVIDIA's full range of GPUs, Huawei Ascend series NPUs, Tianshu Zhixin series GPUs, etc.

[0047] Heterogeneous computing power unified scheduling module: used to discover and schedule computing power applications, including screening node devices according to the device selection range, screening available node devices according to computing power type and quantity, and selecting the best node device according to the optimization strategy;

[0048] Device usage management module: used to mount device files and driver directories to the application container to provide heterogeneous computing resources for applications;

[0049] Heterogeneous computing power multi-dimensional monitoring module: used to monitor the use of heterogeneous computing power at multiple levels such as nodes, containers, computing power equipment, and application processes, analyze whether the use of heterogeneous computing power is reasonable, and provide a reference for timely adjustment of overall planning and computing power application.

[0050] Furthermore, the global computing power planning module includes:

[0051] Plan the default resource usage mode and the default maximum number of shares;

[0052] Create and update node isolation device lists and node shared device lists;

[0053] Define the device list and device weight of the computing power pool;

[0054] Heterogeneous computing power intelligent perception modules include:

[0055] Sense and discover heterogeneous computing devices, and synchronize computing resources to the cluster management controller in real time.

[0056] Furthermore, the heterogeneous computing power unified scheduling module includes:

[0057] Filter node devices according to the device selection range;

[0058] Filter available node devices according to computing power type and quantity;

[0059] Select the best node device according to the optimization strategy.

[0060] Furthermore, the device use management module includes:

[0061] Mount device files and driver directories to the application container;

[0062] Provide heterogeneous computing resources for applications.

[0063] Furthermore, the heterogeneous computing power multi-dimensional monitoring module includes:

[0064] Monitor the usage of heterogeneous computing power at multiple levels, including nodes, containers, computing devices, and application processes;

[0065] Analyze the rationality of using heterogeneous computing power;

[0066] Provide a reference for adjusting global planning and computing power application.

[0067] Compared with the prior art, the present invention has the following beneficial effects:

[0068] 1. The present invention provides a unified scheduling method and system for heterogeneous computing power based on global planning. The global computing power planning model adopted is perfectly compatible with the resource differences of various heterogeneous computing powers, and can define resource categories and resource pools at a very low cost, greatly reducing the management difficulty and cost of heterogeneous computing power.

[0069] 2. The present invention provides a method and system for unified scheduling of heterogeneous computing power based on global planning. The resource sequence filling algorithm adopted can quickly grasp the overall picture of cluster resources, which is conducive to timely adjustment of planning configuration and scheduling strategy to optimize computing power allocation, thereby ensuring the overall stability of the system and the overall utilization of resources.

[0070] 3. The present invention provides a unified scheduling method and system for heterogeneous computing power based on global planning. The application status loop control mechanism adopted can accurately obtain the heterogeneous computing power requirements and constraint requirements of the application, track the application deployment status in real time, ensure that the current state of the application is consistent with the expected state, and ensure the smooth and normal operation of the computing power application.

[0071] 4. The present invention provides a method and system for unified scheduling of heterogeneous computing power based on global planning. The unified scheduling process of heterogeneous computing power adopted comprehensively considers multiple factors such as specified constraints, resource load balancing, dynamic adjustment strategies, task characteristics and node capability matching to ensure the rationality of the selection of heterogeneous computing power.

[0072] 5. The present invention provides a unified scheduling method and system for heterogeneous computing power based on global planning. The method for evaluating the rationality of computing power usage adopted by the present invention can accurately analyze and obtain important indicators such as resource utilization rate, computing power peaks and valleys, and computing power performance of heterogeneous computing power by monitoring the usage of heterogeneous computing power in multiple dimensions such as nodes, containers, computing power equipment, and application processes, evaluate the rationality of computing power usage, and provide a strong reference basis for computing power resource optimization, computing power application tuning, and equipment cost control. BRIEF DESCRIPTION OF THE DRAWINGS

[0073] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0074] Figure 1 A schematic diagram showing the steps of implementing the method for unified scheduling of heterogeneous computing power based on global planning in this embodiment;

[0075] Figure 2 A structural block diagram showing a heterogeneous computing power unified scheduling system based on global planning implemented in this embodiment;

[0076] Figure 3 A schematic diagram showing a resource sequence gap filling algorithm in a heterogeneous computing power unified scheduling method based on global planning implemented in this embodiment;

[0077] Figure 4 A schematic diagram showing an application state loop control mechanism in a method for unified scheduling of heterogeneous computing power based on global planning implemented in this embodiment;

[0078] Figure 5 A schematic diagram showing the unified scheduling process of heterogeneous computing power in the method for unified scheduling of heterogeneous computing power based on global planning implemented in this embodiment. DETAILED DESCRIPTION

[0079] The technical solution of the present invention will be more clearly and completely explained below through the description of the preferred embodiments of the present invention in combination with the accompanying drawings.

[0080] According to an embodiment of the present invention, a method and system for unified scheduling of heterogeneous computing power based on global planning are provided.

[0081] The present invention is further described with reference to the accompanying drawings and specific embodiments. Figure 1 As shown, according to an embodiment of the present invention, a method for unified scheduling of heterogeneous computing power based on global planning is provided, and the method includes the following steps:

[0082] Step S1: Design a global computing power planning model, define isolated devices and shared devices of cluster nodes, and define the device list and scheduling weight of the computing power pool;

[0083] Specifically, the design of a global computing power planning model, definition of isolated devices and shared devices of cluster nodes, and definition of a device list and scheduling weight of a computing power pool include the following steps:

[0084] Step S11: Design a global computing power planning model, including node device planning and resource pool planning;

[0085] Step S12: Plan node devices and define an isolated device list and a shared device list for each node;

[0086] Step S13: planning resource pools, defining node devices and device scheduling weights included in each resource pool;

[0087] As a specific implementation:

[0088] Query the computing power devices on each node in the cluster:

[0089] (1) For NVIDIA series computing devices, use the nvidia-smi command to query the computing device of the node.

[0090] (2) For Huawei Ascend series computing devices, use the npu-smi command to query the computing device of the node.

[0091] (3) For the Tianshu Zhixin series computing power devices, use the ixsmi command to query the computing power device of the node.

[0092] Define the isolated and shared devices for each node in the cluster:

[0093] (1) Based on the purpose and usage scenarios of computing power devices, the computing power devices on the nodes are divided into two categories: isolated resources and shared resources.

[0094] (2) For shared resources, you can also specify the number of times each shared device can be shared, or you can set a unified default maximum number of times. For example, if the serial number of the shared device on node A is [2,3] and the number of times it can be shared is [10,20], it means that the shared device with serial number 2 can be shared up to 10 times, and the shared device with serial number 3 can be shared up to 20 times.

[0095] Define a resource pool:

[0096] (1) Define the node devices of the computing power pool according to the purpose and usage scenarios of the computing power devices, especially for multi-tenant scenarios. For example, define the node devices of the computing power pool pool-x to include the device with serial number [2,3] on node A and the device with serial number [0,1] on node B.

[0097] (2) In addition, the scheduling weight of each device can be further defined. For example, if the scheduling weight of the device with sequence number [2,3] on node A is [0.5,0.8], then when both device number 2 and device number 3 can be scheduled, device number 3 with a larger weight will be selected first.

[0098] The above can realize the rapid planning of computing resources in the entire cluster, which is intuitive and clear.

[0099] Step S2: Accurately identify heterogeneous computing devices, automatically and differentially deploy device perception plug-ins, and realize instant discovery of heterogeneous computing resources;

[0100] Specifically, the accurate identification of heterogeneous computing devices, automatic and differentiated deployment of device perception plug-ins, and instant discovery of heterogeneous computing resources include the following steps:

[0101] Step S21: accurately identify the heterogeneous computing devices on the node and set a hardware type label for the node;

[0102] Step S22: Automatically and differentially deploy device awareness plug-ins according to tag information;

[0103] Step S23: The device perception plug-in can instantly discover the corresponding heterogeneous computing power type and quantity;

[0104] As a specific implementation:

[0105] Set node labels:

[0106] (1) For nodes with NVIDIA GPUs, set the tag nvidia-device=true.

[0107] (2) For nodes equipped with Huawei Ascend series NPUs, set the label ascend-device=true.

[0108] (3) For nodes equipped with the Tianshu Zhixin series GPU, set the label ix-device=true.

[0109] Deploy the device awareness plugin:

[0110] By matching node labels, the device awareness plug-in is deployed in daemonset mode. For example, when the node with the nvidia-device=true label is matched, the NVIDIA device awareness plug-in is deployed; when the node with the ascend-device=true label is matched, the Ascend device awareness plug-in is deployed; when the node with the ix-device=true label is matched, the Tianshu Zhixin device awareness plug-in is deployed.

[0111] Discovering heterogeneous computing power:

[0112] (1) NVIDIA device awareness plug-in, which can identify NVIDIA series GPUs and, combined with global computing power planning, distinguish and report the number of isolated resources of NVIDIA GPUs and the number of shared resources of NVIDIA GPUs.

[0113] (2) The Huawei Ascend device perception plug-in can identify the Huawei Ascend NPU and, based on the global computing power planning, differentiate and report the number of isolated resources of the Huawei Ascend NPU and the number of shared resources of the Huawei Ascend NPU.

[0114] (3) Tianshu Zhixin device perception plug-in can identify Tianshu Zhixin GPU and, combined with global computing power planning, differentiate and report the number of isolated resources of Tianshu Zhixin GPU and the number of shared resources of Tianshu Zhixin GPU.

[0115] Step S3: Based on the resource sequence gap filling algorithm, the resource types and data are clarified in sequence to grasp the overall picture of cluster resources;

[0116] Specifically, the resource sequence-based gap filling algorithm specifies resource types and data in order to grasp the overall picture of cluster resources. The algorithm flow chart is as follows: Figure 3 As shown, the following steps are included:

[0117] According to the global computing power planning and actual resource discovery, based on the resource sequence filling algorithm, the number of heterogeneous devices in each node, the serial number of each device, the resource type and resource size are derived.

[0118] Step S4: According to the application state loop control mechanism, the computing power application deployment is tracked in real time to obtain the resource type, resource quantity, computing power topology, and equipment selection range requested by the application;

[0119] Specifically, the application state cycle control mechanism is used to track computing power application deployment in real time, obtain the resource type, resource quantity, computing power topology, and device selection range requested by the application, such as Figure 4 As shown, the following steps are included:

[0120] Step S41: According to the application status loop control mechanism, computing power applications with scheduling requirements are obtained in real time;

[0121] Step S42: Obtain heterogeneous computing power requirements such as resource type, resource quantity, computing power topology, and device selection range requested by the application, where the device selection range includes resource pool, node, and device;

[0122] As a specific implementation:

[0123] Get computing power applications with scheduling requirements:

[0124] Through the ListAndWatch mechanism of kube-controller, computing applications with scheduling requirements can be obtained in real time, and wait for scheduling in a first-deploy, first-scheduled queue.

[0125] Get the computing resource request of the application:

[0126] (1) Use client-go to query the resources.limits of the scheduled application to obtain the resource type and resource quantity requirements.

[0127] (2) Use client-go to query the annotations of the called application to obtain the device selection range and computing power topology requirements.

[0128] Step S5: According to the unified scheduling process of heterogeneous computing power, the best node device is selected based on the optimization strategy;

[0129] Specifically, the unified scheduling process of heterogeneous computing power is used to select the best node device based on the optimization strategy, such as Figure 5 As shown, the following steps are included:

[0130] Step S51: Filter resource pools, nodes, and devices according to the device selection range required by the application;

[0131] Step S52: Obtain the type and quantity of heterogeneous computing resources possessed by each node one by one;

[0132] Step S53: Determine whether the node meets the resource type and quantity requirements of the application;

[0133] Step S54: determining whether the node device meets the topology requirements of the application;

[0134] Step S55: Select the best node device based on the optimization strategy;

[0135] As a specific implementation, the node device is preferably:

[0136] (1) Refer to the scheduling weight of the node device and select the device with a larger weight value to be scheduled first.

[0137] (2) For shared resources, refer to the number of times the device is shared, and the device with the largest number of remaining shares is selected for priority scheduling.

[0138] Step S6: Mount the device files and driver directory to the application container to provide heterogeneous computing resources for the application;

[0139] Specifically, mounting the device file and the driver directory to the application container to provide heterogeneous computing resources for the application includes the following steps:

[0140] Mount device files and driver directories to the application container to provide heterogeneous computing resources for the application;

[0141] Step S7: Use a multi-dimensional computing power monitoring tool to obtain heterogeneous computing power usage at multiple levels such as nodes, containers, computing power devices, and application processes;

[0142] Specifically, the use of a multi-dimensional computing power monitoring tool to obtain heterogeneous computing power usage at multiple levels such as nodes, containers, computing power devices, and application processes includes the following steps:

[0143] Monitor the usage of heterogeneous computing power in dimensions such as nodes, containers, computing devices, and application processes;

[0144] As a specific implementation:

[0145] (1) Monitor the usage of heterogeneous computing power of each node, including idle computing power devices, computing power devices in use, the utilization rate of each computing power device, and usage peaks and valleys;

[0146] (2) Monitor the usage of heterogeneous computing power of each container, including the computing power application value, actual usage, usage percentage, and usage peaks and valleys;

[0147] (3) Monitor the usage of each computing device, including the total computing power of the entire card and the actual computing power used;

[0148] (4) Monitor the heterogeneous computing power usage of application processes, including the actual computing power used by application processes over time;

[0149] Step S8: adopt a computing power utilization rationality assessment method to analyze whether the heterogeneous computing power utilization is reasonable, and provide a reference basis for timely adjustment of the overall planning and computing power application;

[0150] Specifically, the method for evaluating the rationality of computing power usage is used to analyze whether the use of heterogeneous computing power is reasonable, and to provide a reference for timely adjustment of the overall planning and computing power application, including the following steps:

[0151] Step S81: using a computing power utilization rationality evaluation method to analyze whether the use of heterogeneous computing power is reasonable;

[0152] Step S82: Provide guidance and suggestions based on the analysis results to provide a reference for timely adjustment of global planning and computing power application.

[0153] As a specific implementation method, the rationality of computing power usage is evaluated as follows:

[0154] (1) A higher computing power utilization rate indicates that computing power resources are fully utilized. In this case, computing power utilization is more reasonable; otherwise, computing power utilization is unreasonable.

[0155] (2) Long-term stable peak-to-valley values ​​indicate stable computing power performance. In this case, computing power usage is more reasonable. Otherwise, computing power usage is unreasonable.

[0156] (3) A higher computing power task completion rate indicates that the computing power performance meets user needs. In this case, the computing power usage is more reasonable; otherwise, the computing power usage is unreasonable.

[0157] In order to better understand the above technical solution of the present invention, the following specific embodiments of the present invention are described in detail with examples:

[0158] A method for unified scheduling of heterogeneous computing power based on global planning includes the following steps:

[0159] Step 1: Check the nodes and computing devices of the entire cluster, and use the global computing power planning model to plan computing power according to the purpose and usage scenarios of computing power.

[0160] View the cluster's node list, as shown in Table 1 below:

[0161] Table 1

[0162]

[0163] Check the node's computing power equipment, as shown in Table 2 below:

[0164] Table 2

[0165]

[0166] Complete the node device planning and computing power pool planning in JSON data format, as shown below:

[0167] {

[0168] "defaultCardMode": "isolate", # Default resource usage mode

[0169] "cardConfig": {

[0170] "node01": { # Node name

[0171] "share": "1", # Node shared device list

[0172] "share_max_count": "10" # Maximum number of times a shared device can be shared

[0173] },

[0174] "node02": {

[0175] "share": "0,1",

[0176] "share_max_count": "5,8"

[0177] }

[0178] },

[0179] "poolConfig": {

[0180] "pool-A": {

[0181] "node01": {

[0182] "cardId": "0", # Device serial number list

[0183] "weight": "0.5" # Device weight list

[0184] },

[0185] "node02": {

[0186] "cardId": "0,1",

[0187] "weight": "0.5,0.5"

[0188] }

[0189] }

[0190] }

[0191] According to the plan:

[0192] (1) The default usage of computing power equipment is isolation.

[0193] (2) The node devices are planned as follows: the device with serial number 1 on node Node01 is a shared device and can be shared up to 10 times; the devices with serial numbers 0 and 1 on node Node02 are shared devices and can be shared up to 5 and 8 times respectively.

[0194] (3) A computing power pool named pool-A is planned, which includes device number 0 of node01, device number 0 of node02, and device number 1.

[0195] (4) All computing equipment not explicitly stated in the plan is isolated equipment.

[0196] Step 2: Set the same node label for node01 and node02. The commands are kubectl label nodesnode01 nvidia-device=true and kubectl label nodes node02 nvidia-device=true. Set a node label for node03. The command is kubectl label nodes node03 ascend-device=true. Set a node label for node04. The command is kubectl label nodes node04 ix-device=true.

[0197] Automatically deploy device awareness plug-ins to accurately identify isolated resources and shared resources of heterogeneous devices and report node resources, as shown in Table 3 below:

[0198] Table 3

[0199]

[0200] Step 3: Based on the resource sequence gap filling algorithm, the overall picture of the computing power resources of node01, node02, node03, and node04 is clarified, as shown in Table 4 below:

[0201] Table 4

[0202]

[0203] Step 4: Deploy the computing power application of the deployment resource, with 2 replicas. Each replica requires 1 NVIDIA shared GPU, and the device selection range is specified as computing pool pool-A.

[0204] Step 5: According to the unified scheduling process of heterogeneous computing power, select the best node device based on the optimization strategy.

[0205] (1) Since the computing pool pool-A is specified, the device range is: device number 0 of node01, device number 0 of node02, and device number 1.

[0206] (2) Since the NVIDIA shared GPU is specified and the device number 0 of the node01 is an isolated device, the device range is: the device number 0 and the device number 1 of the node02.

[0207] (3) Consider the scheduling weight of the device: The scheduling weights of device number 0 and device number 1 of node02 are both 0.5, so the scheduling weight does not affect the scheduling result.

[0208] (4) Consider the remaining number of times the device can be shared: the remaining number of times the device with serial number 0 can be shared is 5, and the remaining number of times the device with serial number 1 can be shared is 8, so the device with serial number 1 is selected as the preferred result.

[0209] Step 6: Automatically mount the device file / dev / nvidia1 corresponding to device number 1 into the container, and mount the GPU driver directory / usr / local / nvidia into the container to provide heterogeneous computing resources for the application.

[0210] Step 7: Use multi-dimensional computing power monitoring tools to obtain heterogeneous computing power usage at multiple levels, such as nodes, containers, computing power devices, and application processes.

[0211] (1) Run the tower-monitor command on node 02 to query the computing power usage on node 02. It can be seen that there are four NVIDIA GPU cards with serial numbers 0 to 3, and two processes are using the computing power of GPU number 1 and the specific computing power usage.

[0212] (2) Execute the tower-monitor command in the container of the computing power application to query the computing power usage of the container dimension. It can be found that: the container is mounted with an NVIDIA GPU card, and there is a container process using the GPU computing power and the specific computing power usage.

[0213] Step 8: Use the computing power utilization rationality assessment method to analyze whether the use of heterogeneous computing power is reasonable, and provide a reference basis for timely adjustment of overall planning and computing power application.

[0214] Analyzing the overall distribution of computing power applications, the computing power applications of the two copies are both scheduled to use the serial number 1 device of the node01 node. Considering the load balancing and high availability of the application, it is recommended to deploy them in a dispersed manner using different node devices.

[0215] From the computing power monitoring at the container level, it can be seen that the computing power utilization rate is always maintained at a high level until the computing power task is completed normally, so the computing power is used reasonably.

[0216] According to another embodiment of the present invention, Figure 2As shown, a method for unified scheduling of heterogeneous computing power based on global planning is provided, and the system includes: a global computing power planning module, a heterogeneous computing power intelligent perception module, a heterogeneous computing power unified scheduling module, a device usage management module, and a heterogeneous computing power multi-dimensional monitoring module;

[0217] The global computing power planning module is used to plan the global computing power of the entire cluster, including the default resource usage mode, the default maximum number of sharing times, the node isolation device list, the node sharing device list, the computing power pool device list, and the computing power pool device weight, and supports the creation and update of the plan;

[0218] The heterogeneous computing power intelligent perception module is used to timely perceive and discover heterogeneous computing power devices, and synchronize computing power resources to the cluster management controller in real time. The heterogeneous computing power devices that can be perceived include NVIDIA's full range of GPUs, Huawei Ascend series NPUs, Tianshu Zhixin series GPUs, etc.

[0219] The heterogeneous computing power unified scheduling module is used to discover and schedule computing power applications, including screening node devices according to the device selection range, screening available node devices according to computing power type and quantity, and selecting the best node device according to the optimization strategy;

[0220] The device usage management module is used to mount device files and driver directories to the application container to provide heterogeneous computing resources for the application;

[0221] The heterogeneous computing power multi-dimensional monitoring module is used to monitor the use of heterogeneous computing power at multiple levels such as nodes, containers, computing power equipment, and application processes, analyze whether the use of heterogeneous computing power is reasonable, and provide a reference basis for timely adjustment of overall planning and computing power application.

[0222] In summary, with the help of the above technical solutions of the present invention, the global computing power planning model adopted by the present invention is perfectly compatible with the resource differences of various heterogeneous computing powers, and can define resource categories and resource pools at a very low cost, greatly reducing the management difficulty and management cost of heterogeneous computing power; the resource sequence filling algorithm adopted by the present invention can quickly grasp the overall picture of cluster resources, which is conducive to timely adjustment of planning configuration and scheduling strategy to optimize computing power allocation, thereby ensuring the overall stability of the system and the overall utilization of resources; the application state cycle control mechanism adopted by the present invention can accurately obtain the heterogeneous computing power requirements and constraint requirements of the application, track the application deployment status in real time, and ensure that the current state of the application is consistent with the application. The expected state remains consistent to ensure the smooth and normal operation of computing power applications; the unified scheduling process of heterogeneous computing power adopted by the present invention comprehensively considers multiple factors such as specified constraints, resource load balancing, dynamic adjustment strategies, task characteristics and node capability matching to ensure the rationality of the selection of heterogeneous computing power; the computing power utilization rationality evaluation method adopted by the present invention can accurately analyze the resource utilization rate, computing power peaks and valleys, computing power performance and other important indicators of heterogeneous computing power by monitoring the heterogeneous computing power utilization in multiple dimensions such as nodes, containers, computing power equipment, and application processes, evaluate the rationality of computing power utilization, and provide a strong reference basis for computing power resource optimization, computing power application tuning, and equipment cost control.

[0223] The above specific implementations are only descriptions of the preferred implementations of the present invention, and do not limit the protection scope of the present invention. Without departing from the design concept and spirit of the present invention, various modifications, substitutions and improvements made by ordinary technicians in this field to the technical solution of the present invention based on the text description and drawings provided by the present invention should all fall within the protection scope of the present invention. The protection scope of the present invention is determined by the claims.

Claims

1. A method for unified scheduling of heterogeneous computing power based on global planning, characterized in that: include: Step 1: Obtain heterogeneous computing power device information, which includes device type, performance parameters, and current status; the details are as follows: Obtaining isolated device and shared device information of multiple cluster nodes, wherein the device information includes device type, performance parameters, and current status; Use machine learning algorithms to label node hardware to identify different types of heterogeneous computing devices; Step 2: Establish a global computing power planning model, use the optimization algorithm to plan the computing power pool, and define the device list and its scheduling weights as follows: Use optimization algorithms to plan the computing power pool; Define the equipment list and its scheduling weights to ensure the reasonable allocation of resources; Based on the global planning model and real-time collected equipment data, the resource sequence gap filling algorithm is applied to generate a detailed resource map, including equipment quantity, type and capacity information; Step 3: Dynamically monitor and identify device status, label the hardware of cluster nodes through machine learning algorithms, and realize real-time monitoring and discovery of heterogeneous computing resources; the details are as follows: Label the hardware of cluster nodes through machine learning algorithms; Automatically deploy and update device awareness plug-ins to achieve real-time monitoring and discovery of heterogeneous computing resources; Use the state cycle control mechanism to monitor the deployment status of computing power applications in real time; Step 4: Application status tracking and resource scheduling, real-time acquisition and analysis of the resource type, quantity, topology, and device selection range requested by the application; specifically including: Obtain and analyze the resource type, quantity, topology, and device selection range requested by the application; Update scheduling strategies in real time to ensure accurate matching of resource demand and allocation; Step 5: Optimize node and device selection, comprehensively consider node resource utilization, network latency, and energy efficiency factors, and select the best computing nodes and devices; including: Based on multi-dimensional optimization strategy, comprehensive consideration is given to node resource utilization, network latency and energy efficiency factors; Filter out the best computing nodes and devices to ensure that the devices meet the resource and topology requirements of the application and optimize the overall system performance; Step 6: Mount the device files and driver directories to mount the files and driver directories of the selected device into the application container; including: Mount the files and driver directories of the selected device into the application container; Ensure that applications can efficiently access and utilize heterogeneous computing resources; Step 7: Multi-dimensional computing power usage monitoring, using multi-dimensional monitoring tools to obtain the usage of nodes, containers, computing power devices and application processes in real time; Step 8: Assess the rationality of computing power usage and handle exceptions. Use deep learning algorithms to assess the rationality of heterogeneous computing power resources, record and analyze abnormal data when an exception occurs, send prompt information, and develop a repair plan.

2. According to claim 1, a method for unified scheduling of heterogeneous computing power based on global planning is characterized in that: Step 7 includes: Use multi-dimensional monitoring tools to obtain and analyze the usage of nodes, containers, computing devices, and application processes in real time; Dynamically adjust monitoring strategies to improve resource utilization efficiency and prevent resource waste; Step 8 includes: Use deep learning algorithms to evaluate the rationality of the use of heterogeneous computing resources and provide data support; In case of abnormal use of computing resources, record and analyze abnormal data and send prompt information; Use decision tree algorithm to analyze abnormal causes and develop repair plans; Calculate and update the moving average of exception handling in real time to ensure the effectiveness of the repair plan.

3. A system for unified scheduling of heterogeneous computing power based on global planning, applicable to a method for unified scheduling of heterogeneous computing power based on global planning as described in any one of claims 1-2, characterized in that: It includes global computing power planning module, heterogeneous computing power intelligent perception module, heterogeneous computing power unified scheduling module, equipment usage management module and heterogeneous computing power multi-dimensional monitoring module; Global computing power planning module: used to plan the global computing power of the entire cluster, including the default resource usage mode, the default maximum number of sharing times, the node isolation device list, the node sharing device list, the computing power pool device list, the computing power pool device weight, and supports the creation and update of plans; Heterogeneous computing power intelligent perception module: used to timely perceive and discover heterogeneous computing power devices, and synchronize computing power resources to the cluster management controller in real time; Heterogeneous computing power unified scheduling module: used to discover and schedule computing power applications, including screening node devices according to the device selection range, screening available node devices according to computing power type and quantity, and selecting node devices according to strategies; Device usage management module: used to mount device files and driver directories to the application container to provide heterogeneous computing resources for applications; Heterogeneous computing power multi-dimensional monitoring module: used to monitor the use of heterogeneous computing power of nodes, containers, computing power equipment, and application processes, analyze whether the use of heterogeneous computing power is reasonable, and provide a reference for timely adjustment of overall planning and computing power application.

4. The heterogeneous computing power unified scheduling system based on global planning according to claim 3 is characterized in that: The global computing power planning module includes: Plan the default resource usage mode and the default maximum number of shares; Create and update node isolation device lists and node shared device lists; Define the device list and device weight of the computing power pool; Heterogeneous computing power intelligent perception modules include: Sense and discover heterogeneous computing devices, and synchronize computing resources to the cluster management controller in real time.

5. The heterogeneous computing power unified scheduling system based on global planning according to claim 3 is characterized in that: The unified scheduling module for heterogeneous computing power includes: Filter node devices according to the device selection range; Filter available node devices according to computing power type and quantity; Select node devices based on the strategy.

6. The heterogeneous computing power unified scheduling system based on global planning according to claim 3 is characterized in that: The equipment usage management module includes: Mount device files and driver directories to the application container to provide heterogeneous computing resources for the application.

7. The heterogeneous computing power unified scheduling system based on global planning according to claim 3 is characterized in that: The heterogeneous computing power multi-dimensional monitoring module includes: Monitor heterogeneous computing usage at the node, container, computing device, and application process levels; Analyze the rationality of using heterogeneous computing power; Provide a reference for adjusting global planning and computing power application.

Citation Information

Patent Citations

  • Heterogeneous computing power resource management method and device

    CN115951969A

  • Heterogeneous computing power cross-cloud application arrangement method based on karmada

    CN116700962A