A resource dynamic analysis and sample load scheduling optimization method for edge distributed training
By dynamically analyzing computing power resources and scheduling sample loads in an edge environment, the problems of heterogeneity of equipment and limited computing power resources are solved, and the efficiency of model training and overall convergence efficiency are improved.
Patent Information
- Application Number
- CN202411624235.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-14
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2044-11-14
AI Technical Summary
The equipment is heterogeneous in the edge environment and limited computing resources, resulting in inefficiency and uncertainty in model training tasks.
The dynamic resource analysis and sample load scheduling optimization method are adopted, and the computing power resources of edge nodes are obtained, task execution intensity and resource utilization are calculated, and the matching degree of computing power resources and task is calculated in the distortion radar graph, and the sample load is distributed using the parameter server to minimize the iteration completion time interval between the fastest and the slowest nodes.
The efficiency of model training and overall convergence efficiency in edge environments are improved, and the needs of model training in edge scenarios are met.
Smart Images

Figure CN119149247B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, and belongs to the technical field of edge computing and artificial intelligence integration. Background Art
[0002] With the advent of the era of the Internet of Everything, the integration of the Internet of Things and artificial intelligence is a development trend. The popularity of smart terminal devices has shown explosive growth, and the number of edge AI applications will also surge in the next few years. In order to improve the quality of user services, it is necessary to efficiently use the massive data generated in terminal devices for model training tasks to achieve the deep integration of the Internet of Things and artificial intelligence. However, the traditional cloud computing model has problems such as heavy network burden, high latency, and high risk of privacy leakage when processing huge data torrents, making it difficult for the cloud to meet the needs of edge AI applications.
[0003] To this end, edge computing, as a new computing paradigm, sinks computing from the cloud to the edge, processes data and tasks on nearby edge devices, and performs distributed model training, thereby alleviating the pressure on the core network load and providing users with low-latency and high-security services. However, performing efficient model training tasks in an edge environment faces many challenges.
[0004] First, there is the problem of device heterogeneity in the edge environment. Edge computing hopes that various devices at the edge of the network may participate in the execution of training tasks. However, edge devices are naturally distributed in terms of geographical location. At the same time, the hardware resources between different devices will vary greatly. This poses a challenge to how to effectively evaluate the computing resources of each edge node and then allocate a reasonable workload. At the same time, edge device resources are limited. The computing resources of edge nodes are relatively limited, and they often need to occupy some resources to respond to user service requests, causing fluctuations in available computing resources, resulting in changes in the time it takes for each node to complete training tasks, which brings uncertainty to the process of training and updating model parameters and affects the overall convergence efficiency of the model. Summary of the invention
[0005] The technical problem to be solved by the present invention is: how to solve the problem of heterogeneous devices and limited computing resources in edge environments.
[0006] In order to solve the above technical problems, the present invention is implemented by adopting the following technical solutions.
[0007] The present invention provides a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, comprising:
[0008] Get all nodes in the edge environment;
[0009] Use one node in the edge environment as a parameter server and the other nodes as computing nodes;
[0010] According to the obtained average operation intensity of operators in the target neural network model, the proportion of computation-intensive operators and the proportion of storage access-intensive operators are counted;
[0011] Run a single resource-intensive load of computing resources on a computing node, obtain the total number of training samples of the load, computing resource utilization, and load completion time, wherein the computing resources include CPU performance, GPU performance, memory performance, and disk performance; calculate the task execution intensity value based on the total number of training samples of the load and the load completion time;
[0012] Calculate the computing resource evaluation value based on the computing resource utilization rate and the task execution intensity value;
[0013] According to the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to determine a distortion radar chart;
[0014] Mark the computing power resource evaluation value in the distorted radar chart and calculate the computing power resource and task matching ratio of the computing node;
[0015] Based on the computing power resources and task matching ratio of computing nodes, the parameter server is used to distribute part of the sample load in the slowest node to the fastest node. An optimization model is established with the optimization goal of minimizing the time interval between the slowest node and the fastest node to complete the iteration, and the sample load distribution optimization plan is calculated.
[0016] Furthermore, according to the obtained operation intensity average of the operators in the target neural network model, the method of calculating the proportion of computationally intensive operators and the proportion of storage access intensive operators includes:
[0017] The operators with higher operation intensity than the average value are regarded as computationally intensive operators;
[0018] Operators with operation intensity lower than the average are regarded as storage-intensive operators;
[0019] According to the average operation intensity of operators and the total number of operators, the proportion of computation-intensive operators and the proportion of storage access-intensive operators are counted.
[0020] Furthermore, the task execution intensity value is calculated according to the total number of training samples of the load and the load completion time, wherein the calculation formula of the task execution intensity value is expressed as:
[0021] (3);
[0022] In the formula, E w,d Represents a compute node d In running loadw The task execution intensity value at Capacity w represents the total number of training samples with load w, Time w, d Represents a compute node d The load completion time for executing load w.
[0023] Furthermore, the computing power resource evaluation value is calculated according to the computing power resource utilization rate and the task execution intensity value, wherein the calculation formula of the computing power resource evaluation value is expressed as:
[0024] (4);
[0025] In the formula, N Indicates the performance evaluation value of computing resources. w Indicates load, W represents a single resource-intensive workload set, d represents a computing node, D represents a collection of computing nodes, Represents a compute node d In running load w The computing resource utilization rate at that time, Represents a compute node d In running load w The task execution intensity value at that time, n represents the total number of loads of a single resource-intensive load set.
[0026] Further, according to the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to determine the distortion radar chart, including:
[0027] The computing power resources are divided into computing capacity and storage capacity, wherein the computing capacity includes CPU performance and GPU performance, and the storage capacity includes memory performance and disk performance;
[0028] Build a radar chart based on computing power and storage capacity;
[0029] The proportion of computationally intensive operators and the proportion of storage access intensive operators are used as weight adjustment factors to distort the radar chart to obtain a distorted radar chart.
[0030] Furthermore, the computing power resource evaluation value is marked in the distorted radar chart and the computing power resource and task matching ratio of the computing node is calculated, wherein the calculation formula of the computing power resource and task matching ratio is expressed as:
[0031] (6);
[0032] In the formula, mIndicates the matching ratio between computing resources and tasks. S CGMD Indicates the area enclosed by the standardized computing resource evaluation value markers of CPU performance C, GPU performance G, memory performance M, and disk performance D. S rador Represents the total area of the distorted radar chart.
[0033] Furthermore, based on the computing power resource and task matching ratio of the computing node, the parameter server is used to distribute the sample load in the slowest node to the fastest node, and an optimization model is established with the optimization goal of minimizing the time interval between the slowest node and the fastest node to complete the iteration, and the sample load distribution optimization scheme is calculated, including:
[0034] According to the computing power resources and task matching ratio of all computing nodes, the parameter server is used to distribute the sample load of the slowest node to the fastest node, and the iterative training completion time of the fastest node and the iterative training completion time of the slowest node and the sample load of the fastest node and the sample load of the slowest node are obtained;
[0035] According to the fastest node iteration training completion time and the slowest node iteration training completion time and the fastest node sample load and the slowest node sample load, an optimization model is established to obtain the sample load distribution optimization solution with the goal of minimizing the time interval between the fastest node and the slowest node to complete the iteration.
[0036] Furthermore, according to the computing power resource and task matching ratio of the computing node, the parameter server is used to distribute the sample load in the slowest node to the fastest node, wherein the sample load distributed to the computing node by the parameter server is expressed as:
[0037] (7);
[0038] In the formula, f d Indicates distribution to computing nodes d A sample load of m d Indicates the matching degree between computing resources and tasks of computing node d, F represents the total number of training samples of the load, m Indicates the matching ratio between computing resources and tasks.
[0039] Furthermore, in the process of using the parameter server to distribute the sample part load in the slowest node to the fastest node, the load determines the node iteration training completion time, wherein the node iteration training completion time T With load f The relationship between them is expressed as:
[0040] (8);
[0041] In the formula, T Indicates the completion time of node iteration training, f Indicates the load, The slope parameter represents the linear relationship between completion time and load, An offset representing the completion time of a compute node.
[0042] Furthermore, according to the fastest node iteration training completion time and the slowest node iteration training completion time and the fastest node sample load and the slowest node sample load, the goal is to minimize the time interval between the fastest node and the slowest node to complete the iteration, wherein the optimization goal is expressed as:
[0043] (9);
[0044] In the formula, The slope parameter represents the linear relationship between completion time and load, Indicates the fastest node iteration training completion time, represents the portion of the sample load that is allocated from the slowest node to the fastest node, Indicates the offset of the completion time of the computing node, Indicates the slowest node iteration training completion time, min Indicates minimization.
[0045] Compared with the prior art, the present invention has the following beneficial effects:
[0046] 1. The present invention provides a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, which is carried out in an edge environment and quantifies the computing resources of heterogeneous nodes. The computing resources of computing nodes are divided into computing power and storage capacity. By running a single resource-intensive load set, using computing resource utilization and task execution intensity values, the computing resource performance evaluation value of edge heterogeneous computing nodes is obtained.
[0047] 2. The present invention marks the computing power resources of the computing nodes, including the performance evaluation values of CPU performance, GPU performance, memory performance and disk performance, in the distorted radar chart of the neural network model training task, and calculates the matching degree between the computing power resources of the computing nodes and the task to determine the sample load of the computing nodes in the model training task, thereby improving the overall model training efficiency.
[0048] 3. The present invention aims to minimize the time interval between the fastest and slowest nodes, constructs and solves the optimization problem, obtains the sample load distribution optimization solution, and shortens the time interval between the fastest and slowest nodes for iterative completion.
[0049] 4. The present invention introduces a dynamic evaluation method for node resources, allocates sample loads according to the performance evaluation differences between nodes, and dynamically adjusts the sample loads between nodes in combination with the time interval between the fastest and slowest nodes between groups during iteration, so that the model can be efficiently distributed trained in edge heterogeneous scenarios, thus meeting the needs of model training in edge scenarios. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Figure 1 1 is a schematic diagram of the system architecture of a parameter server provided in an embodiment of the present invention.
[0051] Figure 2 This is a distorted radar chart provided by an embodiment of the present invention.
[0052] Figure 3 It is a flow chart of a resource dynamic analysis and sample load scheduling optimization method for edge distributed training provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0053] The technical solution of the present invention is described in detail below through the accompanying drawings and specific embodiments. It should be understood that the embodiments of the present invention and the specific features in the embodiments are detailed descriptions of the technical solution of the present invention, rather than limitations on the technical solution of the present invention. The embodiments of the present invention and the technical features in the embodiments may be combined with each other unless there is a conflict.
[0054] In response to the problems of heterogeneous devices and limited computing resources in edge environments, the present invention proposes a resource dynamic evaluation and sample load scheduling optimization method for edge distributed training based on the parameter server architecture. It can dynamically evaluate the computing resources of edge nodes and adjust the node sample load according to the evaluation results, thereby improving the global parameter iteration efficiency.
[0055] In the edge environment, one node acts as a parameter server and the other nodes act as computing nodes, which together form the parameter server architecture. The computing node has a complete neural network model, is responsible for training sample loads, and transmits gradients to the parameter server; the parameter server has all the training data, is responsible for distributing training sample loads, aggregating global gradients, and distributing updated parameters to the computing nodes.
[0056] Embodiment 1, as Figure 3 As shown, this embodiment introduces a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, including:
[0057] Get all nodes in the edge environment; by identifying all available computing nodes in the edge environment, ensure that all available resources are taken into account, providing a comprehensive perspective for resource optimization.
[0058] like Figure 1As shown in the figure, one node in the edge environment is used as a parameter server and the other nodes are used as computing nodes. The parameter server is responsible for managing and distributing model parameters, and the computing nodes are responsible for performing specific computing tasks, which improves the overall organization and efficiency. Parameters are managed through a dedicated parameter server to reduce the communication overhead between computing nodes.
[0059] According to the average operation intensity of operators in the target neural network model, the proportion of computationally intensive operators and the proportion of storage access intensive operators are statistically calculated; this is in preparation for subsequently marking the performance evaluation values of the computing nodes' computing resources, including CPU performance, GPU performance, memory performance, and disk performance, in the distorted radar chart of the neural network model training task.
[0060] Run a single resource-intensive load of computing resources on the computing node to obtain the total number of training samples of the load, computing resource utilization, and load completion time. The computing resources include CPU performance, GPU performance, memory performance, and disk performance. Evaluate the actual performance of the computing node through data obtained from actual tests.
[0061] The task execution intensity value is calculated based on the total number of training samples of the load and the load completion time; the execution difficulty and complexity of the task are quantified to provide quantitative indicators for resource allocation and task scheduling.
[0062] Calculate the computing resource evaluation value based on the computing resource utilization rate and task execution intensity value; comprehensively evaluate the performance of the computing node.
[0063] According to the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to determine the distortion radar chart; through visualization means, the resource distribution and task matching of the computing nodes are intuitively displayed to facilitate decision-making and optimization.
[0064] The computing power resource evaluation value is marked in the distorted radar chart and the computing power resource and task matching ratio of the computing node is calculated; the matching degree between the computing node and the task is quantified, providing specific indicators for resource scheduling, which helps to achieve the optimal configuration of resources.
[0065] Based on the ratio of computing power resources and task matching of computing nodes, an optimization model is established to obtain a sample load distribution optimization solution with the optimization goal of minimizing the time interval between the fastest node and the slowest node to complete the iteration; by dynamically adjusting the load distribution, the burden of the slowest node is reduced and the execution speed and efficiency of the overall task are improved.
[0066] Embodiment 2 is based on the same inventive concept as Embodiment 1. This embodiment introduces a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, which specifically includes the following steps:
[0067] Step 1: Get all nodes in the edge environment, use one node in the edge environment as a parameter server, and the other nodes as computing nodes.
[0068] The computing resources of computing nodes are divided into computing capacity and storage capacity. By refining the classification of computing resources, appropriate computing nodes can be selected according to the computing or storage requirements of the task.
[0069] The computing resources of a computing node include CPU performance, GPU performance, memory performance, and disk performance. The computing capacity includes CPU performance and GPU performance, and the storage capacity includes memory performance and disk performance.
[0070] Step 2: According to the obtained average operation intensity of operators in the target neural network model, the proportion of computationally intensive operators and the proportion of storage access intensive operators are counted.
[0071] Operators are the basic building blocks of neural network models. Different types of operators are combined together to form a neural network structure to complete machine learning tasks.
[0072] According to the obtained average operation intensity of operators in the target neural network model, the method of counting the proportion of computation-intensive operators and the proportion of storage access-intensive operators includes:
[0073] Operators with higher operation intensity than the average are considered as computationally intensive operators, using α Indicates the percentage of computationally intensive operators;
[0074] Operators with lower operation intensity than the average are considered storage-intensive operators and are used β Indicates the percentage of storage-intensive operators
[0075] According to the average operation intensity of operators and the total number of operators, the proportion of computation-intensive operators and the proportion of storage access-intensive operators are counted.
[0076] The operation intensity of an operator is obtained by dividing the number of floating-point calculations required to execute the operator by the number of memory read and write operations required to execute the operator. The mathematical expression is:
[0077] (1);
[0078] In the formula, OI Indicates the strength of the operator. flops Indicates the number of floating-point calculations required to execute the operator. memops Indicates the number of memory read and write operations required to execute the operator.
[0079] The calculation expression of the calculation operator is expressed as:
[0080] (2);
[0081] In the formula, OI avg represents the mean operation strength of the operator, num Indicates the total number of operators, Represents the sum of the operation strength values of all operators.
[0082] Step 3: Run a single resource-intensive load of computing resources on the computing node to obtain the total number of training samples of the load, computing resource utilization, and load completion time. The computing resources include CPU performance, GPU performance, memory performance, and disk performance.
[0083] Compute nodes run a single resource-intensive workload set of computing resources, including CPU performance, GPU performance, memory performance, and disk performance.
[0084] The single resource-intensive load requires that when the computing node runs the load, the utilization rate of the computing power resource type required by the load, and only the utilization rate of the computing power resource type required by the load is fully loaded.
[0085] Step 4: Calculate the task execution intensity value based on the total number of training samples of the load and the load completion time.
[0086] The task execution intensity refers to the intensity of the training task when it is specifically executed in the computing node. The higher the execution intensity of the training task, the greater the pressure caused by the training task, the greater the usage density of the resources required for the training task, and the higher the usage density of the node resources.
[0087] The calculation formula of the task execution intensity value is expressed as:
[0088] (3);
[0089] In the formula, E w,d Represents a compute node d In running load w The task execution intensity value at Capacity w represents the total number of training samples with load w, Time w, d Represents a compute node d The load completion time for executing load w.
[0090] Step 5: Calculate the computing resource evaluation value based on the computing resource utilization rate and the task execution intensity value.
[0091] The calculation formula of the computing power resource evaluation value is expressed as:
[0092] (4);
[0093] In the formula, N Indicates the performance evaluation value of computing resources. w Indicates load, W represents a single resource-intensive workload set, d represents a computing node, D represents a collection of computing nodes, represents the computing resource utilization of computing node d when running load w, represents the task execution intensity value of computing node d when running load w, and n represents the total number of loads of a single resource-intensive load set.
[0094] Step 6: Based on the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to obtain Figure 2 The distorted radar map shown;
[0095] Dividing the computing power resources into computing capacity and storage capacity;
[0096] The computing capability includes CPU performance and GPU performance; the storage capability includes memory performance and disk performance;
[0097] Build a radar chart based on computing power and storage capacity, using V={V CPU ,V GPU ,V 内存 ,V 磁盘 } represents the axis vector in the radar chart;
[0098] The proportion of computationally intensive operators and the proportion of storage access intensive operators are used as weight adjustment factors to distort the radar chart to obtain a distorted radar chart. V’ CPU =α⋅ V CPU , V’ GPU =α⋅ V GPU , V’ 内存 =β⋅ V 内存 , V’ 磁盘 = β⋅ V 磁盘 Represents the axis vector in the distorted radar chart.
[0099] Step 7: Mark the computing power resource evaluation value in the distorted radar chart and calculate the computing power resource and task matching ratio of the computing node.
[0100] The computing power resource evaluation value is standardized to obtain the standardized computing power resource evaluation value, and the standardized computing power resource evaluation value is expressed as:
[0101] (5);
[0102] In the formula, Indicates the normalized computing resource evaluation value. Indicates the evaluation value of computing resources. Indicates the maximum value of the computing resource evaluation value in the computing node. Indicates the minimum value of the computing resource evaluation value in the computing node. Represents the operation of calculating logarithms.
[0103] The standardized computing resource evaluation value is represented in the distortion radar chart, and the computing resource and task matching ratio of the computing node is calculated.
[0104] The calculation formula for the ratio of computing power resources to task matching is expressed as:
[0105] (6);
[0106] In the formula, m Indicates the matching ratio between computing resources and tasks. S CGMD Indicates the area enclosed by the standardized computing resource evaluation value markers of CPU performance C, GPU performance G, memory performance M, and disk performance D. S rador Represents the total area of the distorted radar chart.
[0107] Step 8: Based on the computing power resources and task matching ratio of the computing nodes, an optimization model is established to obtain a sample load distribution optimization solution with the optimization goal of minimizing the time interval between the fastest node and the slowest node to complete the iteration.
[0108] According to the computing power resources of all computing nodes and the task matching ratio, the parameter server is used to distribute the training sample load to all computing nodes, and the time it takes for each computing node to complete a set of iterative training is recorded. The computing node with the shortest completion time is taken as the fastest node, and the computing node with the longest completion time is taken as the slowest node.
[0109] Use the parameter server to distribute part of the sample load in the slowest node to the fastest node, and obtain the iterative training completion time of the fastest node and the iterative training completion time of the slowest node and the sample load of the fastest node and the sample load of the slowest node;
[0110] According to the fastest node iteration training completion time and the slowest node iteration training completion time and the fastest node sample load and the slowest node sample load, an optimization model is established to obtain the sample load distribution optimization solution with the goal of minimizing the time interval between the fastest node and the slowest node to complete the iteration.
[0111] The sample load distributed to the computing nodes by the parameter server is expressed as:
[0112] (7);
[0113] In the formula, f d Indicates distribution to computing nodes d The sample load, m d Represents a compute node d The matching degree between computing resources and tasks, F represents the total number of training samples of the load, m Indicates the matching ratio between computing resources and tasks.
[0114] Among them, the node iteration training completion time T With load f The relationship between them is expressed as:
[0115] (8);
[0116] In the formula, T Indicates the completion time of node iteration training, f Indicates the load, The slope parameter represents the linear relationship between completion time and load, An offset representing the completion time of a compute node.
[0117] Among them, the optimization objective is expressed as:
[0118] (9);
[0119] In the formula, The slope parameter represents the linear relationship between completion time and load, Indicates the fastest node iteration training completion time, represents the portion of the sample load that is allocated from the slowest node to the fastest node, Indicates the offset of the completion time of the computing node, Indicates the slowest node iteration training completion time, min Indicates minimization.
[0120] In the field of smart home, the present invention is applied to the neural network model training process of local devices. By dynamically evaluating the computing resources of edge devices and reasonably scheduling sample loads, the training tasks can be completed efficiently without relying on the cloud, improving the autonomous learning ability and response speed of smart home devices and protecting user privacy.
[0121] In the field of medical health, the present invention is applied to the analysis of medical data and neural network model training by distributed edge devices. Through dynamic resource evaluation and sample load scheduling, it can efficiently process patients' health data, quickly update prediction models, improve the responsiveness and accuracy of telemedicine and health monitoring systems, and protect patient privacy and data security.
[0122] In the field of intelligent transportation, the present invention is applied to the real-time processing of traffic data and neural network model training by edge nodes. By rationally allocating the computing resources of each node and dynamically adjusting the load of the training task according to the resource status, the efficient operation of the traffic monitoring, signal control and other systems is guaranteed, and the intelligent level of traffic management is improved.
[0123] In summary, the present invention provides a resource dynamic analysis and sample load scheduling optimization method for edge distributed training, which is carried out in an edge environment and quantifies the computing resources of heterogeneous nodes. The computing resources of computing nodes are divided into computing power and storage capacity. By running a single resource-intensive load set, using computing resource utilization and task execution intensity values, the computing resource performance evaluation value of edge heterogeneous computing nodes is obtained.
[0124] The present invention marks the computing power resources of the computing nodes, including the performance evaluation values of CPU performance, GPU performance, memory performance and disk performance, in the distorted radar chart of the neural network model training task, and calculates the computing power resources of the computing nodes and the task matching degree to determine the sample load of the computing nodes in the model training task, thereby improving the overall model training efficiency.
[0125] The present invention aims to minimize the time interval between the fastest and slowest nodes, constructs and solves an optimization problem, obtains a sample load distribution optimization solution, and shortens the time interval between the fastest and slowest nodes for iterative completion.
[0126] The present invention introduces a dynamic evaluation method for node resources, allocates sample load according to the performance evaluation differences between nodes, and dynamically adjusts the sample load between nodes in combination with the time interval between the fastest and slowest nodes between groups during iteration, so that the model can be efficiently distributed trained in edge heterogeneous scenarios, thus meeting the needs of model training in edge scenarios.
[0127] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0128] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0129] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0130] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0131] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the enlightenment of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the purpose of the present invention and the claims, which all fall within the protection of the present invention.
Claims
1. A resource dynamic analysis and sample load scheduling optimization method for edge distributed training, characterized in that: include: Get all nodes in the edge environment; Use one node in the edge environment as a parameter server and the other nodes as computing nodes; According to the obtained average operation intensity of operators in the target neural network model, the proportion of computation-intensive operators and the proportion of storage access-intensive operators are counted; Running a single resource-intensive load of computing resources on a computing node, obtaining the total number of training samples of the load, computing resource utilization, and load completion time, wherein the computing resources include CPU performance, GPU performance, memory performance, and disk performance; The task execution intensity value is calculated based on the total number of training samples of the load and the load completion time; Calculate the computing resource evaluation value based on the computing resource utilization rate and the task execution intensity value; According to the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to determine a distortion radar chart; Mark the computing power resource evaluation value in the distorted radar chart and calculate the computing power resource and task matching ratio of the computing node; Based on the computing power resources and task matching ratio of computing nodes, the parameter server is used to distribute part of the sample load in the slowest node to the fastest node. An optimization model is established with the optimization goal of minimizing the time interval between the slowest node and the fastest node to complete the iteration, and the sample load distribution optimization plan is calculated.
2. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 1, characterized in that: According to the obtained average operation intensity of operators in the target neural network model, the method of counting the proportion of computation-intensive operators and the proportion of storage access-intensive operators includes: The operators with higher operation intensity than the average value are regarded as computationally intensive operators; Operators with operation intensity lower than the average are regarded as storage-intensive operators; According to the average operation intensity of operators and the total number of operators, the proportion of computation-intensive operators and the proportion of storage access-intensive operators are counted.
3. The resource dynamic analysis and sample load scheduling optimization method for edge distributed training according to claim 1 or 2, characterized in that: The task execution intensity value is calculated according to the total number of training samples of the load and the load completion time, wherein the calculation formula of the task execution intensity value is expressed as: (3); In the formula, E w,d Represents a compute node d In running load w The task execution intensity value at Capacity w Indicates load w The total number of training samples, Time w, d Represents a compute node d The load completion time for executing load w.
4. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 3 is characterized in that: The computing power resource evaluation value is calculated according to the computing power resource utilization rate and the task execution intensity value, wherein the calculation formula of the computing power resource evaluation value is expressed as: (4); In the formula, N Indicates the performance evaluation value of computing resources. w Indicates load, W represents a single resource-intensive workload set, d represents a computing node, D represents a collection of computing nodes, Represents a compute node d In running load w The computing resource utilization rate at that time, Represents a compute node d In running load w The task execution intensity value at that time, n represents the total number of loads of a single resource-intensive load set.
5. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 4 is characterized in that: According to the computing power resources, the proportion of computing-intensive operators and the proportion of storage access-intensive operators are used as weight adjustment factors to determine the distortion radar chart, including: Dividing the computing power resources into computing capacity and storage capacity, the computing capacity includes CPU performance and GPU performance, and the storage capacity includes memory performance and disk performance; Build a radar chart based on computing power and storage capacity; The proportion of computationally intensive operators and the proportion of storage access intensive operators are used as weight adjustment factors to distort the radar chart to obtain a distorted radar chart.
6. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 5, characterized in that: The computing power resource evaluation value is marked in the distorted radar chart and the computing power resource and task matching ratio of the computing node is calculated, wherein the calculation formula of the computing power resource and task matching ratio is expressed as: (6); In the formula, m Indicates the matching ratio between computing resources and tasks. S CGMD Indicates the area enclosed by the standardized computing resource evaluation value markers of CPU performance C, GPU performance G, memory performance M, and disk performance D. S rador Represents the total area of the distorted radar chart.
7. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 6, characterized in that: Based on the computing power resource and task matching ratio of the computing node, the parameter server is used to distribute the sample load in the slowest node to the fastest node. The optimization model is established with the optimization goal of minimizing the time interval between the slowest node and the fastest node to complete the iteration. The sample load distribution optimization scheme is calculated, including: According to the computing power resources and task matching ratio of all computing nodes, the parameter server is used to distribute the sample load of the slowest node to the fastest node, and the iterative training completion time of the fastest node and the iterative training completion time of the slowest node and the sample load of the fastest node and the sample load of the slowest node are obtained; According to the fastest node iteration training completion time and the slowest node iteration training completion time and the fastest node sample load and the slowest node sample load, an optimization model is established with the goal of minimizing the time interval between the fastest node and the slowest node to complete the iteration, and the sample load distribution optimization solution is obtained.
8. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 7, characterized in that: According to the computing power resource and task matching ratio of the computing node, the parameter server is used to distribute the sample load in the slowest node to the fastest node. The sample load distributed to the computing node by the parameter server is expressed as: (7); In the formula, f d Indicates distribution to computing nodes d The sample load, m d Represents a compute node d The matching degree between computing resources and tasks, F represents the total number of training samples of the load, m Indicates the matching ratio between computing resources and tasks.
9. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 7, characterized in that: In the process of using the parameter server to distribute the sample load of the slowest node to the fastest node, the load determines the node iteration training completion time, where the node iteration training completion time T With load f The relationship between them is expressed as: (8); In the formula, T Indicates the completion time of node iteration training, f Indicates the load, The slope parameter represents the linear relationship between completion time and load, An offset representing the completion time of a compute node.
10. The method for dynamic resource analysis and sample load scheduling optimization for edge distributed training according to claim 9, characterized in that: According to the fastest node iteration training completion time and the slowest node iteration training completion time and the fastest node sample load and the slowest node sample load, the goal is to minimize the time interval between the fastest node and the slowest node to complete the iteration, where the optimization target is expressed as: (9); In the formula, The slope parameter represents the linear relationship between completion time and load, Indicates the fastest node iteration training completion time, represents the portion of the sample load that is allocated from the slowest node to the fastest node, Indicates the offset of the completion time of the computing node, Indicates the slowest node iteration training completion time, min Indicates minimization.
Citation Information
Patent Citations
Dynamic resource allocation method in mobile edge computing environment and system thereof
CN114064294A
GPU computing power pool intelligent management method and system
CN117971475A