A computing power resource quantification method and system
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-01
- Publication Date
- 2026-08-11
AI Technical Summary
[0005]针对现有技术的以上缺陷或改进需求,本发明解决了算力网络的算力调度和度量时没有归一化量化算法和实施方法的问题
[0017] Compared with existing technologies, the beneficial effects of this invention are as follows: It provides a method for quantifying computing resources. By measuring and calculating static and dynamic quantification indicators in computing nodes, static and dynamic metric values of the computing nodes are obtained, thereby quantifying and evaluating the computing resources of the computing cluster. This allows for the scheduling of computing tasks based on the static and dynamic metric values. This method can accurately and significantly reflect the load status of the computing nodes and the degree of network port congestion in the computing cluster through quantified values, providing a quantitative basis for the scheduling of computing power in the computing cluster.
Smart Images

Figure CN117176617B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computing power networks, and in particular to a method and system for quantifying computing power resources. Background Technology
[0002] Computing power networks are a product of cloud-network convergence technology. Enabling flexible and free trading of computing power through networks raises the issue of computing power scheduling and measurement. Computing power scheduling between and within data centers varies due to differences in topology, distance, and equipment, requiring consideration of multiple factors such as network, services, and computing power nodes. However, within the same data center, the similar topology of computing power nodes, homogeneous equipment, short transmission paths, and unified hierarchical structure result in consistency in bandwidth, speed, latency, packet loss, and jitter. By dividing computing power clusters with similar characteristics, the influencing factors of computing power scheduling can be simplified, enabling the quantification of these factors and the acquisition of a single metric value through appropriate algorithms. With a comprehensive metric value for single scheduling, a quantitative basis for computing power scheduling is established, reducing the amount of data transmission of computing resources and simplifying processing procedures and computational complexity.
[0003] The engineering implementation of computing power networks faces two key technical challenges: computing power scheduling and computing power metrics. Currently, the industry has made strides in computing power routing, scheduling, and metrics, but these efforts remain largely at the methodological level. Specific, normalized algorithms and technical engineering implementations for computing power scheduling and metrics are still lacking, especially regarding specific technical methods for assessing computing load and addressing port congestion in data centers. Therefore, current industry research has not made significant progress in computing power scheduling and metrics, hindering the overall advancement of computing power networks.
[0004] Therefore, how to overcome the shortcomings of existing technologies and solve the problem of the lack of normalization algorithms when scheduling and measuring computing power in computing power networks is a problem to be solved in this technical field. Summary of the Invention
[0005] In view of the above-mentioned defects or improvement needs of existing technologies, this invention solves the problem that there is no normalized quantization algorithm and implementation method when scheduling and measuring computing power in computing power networks.
[0006] The embodiments of the present invention adopt the following technical solutions:
[0007] In a first aspect, the present invention provides a method for quantifying computing resources, specifically: each computing power cluster managed by a computing power gateway is considered as a computing power domain, and each computing power domain contains one or more computing power nodes; before loading any jobs, static quantification index tests are performed on each computing power node in the computing power domain to obtain the static metric values of each computing power node in the computing power domain; after loading distributed jobs, dynamic quantification index calculations are performed on each computing power node in the computing power domain to obtain the dynamic metric values of each computing power node in the computing power domain, so as to facilitate computing power scheduling within the same computing power domain based on the quantification results of the static and dynamic metric values of all computing power nodes.
[0008] Preferably, the step of treating each computing power cluster managed by a computing power gateway as a computing power domain specifically includes: collecting the static latency index from each computing power node to the computing power gateway according to the network topology, and computing power nodes with static latency indices less than the latency threshold are located in the computing power domain of the computing power gateway.
[0009] Preferably, the step of performing static quantitative index testing on each computing node in the computing power domain to obtain the static metric value of each computing node in the computing power domain specifically includes: performing benchmark testing on the computing nodes, collecting the computing power index of each computing node before loading services based on the test results, and collecting the network index of the network port of the computing nodes.
[0010] Preferably, the step of collecting the computing power indicators of each computing power node before loading services based on the test results specifically includes: obtaining the integer computing power and floating-point computing power of the computing power node based on the benchmark test results, and calculating the computing power indicator of each computing power node based on the synchronous linear proportional relationship between the integer computing power and floating-point computing power.
[0011] Preferably, the step of performing dynamic quantification index calculation on each computing node in the computing power domain to obtain the dynamic metric value of each computing node in the computing power domain specifically includes: calculating the network congestion metric value and load metric value of the computing node in the same computing power domain, normalizing the collected variables, and calculating the dynamic metric value of a single computing node during scheduling based on the normalized variables.
[0012] Preferably, the network congestion metric and load metric of the computing power node are calculated. The network congestion variable specifically includes: the network port of the computing power node collects data from the corresponding register of the priority flow control mechanism to obtain a first variable factor, which is used as a metric factor under the priority flow control mechanism; the network port of the computing power node collects data from the corresponding register of the quantization congestion control mechanism to obtain a second variable factor, which is used as a metric factor under the quantization congestion control mechanism; and the network congestion metric is constructed based on the first variable factor and the second variable factor.
[0013] Preferably, the network congestion metric and load metric of the computing power node, the computing load metric specifically includes: calculating the computing load metric of the computing power node based on the CPU utilization and memory availability of the computing power node, with full computing load as the incentive target, wherein the computing load metric converges to 0 when no memory is available.
[0014] Preferably, the step of scheduling computing power based on the quantization results of the static and dynamic metrics of all computing power nodes specifically includes: when the dynamic metrics of computing power nodes are different, scheduling computing power based on the dynamic metrics; when the dynamic metrics of two or more computing power nodes are consistent, sorting the scheduling priority of computing power nodes based on the static metrics.
[0015] Preferably, the method of scheduling computing power based on dynamic metrics includes: in a power consumption priority scenario, scheduling computing power nodes corresponding to dynamic metrics with larger load metrics first; in a performance priority scenario, scheduling computing power nodes corresponding to dynamic metrics with smaller load metrics first.
[0016] On the other hand, the present invention provides a computing power resource quantification system, specifically comprising a computing power quantification device and at least one computing power node. The computing power quantification device includes at least one processor and a memory, which are connected via a data bus. The memory stores instructions that can be executed by at least one processor. After being executed by the processor, the instructions are used to quantify the computing power resources of the computing power node according to the computing power resource quantification method in the first aspect.
[0017] Compared with existing technologies, the beneficial effects of this invention are as follows: It provides a method for quantifying computing resources. By measuring and calculating static and dynamic quantification indicators in computing nodes, static and dynamic metric values of the computing nodes are obtained, thereby quantifying and evaluating the computing resources of the computing cluster. This allows for the scheduling of computing tasks based on the static and dynamic metric values. This method can accurately and significantly reflect the load status of the computing nodes and the degree of network port congestion in the computing cluster through quantified values, providing a quantitative basis for the scheduling of computing power in the computing cluster. Attached Figure Description
[0018] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments of the present invention will be briefly described below. Obviously, the drawings described below are merely some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without any creative effort.
[0019] Figure 1 A flowchart of a general computing power scheduling method for a computing power cluster is provided in an embodiment of the present invention;
[0020] Figure 2 This is a schematic diagram of the computing network architecture used in an embodiment of the present invention;
[0021] Figure 3 A flowchart of another method for general computing power scheduling of computing power clusters provided in an embodiment of the present invention;
[0022] Figure 4 This is a schematic diagram of the computational force coordinate system used in the embodiments of the present invention;
[0023] Figure 5 This is a schematic diagram of the structure of a computing power quantification device in a computing power resource quantification system provided in an embodiment of the present invention;
[0024] Figure 6 This is a schematic diagram of the functional modules in the computing power system provided in an embodiment of the present invention;
[0025] Figure 7 A flowchart illustrating the preparatory stage of a computing power scheduling system for computing power resource quantification, provided as an embodiment of the present invention;
[0026] Figure 8 This is a flowchart illustrating the execution phase of a computing power scheduling system for computing power resource quantification, as provided in an embodiment of the present invention. Detailed Implementation
[0027] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0028] This invention is an architecture of a specific functional system. Therefore, the specific embodiments mainly describe the functional logic relationship of each structural module, and do not limit the specific software and hardware implementation methods.
[0029] Furthermore, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other. The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0030] Example 1:
[0031] Data centers are the computing infrastructure of computing networks. This embodiment focuses on the distributed computing operation scenario in data centers, and studies the influencing factors and quantification of computing power scheduling of computing nodes. In this embodiment, for the data center application scenario, computing nodes refer to various server nodes that can provide computing power services in large / medium / small data centers, intelligent computing centers, and edge data centers, as well as other physical or virtual devices that can provide computing power services.
[0032] For computing power scheduling, the general computing power metrics of the computing nodes participating in the scheduling can be divided into two categories: static metrics and dynamic metrics. Static metrics mainly include CPU model, number of CPUs, instruction set, base frequency configuration, turbo frequency configuration, number of enabled kernels, number of enabled threads, memory capacity, memory bandwidth, floating-point computing power, integer computing power, port bandwidth, port latency, network packet loss rate, jitter, node physical location, etc. Static metrics can be used to determine the initial reference parameters for computing power scheduling. Dynamic metrics mainly include port congestion level, CPU utilization, memory utilization, etc. In the method provided in this embodiment, computing power scheduling can utilize dynamic metrics to evaluate the real-time changing scheduling evaluation quantization factors and normalized single metric calculations during distributed computing power operations.
[0033] like Figure 1 As shown, the specific steps of the computing power resource quantification method provided in this embodiment of the invention are as follows:
[0034] Step 101: Treat each computing power cluster managed by a computing power gateway as a computing power domain, and each computing power domain contains one or more computing power nodes.
[0035] like Figure 2 In the physical architecture of the computing power network shown, the computing power gateway serves as the access point for computing power resources in the bearer network. The computing power gateway device is one of the core network elements of the computing power network. Working in conjunction with the computing power network transaction and management platform, it realizes core functions such as information exchange and distribution of computing power resources, reporting and trading, and the establishment of network connections between resource pools and users. In this embodiment, the computing power cluster managed by the computing power gateway is positioned as a computing power domain. A computing power domain may consist of several adjacent data centers, a single data center, or a single server room, etc. The computing power gateway is the main functional unit responsible for scheduling computing power within the managed computing power domain.
[0036] In practice, static latency metrics from each computing node to the computing gateway can be collected based on the network topology. Computing nodes with static latency metrics less than the latency threshold are located within the computing domain of that computing gateway. For example, network visualization technology can be used to collect the static round-trip time (RTT) metric from a computing node to the computing gateway to determine the network relationship between the computing node and the computing gateway. In a certain scenario, with a latency threshold of 5ms, if the RTT between a computing node and the computing gateway is <= 5ms, the computing node and the computing gateway can be considered to be located within the same computing domain. If a computing node is located within the computing domain of the computing gateway in terms of network topology, but its RTT value is greater than the experimental threshold, it may be necessary to check the link, node health, or node physical layout to rule out network connection or configuration issues.
[0037] Step 102: Before loading any jobs, perform static quantification index tests on each computing node in the computing power domain to obtain the static metric values of each computing node in this computing power domain.
[0038] For each computing node, before any jobs are loaded, performance metrics such as floating-point computing power, integer computing power, and bandwidth of external service network ports can be measured through benchmark tests. In this embodiment, these performance metrics are defined as static quantification metrics of the computing node. When quantifying computing power, it is necessary to first conduct benchmark tests on the computing nodes to collect the integer and floating-point computing power values of each node before any services are loaded, and then collect network metrics such as port bandwidth of the computing nodes through network visualization techniques.
[0039] Step 103: After loading the distributed job, perform dynamic quantification index calculation on each computing node in the computing power domain to obtain the dynamic metric value of each computing node in this computing power domain, so as to schedule computing power based on the quantification results of the static and dynamic metric values of all computing nodes in the same computing power domain.
[0040] For each computing node, after loading the distributed job, data is collected and calculated using technical means to provide dynamic indicators such as port congestion, CPU utilization, and memory utilization. Based on these dynamic indicators, normalization and appropriate algorithm derivation are performed to obtain a unique metric that can dynamically guide computing power scheduling. In this embodiment, these performance indicators are defined as dynamic quantitative indicators for computing nodes.
[0041] In practice, three dynamic indicators—port congestion, CPU utilization, and memory utilization—of each computing node in the same computing power domain can be collected and normalized. Then, using the algorithm provided in this embodiment, a dynamic metric for single computing power scheduling can be calculated, and computing power scheduling within the computing power domain can be performed based on this dynamic metric.
[0042] Within the same computing power domain, computing power scheduling is based on the dynamic metrics and static quantization indicators of computing power nodes, with dynamic metrics having higher priority than static quantization indicators. In practice, computing power scheduling can be initially based on dynamic metrics. Only when the dynamic metrics of two or more computing power nodes are consistent and cannot be used as the basis for computing power scheduling, should static quantization indicators be used to prioritize computing power scheduling.
[0043] After steps 101-103 provided in this embodiment, the quantization of static and dynamic metric values of computing power nodes can be completed, and computing power scheduling can be completed based on the quantization results.
[0044] In the implementation of the above process, statistical calculations or normalization calculations can be performed on the various indicators obtained as needed to obtain quantitative indicators for computing power scheduling. The following provides some available quantization algorithms. It should be understood that the following quantization methods are merely specific examples of the methods provided in this embodiment and do not limit the scope of protection.
[0045] like Figure 3 As shown, the static quantization index test of the computing node in step 102 can be completed in the following way to obtain the static metric value.
[0046] Step 201: Perform benchmark tests on the computing nodes.
[0047] Benchmark testing allows us to obtain the basic configuration of computing nodes and evaluate static computing performance metrics. In practice, static quantitative metrics can be obtained based on the device's hardware parameters, but this method is cumbersome when there are many computing nodes and the network environment is complex, and the obtained metrics may not be accurate. Therefore, standardized benchmark testing tools can be used for actual testing to provide an evaluation value for the computing node. Taking the benchmark testing tool SPEC CPU@2017 as an example, its benchmark package contains 43 benchmarks, and the following two packages are available.
[0048] (1) SPECspeed@2017Integer: The test benchmark and quantity is 10 integer benchmarks; the metrics are SPECspeed@2017_int_base and SPECspeed@2017_int_peak.
[0049] (2) SPECspeed@2017Floating Point: The test benchmark and quantity is 10 floating point benchmarks; the metrics are SPECspeed@2017_fp_base and SPECspeed@2017_fp_peak.
[0050] SPECspeed tests integer and floating-point calculations from a completion time perspective; the SPECspeed suite always runs a copy of each benchmark, and a higher score indicates that the benchmark calculation took less time. 1. SPECspeed is a time-based metric; time—for example, the number of seconds to complete a workload.
[0051] The base test requires all modules for a given language in a suite to be compiled using the same flags and in the same order, resulting in a relatively simple build process. The peak test allows for greater flexibility; different compiler options can be used for each benchmark, allowing for feedback-oriented optimizations, and more effort can yield better performance.
[0052] Step 202: Collect computing power metrics for each computing node before loading services, based on the test results.
[0053] After obtaining the test results, the integer computing power and floating-point computing power of the computing power nodes can be obtained based on the benchmark test results. The computing power index of each computing power node can be calculated based on the synchronous linear proportional relationship between the integer computing power and floating-point computing power.
[0054] To achieve the goal of data center node computing power scheduling, the static quantitative indicators of each computing node can be obtained through the benchmark testing methods described above. In this embodiment, an integer computing power indicator is selected for n computing nodes and defined as C. i (n) = SPECspeed@2017_int_base, where the floating-point computing power index is defined as C. f (n)=SPECspeed@2017_fp_base.
[0055] In current implementations, most general-purpose processors are composed of multiple cores, and their integer computing power and floating-point computing power have a synchronous linear proportional relationship. To comprehensively calculate these two computing capabilities, this embodiment defines a comprehensive static quantification index C(n) for computing power, calculated as follows:
[0056] C(n)=C i (n)×50%+C f (n)×50%.
[0057] Where C(n) is the comprehensive static quantitative index of computing power node n, and n is the index of the computing power node. i (n) represents the integer computational capability index, C f (n) represents the floating-point computing capability index.
[0058] Step 203: Collect network metrics of the network ports of the computing nodes.
[0059] After obtaining the computing power metrics, it is also necessary to obtain the network capability metrics of the computing nodes. Specifically, this is done through data center visualization technologies, such as Telemetry, to read the bandwidth of the ports of each computing node. In the following text, the bandwidth value of computing node n is defined as K(n).
[0060] After steps 201-203 provided in this embodiment, the static metric values of each computing node can be obtained.
[0061] Once the static metrics are obtained, distributed jobs can be loaded onto the computing nodes, and dynamic metrics for each computing node can be obtained based on the actual computing resource consumption of the distributed jobs. Similarly, when obtaining dynamic metrics, network congestion metrics and computing load metrics also need to be obtained separately.
[0062] In typical computing cluster usage scenarios, data centers host computing services. To improve network performance and provide a good network environment for distributed computing, data centers require the deployment of lossless networks. Lossless networks enable the RoCEV2 protocol and implement Priority-based Control (PFC) and Quantized Congestion Notification (QCN) mechanisms. In practice, PFC and QCN mechanisms can be used to quantify the congestion level of computing node ports. PFC detects traffic congestion by setting buffer thresholds at the switch level and sends PFC PAUSE frames to apply backpressure layer by layer, notifying the source to stop sending data to achieve zero packet loss and improve throughput and latency. The QCN mechanism controls traffic congestion by detecting queue depth occupancy and uses the switch's Explicit Congestion Notification (ECN) function to send Congestion Notification Packets (CNP) to the source to notify it to slow down, achieving zero packet loss and improving throughput and latency.
[0063] Step 301: The network port of the computing node collects data from the corresponding register of the priority flow control mechanism to obtain the first variable factor, which is used as the measurement factor under the priority flow control mechanism.
[0064] The network interface card (NIC) of the computing node can collect data from the relevant registers of the PFC mechanism. Here, a normalized variable factor, namely the first variable factor p, is defined as a measure of network congestion under PFC. The values of p are as follows:
[0065]
[0066] Where: E(n) and Time(n) are the values in the network card register of the computing node after parsing the PFC Pause frame; n represents one of the 8 virtual channels divided by the PFC mechanism; E(n) is a bit value, 1 represents that congestion has occurred, and 0 represents that it has not; Time(n) is a two-byte backpressure timer, which is the time for the PFC control network card to stop sending data packets. The longer the time, the higher the degree of congestion. Based on the principle of the PFC mechanism, formula (1) can be used to quantify and normalize the port congestion of the computing node under the PFC mechanism. In actual implementation, the p value is between [0,1], where 0 indicates that the bandwidth is completely idle and 1 indicates that the bandwidth is completely occupied.
[0067] Step 302: The network port of the computing node collects data from the corresponding registers of the quantization congestion control mechanism to obtain the second variable factor, which serves as the measurement factor under the quantization congestion control mechanism;
[0068] The network interface card (NIC) of the computing node can also collect data from the relevant registers of the QCN mechanism, and define a normalized variable factor, namely the second variable factor q, as a measure of network congestion under ECN. The value of q is as follows:
[0069] q=α(t)=(1-g)×α(t-Δt)+g×CNP_arrived formula (2).
[0070] Wherein: α parameter is a constantly changing average value on the network card side of the computing node, which is the proportion of the time interval when CNPs arrive. If more than one CNP arrives in the same time interval, it has the same effect as if only one CNP arrives. At the end of each time interval, α is updated by formula (3). The α parameter represents the congestion level of the network path corresponding to the port of the computing node under the QCN mechanism. g is a constant parameter between 0 and 1, which is determined by the network card firmware. Δt is the rate adjustment time interval. CNP_arrived is a bit field, which is 1 when a CNP arrives and 0 otherwise. In actual implementation, the q value is between [0,1], where 0 indicates that the bandwidth is completely idle and 1 indicates that the bandwidth is completely occupied.
[0071] Step 303: Construct a network congestion metric based on the first variable factor and the second variable factor.
[0072] Based on the above variable factors p and q, the network congestion normalization variable factor Q can be constructed:
[0073] Q = β × q + (1 - β) × p (Formula 3).
[0074] Where: β is the proportional allocation coefficient of the QCN mechanism, i.e., congestion control, to the ability to influence Q; correspondingly, 1-β is the proportional allocation coefficient of the PFC mechanism, i.e., the ability of network flow control to influence Q; the assignment of β is guided by the principle that the network congestion normalization variable factor Q can linearly and accurately reflect the degree of network congestion.
[0075] After steps 301-303 provided in this embodiment, the network congestion normalization variable factor Q can be obtained based on multiple mechanisms, and Q can be used as the network congestion metric.
[0076] In practice, the waterline settings for the QCN mechanism and PFC need to be determined based on specific application scenarios, traffic characteristics, and network configurations such as the number of ports, convergence ratio, and switch performance. Generally, PFC is only activated if packet loss persists despite QCN's full processing power; the β assignment is also related to this process. Below are some available values for the proportional allocation coefficient β in common scenarios.
[0077] (1) Mouse-like processes: such as distributed computing, WeChat, email, etc., have high latency requirements, low traffic, and high scheduling priority. Therefore, the ECN mechanism needs to set a low threshold, and the recommended value is β = 0.72.
[0078] (2) Elephant streams: such as storage / video, have low latency requirements, large traffic bursts, and low scheduling priority. Therefore, the ECN mechanism needs to set a high threshold, with a recommended value of β = 0.84.
[0079] (3) Mixed type: Elephant flow and mouse flow are roughly balanced, with medium traffic. The scheduling priority is allocated as needed, and the threshold of the ECN mechanism is set in the middle. The recommended value is β = 0.78.
[0080] The above values are recommended reference values based on the results of lossless network simulation tests. For actual engineering applications, it is recommended to adjust them according to the actual environment test.
[0081] Furthermore, in the fabric network architecture used in data centers, the network congestion normalization variable factor Q, calculated from p and q, can reflect the congestion changes over time in the data center, but it cannot reflect the correspondence between computing power scheduling and network congestion characteristics. To assess the impact of network congestion on scheduling behavior, it is also necessary to construct a network congestion metric H1 based on computing power ports. After repeated fitting using mathematical methods and experimental testing, f(Q) can be defined using the following inverse cumulative distributed function:
[0082]
[0083] Where δ is the fast convergence coefficient, analyzed as follows: it represents the slope of the function and the fast convergence coefficient of the network congestion metric function. When PFC occurs, it indicates that network congestion is severe, and δ needs to be set to approach 10×γ to drive the metric function to penalize the occurrence of PFC, that is, to rapidly converge the metric value to 0. In practice, the recommended value is: 2 < δ <= 10×γ.
[0084] After completing the port congestion perception and measurement of computing power nodes, it is also necessary to perform the load perception and measurement of computing power nodes.
[0085] As distributed jobs load and complete, the computing load on computing nodes is dynamically variable. From the perspective of the computing node load in a computing cluster, the principles of computing power scheduling include:
[0086] 1. For efficiency reasons, nodes with higher performance are scheduled first, with the aim of improving the efficiency of distributed job completion.
[0087] 2. For energy saving considerations, priority is given to scheduling to nodes with a load rate of 90% or those that already have a certain load. Since the basic power consumption of computing nodes accounts for 2 / 3, distributed jobs are prioritized to nodes with a certain load, and idle nodes can be shut down to achieve energy saving.
[0088] For distributed computing load, the actual influencing factors are computing power and memory space. Correspondingly, there are two factors affecting the scheduling evaluation of distributed computing jobs: one is the CPU load, i.e., CPU utilization (defined as L = CPU utilization); the other is memory availability (defined as M = memory availability). These two collected values, L and M, can serve as key influencing factors characterizing the dynamic operation of nodes during computing power scheduling. Within the same computing power domain, only L and M need to be considered to achieve the target selection for computing power scheduling. In practice, operating systems offer a rich set of basic commands for viewing the CPU utilization and memory availability of computing nodes, such as the `top` command in Linux. Scripts or plugins within the OS can be used to obtain real-time collected values of L and M.
[0089] In current scenarios, the hardware capacity of data centers is usually sufficient, and memory capacity can be expanded through virtual memory, shared memory, etc. Therefore, memory has a relatively small impact on computing load. Thus, a threshold or limit M0 needs to be selected, which is limited by referencing the maximum memory required by the basic task unit of distributed computing power scheduling. When the memory reserve M is greater than or equal to M0, only the impact of CPU utilization L on computing power scheduling needs to be considered. When M is less than M0, available memory is critical, requiring the computing power scheduling value to converge rapidly.
[0090] When calculating the load metric, the CPU utilization and memory availability of the computing nodes are considered, with full computing load as the incentive target. The computing load metric converges to 0 when no memory is available. Specifically, energy saving, node load L, and memory availability can be considered together. Here, the load metric H2 for computing power scheduling is defined. After repeated fitting using mathematical methods and experimental testing and evaluation, the algorithm formula is constructed as follows:
[0091]
[0092] In formula (5), the right half of the equation is the memory influence factor. No available memory directly causes H2 to converge to 0. The first component of the left half of the equation defines the shape of the main S-shape, while the second component acts as a penalty function, which aims to stimulate the maximum server load value. When the load is close to full load, H2 converges quickly. The server load L is in the range of [0,1], and H2 is also in the range of [0,1].
[0093] In practice, the parameter settings for Formula 5 are recommended as follows.
[0094] 1. The parameter ε defines the size and slope of the function's descent ramp. The threshold for near-full load can be defined according to the application environment. It is generally recommended that the load be close to full load when the node's computing power utilization rate is 90%, i.e., ε = 0.1.
[0095] 2. The selection of M0 is related to the storage capacity requirements of the smallest task unit in the distributed application. Generally, the following is recommended, but it can also be set according to the specific application scenario: For example, when the business unit is a container, each business requires more memory, so M0 can be set to 500MB to avoid insufficient remaining space; when the business unit is a function / API, each business requires less memory, so M0 can be set to 10MB to reduce space waste.
[0096] After obtaining the network congestion metric H1 and load metric H2, the network congestion metric and load metric of computing nodes can be calculated within the same computing power domain. The collected variables are then normalized, and the dynamic metric for scheduling a single computing node is calculated based on the normalized variables. Specifically, this needs to be considered in conjunction with the computing node load and its corresponding fair allocation and sharing of uplink resources on the switch's communication throughput. Here, the comprehensive dynamic metric H for computing power scheduling oriented towards computing nodes is defined, and can be expressed as follows:
[0097] H = H1 × H2 = (f1(Q)) η ·f2(L,M) Formula (6).
[0098] Where: L is the load factor of each computing node quantified by CPU utilization, Q is the congestion level of the switch output queue quantified by network congestion normalization variable factor, and M is the memory margin. Both L and Q are in the range [0,1]. η is the coefficient of the influence ratio between L and Q in the quantization calculation. Considering that both L and Q must be in the range [0,1], the influence of q on the overall scheduling value can be reduced by increasing the value of η. Considering that L and Q are equally important to computing power scheduling, η = 1 is taken here.
[0099] In practice, the network congestion metric H1 reflects the actual path traffic status of computing nodes throughout the entire computing cluster interconnection network, including the Leaf layer, Spine layer, and Core layer. It is evident that the H value, as the product of the computing node load metric H2 and the port congestion metric H1, can serve as a dynamic metric for the global scheduling of the computing node cluster. Therefore, computing nodes can be scheduled solely based on the dynamic metric H. During scheduling, when the dynamic metric values of computing nodes are different, computing power is scheduled according to the dynamic metric value; when the dynamic metric values of two or more computing nodes are the same, the scheduling priority of the computing nodes is ranked according to the static metric value.
[0100] In certain specific scenarios, such as Figure 4 As shown, in the L-axis direction, there may be cases where the H values are the same. The following selection principles are recommended:
[0101] (1) In power-priority scenarios, computing nodes with larger dynamic load metrics are prioritized for scheduling. In power-priority application scenarios, H values with larger L values are prioritized as scheduling metrics.
[0102] (2) In performance-priority scenarios, computing nodes with smaller dynamic metric values are prioritized for scheduling. In performance-priority application scenarios, H values with smaller L values are prioritized as scheduling metrics.
[0103] The computing power resource quantification method provided in this embodiment can be applied to research on computing power networks and computing power services, promoting full network-wide computing power awareness and cloud-network-edge-device collaboration, facilitating the integration and complementary capabilities of the computing and network industries, and accelerating the downward deployment of computing power to the edge. It is a concentrated manifestation of current cloud-network convergence technology. Computing power scheduling and measurement are two major technical challenges in computing power networks and key technologies for their implementation. The purpose of this invention is to solve the problems of computing power scheduling and measurement on the computing power cluster side of computing power networks, and to propose a feasible technical solution for the quantitative implementation of computing power scheduling.
[0104] 1. Compared to traditional computing power scheduling techniques, the method in this embodiment is based on a basic data center network model and proposes an innovative approach that simplifies complexity. It fully utilizes existing lossless network technologies such as PFC and QCN mechanisms, achieving the measurement of computing node congestion with almost no additional technical mechanisms. The method calculates and normalizes the relevant parameters for network congestion measurement, accurately reflecting the network congestion status with extremely high real-time performance. The computing node network congestion measurement algorithm proposed in this embodiment can accurately and significantly reflect the network port congestion level of the computing nodes in the computing power cluster, providing a quantitative basis for judging network factors in computing power cluster scheduling.
[0105] 2. Based on the dynamic computing power characteristics and distributed operation characteristics of computing nodes, this paper proposes CPU load rate and memory reserve as measurement factors for the general computing power of computing nodes. Taking into account data center energy saving, an algorithmic formula for measuring the computing power scheduling value under dynamic scenarios based on the above factors is created. The proposed and implemented computing node load perception and measurement algorithm has practical effectiveness and economic benefits for energy saving and emission reduction in data centers. At the same time, it avoids the quantification and complex calculation of computing resource measurement, proposing a simplified and practical algorithm implementation with low-cost engineering implementation economic value.
[0106] 3. Based on the above metric factors and algorithms, a data acquisition method for metric factors is proposed, and an implementation process for computing power scheduling from the perspective of general computing power is created.
[0107] 4. The above technical solutions are compatible with existing technical systems and have low implementation costs.
[0108] In summary, the method in this embodiment lays the technical foundation for the implementation of computing power scheduling in the computing power cluster domain, the engineering foundation for the realization of computing power networks, and accelerates the process of practical application of computing power networks. As a social means of production, computing power can be freely exchanged and circulated through services such as computing power networks, which has great significance for promoting social development.
[0109] Example 2:
[0110] Based on the computing power resource quantification method provided in Embodiment 1 above, the present invention also provides a computing power resource quantification system that can be used to implement the above method, the system including a computing power quantification device and at least one computing power node.
[0111] Among them, the architecture of the computing power device is as follows Figure 5 The diagram includes one or more processors 11 and a memory 12. Wherein, Figure 5 Take a processor 11 as an example.
[0112] In a specific implementation scenario, the Baseboard Management Controller (BMC) module of the computing power node can be used as the processor 11 in the computing power enhancement device. For example... Figure 6 As shown, the BMC module has abundant hardware and software resources; the BMC's computing power, as an out-of-band system, does not participate in computing power scheduling; the BMC system can achieve functional connectivity with the entire computing power cluster's management plane through an independent management plane network; the BMC is interconnected with the main system's motherboard and smart network card via a PCIe bus tree bridge and supports the MTCP over PCIe communication protocol, enabling remote computing power data acquisition and data exchange; the BMC unit has KCS functionality, enabling remote mouse and keyboard control via a USB channel; the BMC unit has KVM functionality, enabling remote visual desktop and operating system and software environment installation via a PCIe channel; computing power resource management and its measurement are defined as management plane technology in the computing power network technology system, therefore, it is appropriate to handle them through the BMC management plane module.
[0113] In addition to utilizing existing BMC functions, the processor 11 of the computing power quantization device in the system provided in this embodiment also needs to contain some functional modules or applications to complete the load quantization and scheduling of computing power nodes according to the method provided in Embodiment 1. Some available applications are provided below. It should be understood that the following quantization method is merely a specific example of the method provided in this embodiment and does not limit the scope of protection.
[0114] 1. Computing power data acquisition plugin: This application runs on the operating system of the computing power node main system. It acquires L and M data through basic commands under the basic operating system and transmits them to the computing power scheduling quantization program of the BMC module through the MTCP over PCIE channel.
[0115] 2. Computing Power Scheduling Quantization Program: Responsible for data testing and collection of static and dynamic quantization indicators of computing power nodes, calculating computing power scheduling metrics based on relevant algorithms, and reporting them to the computing power gateway. Specific functions are implemented as follows:
[0116] Network congestion measurement: At time t, the computing power scheduling quantization program completes the data collection of the relevant registers of the QCN / PFC mechanism of the smart network card through the MTCP channel. After collecting the values of E(n), Time(n), and α, the computing power port network congestion measurement value H1 is calculated according to the algorithm formulas (1)(2)(3)(4) and stored for later use. Then, the next measurement collection and calculation is carried out.
[0117] General computing load measurement: At time t, the computing load quantization program receives real-time sampled values of L and M through the MTCP channel, calculates the computing load measurement value H2 according to formula (5), stores it for later use, and then proceeds to the next measurement collection and calculation.
[0118] Comprehensive metric for computing power scheduling: The computing power scheduling quantization program reads H1 and H2, calculates the comprehensive metric H for computing power scheduling for computing power nodes according to formula (6), stores it for later use, and sends the H value to the computing power gateway through an independent management network for the computing power gateway to use for computing power scheduling.
[0119] 3. SPEC CPU@2017 Benchmark Program: This software is a standardized benchmarking tool, an industry-standard suite of CPU-intensive benchmark tests. SPEC CPU@2017 was released in June 2017, and the benchmark package contains 43 benchmarks; we only need to use two of them.
[0120] The process of B-domain computing power scheduling quantization is implemented in two steps based on the above hardware and functional software: Figure 7 The preparatory stage shown and as Figure 8 As shown in the execution phase, the preparation phase completes the collection and storage of static quantitative indicators, and the execution phase completes a complete quantization process of computing power scheduling.
[0121] In practical implementation, the processor 11 and memory 12 of the computing power optimization device can be connected via a bus or other means. Figure 5 Taking the example of a connection between China and Israel via a bus.
[0122] The memory 12, as a non-volatile computer-readable storage medium for the computing resource quantification method, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the computing resource quantification method in Embodiment 1. The processor 11 executes various functional applications and data processing in the computing resource quantification process by running the non-volatile software programs, instructions, and modules stored in the memory 12, thereby realizing the computing resource quantification method of Embodiment 1.
[0123] The memory 12 of the computing power device may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 12 may optionally include memory remotely located relative to the processor 11, which can be connected to the processor 11 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0124] The program instructions / modules are stored in memory 12. When executed by one or more processors 11, they perform the computing resource quantification method of Embodiment 1 described above, for example, the method described above. Figure 1 and Figure 2 The steps shown.
[0125] Those skilled in the art will understand that all or part of the steps in the various methods of the embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, which may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0126] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for quantifying computing power resources, characterized in that, Specifically, it includes: Each computing power cluster managed by a computing power gateway is considered as a computing power domain, and each computing power domain contains one or more computing power nodes; Before any jobs are loaded, static quantitative index tests are performed on each computing node in the computing power domain to obtain the static metric values of each computing node in this computing power domain. After loading the distributed job, dynamic quantification metrics are calculated for each computing node in the computing power domain to obtain dynamic metric values for each computing node within the domain. This facilitates computing power scheduling within the same computing power domain based on the quantification results of the static and dynamic metric values of all computing nodes. This includes: calculating network congestion and load metrics for computing nodes within the same computing power domain, normalizing the collected variables, and calculating the dynamic metric value for scheduling a single computing node based on the normalized variables. Specifically, the network port of the computing node collects data from the corresponding registers of the priority flow control mechanism to obtain a first variable factor, which serves as the metric factor under the priority flow control mechanism. The network port of the computing node also collects data from the corresponding registers of the quantification congestion control mechanism to obtain a second variable factor, which serves as the metric factor under the quantification congestion control mechanism. A network congestion metric value is constructed based on the first and second variable factors.
2. The method for quantifying computing resources according to claim 1, characterized in that, The phrase "treating each computing power cluster managed by a computing power gateway as a computing power domain" specifically includes: Based on the network topology, the static latency index from each computing node to the computing gateway is collected. Computing nodes with static latency indices less than the latency threshold are located in the computing domain of that computing gateway.
3. The method for quantifying computing resources according to claim 1, characterized in that, The step of performing static quantification index testing on each computing node in the computing power domain to obtain the static metric values of each computing node in this computing power domain specifically includes: Benchmark tests were conducted on the computing nodes. Based on the test results, computing capability metrics of each computing node before loading services were collected, and network metrics of the network ports of the computing nodes were also collected.
4. The method for quantifying computing resources according to claim 3, characterized in that, The process of collecting computing power metrics for each computing node before loading services based on test results specifically includes: Based on the benchmark test results, the integer computing power and floating-point computing power of the computing nodes are obtained, and the computing power index of each computing node is calculated based on the synchronous linear proportional relationship between the integer computing power and floating-point computing power.
5. The method for quantifying computing resources according to claim 1, characterized in that, The network congestion metric and load metric of the computing power node, specifically the load metric includes: Based on the CPU utilization and memory availability of the computing nodes, and with full computing load as the incentive target, the computing load metric of the computing nodes is calculated. When no memory is available, the computing load metric converges to 0.
6. The method for quantifying computing resources according to claim 1, characterized in that, The process of scheduling computing power based on the quantization results of static and dynamic metrics of all computing power nodes specifically includes: When the dynamic metric values of computing power nodes are different, computing power scheduling is performed based on the dynamic metric values; When the dynamic metrics of two or more computing nodes are consistent, the scheduling priority of the computing nodes is sorted according to the static metrics.
7. The method for quantifying computing resources according to claim 6, characterized in that, The method of scheduling computing power based on dynamic metrics specifically includes: In scenarios where power consumption is the priority, computing nodes with higher dynamic load metrics are scheduled first. In performance-priority scenarios, computing nodes with lower dynamic load metrics are scheduled first.
8. A computing power resource quantification system, characterized in that, It includes a computing power quantization device and at least one computing power node, specifically including: The computing power quantification device includes at least one processor and a memory, which are connected via a data bus. The memory stores instructions that can be executed by the at least one processor. After being executed by the processor, the instructions are used to quantify the computing power resources of a computing power node using the computing power resource quantification method according to any one of claims 1-7.
Citation Information
Patent Citations
Intra-network resource dimension measurement method, computing power scheduling method and storage medium
CN112003660A
Method and device for calculating force quantity and related equipment
CN115408150A