AI development optimization system based on dynamic learning and adaptive algorithm
By monitoring GPU load changes in real time and dynamically learning task topology, and combining graph neural networks and attention mechanisms to optimize task segmentation and communication paths, the problem of uneven resource allocation in existing technologies is solved, and efficient AI development resource scheduling and task optimization are achieved.
Patent Information
- Application Number
- CN202511017059.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-23
- Publication Date
- 2025-11-07
AI Technical Summary
Existing technologies are insufficient in terms of flexibility in dynamic load adjustment and task partitioning, resulting in unbalanced resource allocation, inability to effectively correlate task data flow characteristics with hardware status, difficulty in capturing the complex dependencies between multi-granularity computing units in deep learning tasks, and resulting in unbalanced communication overhead and computing load.
By collecting GPU usage data and transmission channel status data, load changes are monitored in real time, and separate operation signals are generated. The graph neural network is used to dynamically learn the topology of the computing task and divide it into subtasks. Transmission channel identifiers are assigned to subtasks. An attention mechanism is used to bind idle computing units and transmission channels to generate dedicated communication paths. The detection module continuously optimizes the channel signal turbidity and triggers path replacement or merging operation signals to adjust the task processing progress.
It achieves efficient resource scheduling and task optimization, improves the granularity of task partitioning and resource adaptation efficiency, reduces communication latency and signal interference, and enhances the collaborative utilization rate of heterogeneous computing units.
Smart Images

Figure CN120911637A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of artificial intelligence, and particularly relates to an AI development optimization system based on dynamic learning and adaptive algorithm. BACKGROUND
[0002] In the field of AI development, resource scheduling technology based on dynamic learning and adaptive algorithm has become a key direction to improve the efficiency of GPU computing. In recent years, the surge in demand for heterogeneous computing resources for deep learning tasks has driven the integration of dynamic scheduling strategies and graph neural networks. Industry mainstream solutions allocate tasks by monitoring GPU load status and combining static priority rules, and introduce attention mechanisms to optimize the matching efficiency of computing units and transmission channels. In addition, the analysis of task topology structure gradually evolves from manually defined rules to end-to-end modeling based on deep learning, laying a foundation for the performance optimization of AI development systems, especially in task decomposition, communication path planning and resource adaptation, forming a series of mature methods.
[0003] However, the prior art has deficiencies in dynamic load adjustment and task segmentation flexibility. Traditional scheduling frameworks usually use sliding window average method or threshold judgment strategy to identify GPU load scenarios, but their response to instantaneous fluctuations is lagging, which can easily cause resource allocation imbalance, and they cannot effectively associate task data flow characteristics with dynamic adaptation of hardware status. In terms of task division, static block strategy is difficult to capture the complex dependency relationship between multi-granularity computing units in deep learning tasks, resulting in imbalance between communication overhead and computing load among sub-tasks. SUMMARY
[0004] In view of the above existing problems, the present application is proposed.
[0005] Therefore, the present application provides an AI development optimization system based on dynamic learning and adaptive algorithm to solve the problem of insufficient dynamic load adjustment and task segmentation flexibility.
[0006] To solve the above technical problems, the present application provides the following technical solutions:
[0007] This invention provides an AI development optimization system based on dynamic learning and adaptive algorithms, comprising: a data acquisition module, which acquires GPU usage data and transmission channel status data, monitors load change trends in real time based on GPU usage data, and generates a separation operation signal; an identification module, which triggers computation task parsing based on the separation operation signal, dynamically learns the topology of the computation task through a graph neural network and divides it into subtasks, and assigns transmission channel identifiers to the subtasks; a path module, which queries the idle status of each computing unit of the GPU, binds idle computing units with transmission channel identifiers through an attention mechanism, and generates a dedicated communication path; a detection module, which runs the subtasks in the dedicated communication path, continuously detects GPU storage usage information and signal interference of the subtasks, and outputs the channel signal scrambling degree; a triggering module, which sets a scrambling degree threshold, compares the scrambling degree threshold with the channel signal scrambling degree, and triggers a path substitution signal and a merging operation signal; and a merging module, which pauses the subtask processing process based on the merging operation signal, collects the intermediate state information of the subtasks, merges them according to the operation sequence of the subtasks, and outputs the complete task.
[0008] As a preferred embodiment of the AI development and optimization system based on dynamic learning and adaptive algorithms described in this invention, the steps of collecting GPU usage data and transmission channel status data, monitoring load change trends in real time based on GPU usage data, and generating separation operation signals are as follows:
[0009] Collect GPU usage data and transmission channel status data;
[0010] By analyzing the sliding window of GPU usage data using EWMA, and then weighting the GPU usage rate in the GPU usage data according to the time decay factor within the sliding window, the load change rate is generated.
[0011] By comparing the load change rate of the current sliding window with that of adjacent sliding windows, the GPU load scenario can be identified.
[0012] When a GPU load scenario is detected, a separation operation signal is immediately generated.
[0013] As a preferred embodiment of the AI development and optimization system based on dynamic learning and adaptive algorithms described in this invention, the steps of triggering the analysis of the computation task according to the separation operation signal, dynamically learning the topology of the computation task and dividing it into sub-tasks through a graph neural network, and assigning transmission channel identifiers to the sub-tasks are as follows:
[0014] Trigger the separation operation signal to read the computation task and transmission channel status data from the GPU task queue;
[0015] The computation task is decomposed into task blocks, and the task blocks are used as task nodes. Task edges are generated according to the data flow direction between task nodes.
[0016] combining the task nodes and the task edges to generate a task graph;
[0017] dynamically learning the task graph through a graph neural network, aggregating embedding information of the task nodes and adjacent task nodes in the task graph to generate embedding vectors, and adjusting the task graph based on the embedding vectors to generate an optimized task graph;
[0018] grouping the task nodes of the optimized task graph through a clustering algorithm to output sub-tasks;
[0019] matching data transmission requirements of the sub-tasks with transmission channel state data, and assigning a unique transmission channel identifier to each sub-task.
[0020] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the operation task is divided into task blocks, the task blocks are taken as task nodes, and task edges are generated according to the data flow direction between the task nodes, and the specific steps are,
[0021] The operation task is divided into task blocks that can be independently executed;
[0022] The task blocks are taken as task nodes, and original attributes of calculation requirements and resource occupation are added to the task nodes;
[0023] The data dependency relationship between the task nodes is analyzed through DFG, and the task edges are generated according to the data dependency relationship and the data flow direction.
[0024] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the task nodes of the optimized task graph are grouped through a clustering algorithm to output sub-tasks, and the specific steps are,
[0025] All task nodes and original attributes corresponding to the task nodes are extracted from the optimized task graph;
[0026] According to the embedding vectors and the original attributes of the task nodes, the node similarity values between the task nodes are calculated through cosine similarity;
[0027] The task nodes are hierarchically clustered according to the node similarity values to generate sub-tasks.
[0028] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the idle states of each calculation unit of the GPU are queried, the idle calculation units are bound to the transmission channel identifiers through an attention mechanism to generate exclusive communication paths, and the specific steps are,
[0029] The current idle states of each calculation unit are obtained from a GPU monitoring interface, and the hardware identifiers of each calculation unit are recorded;
[0030] Encode the idle computing unit hardware identifier and the transmission channel identifier respectively to generate a computing vector and a channel vector;
[0031] Weight the computing vector and the channel vector through the attention mechanism to generate a vector fitness degree;
[0032] Combine the idle computing unit and the transmission channel identifier according to the vector fitness degree to generate an exclusive communication path.
[0033] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the combination of the idle computing unit and the transmission channel identifier according to the vector fitness degree refers to sorting the vector fitness degree in reverse order, and selecting the computing unit with the largest vector fitness degree and the transmission channel identifier to combine.
[0034] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the running of the subtask in the exclusive communication path and the continuous detection of the GPU storage occupation information and signal interference of the subtask to output the channel signal complexity include the following specific steps,
[0035] Load the subtask into the exclusive communication path for running to obtain the GPU storage occupation information and the signal interference data of the exclusive communication path during the running of the subtask;
[0036] Correlation analysis is performed on the GPU storage occupation information and the signal interference data, and the weight proportion of the GPU storage occupation information and the signal interference data is set according to the correlation analysis result;
[0037] The GPU storage occupation information and the signal interference data are weighted and averaged according to the weight proportion to generate the channel signal complexity.
[0038] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, the setting of the complexity threshold value, the comparison of the complexity threshold value and the channel signal complexity, and the triggering of the path replacement signal and the merging operation signal include the following specific steps,
[0039] Set the complexity threshold value according to the performance requirement of the computing unit;
[0040] Compare the complexity threshold value with the channel signal complexity to determine whether to trigger the path replacement signal and the merging operation signal;
[0041] When the channel signal complexity exceeds the complexity threshold value, the path replacement signal is triggered, and the adjacent exclusive communication path is selected for subtask running;
[0042] When the channel signal complexity does not exceed the complexity threshold value, the merging operation signal is triggered.
[0043] As a preferred scheme of the AI development optimization system based on dynamic learning and adaptive algorithm, wherein: the merging operation signal based task processing process is suspended, and the intermediate state information of the subtask is recovered, the merging is performed according to the operation sequence of the subtask, and the complete task is output, and the specific steps are,
[0044] The subtask suspension instruction is sent to the computing unit based on the merging operation signal;
[0045] According to the subtask suspension instruction, each subtask is suspended, and the intermediate state information of each subtask is extracted;
[0046] The intermediate state information is logically spliced according to the operation sequence of the subtask, and the complete task is output.
[0047] The beneficial effects of the present application are: through the cooperation of dynamic task topology analysis and adaptive communication path binding, efficient resource scheduling and task optimization of AI development are realized. Based on the dynamic learning operation task topology structure of the graph neural network, the clustering algorithm is combined to divide the subtask and allocate the transmission channel identifier, so that the task decomposition has multi-dimensional dependence relationship modeling capability, and the problem of insufficient adaptability of static block strategy to complex data flow characteristics is solved, thereby improving the granularity accuracy and resource adaptation efficiency of task division. The idle computing unit and the transmission channel identifier are bound to generate a dedicated communication path by using the attention mechanism, so that the hardware state and the communication demand are dynamically coupled and optimized, the communication delay and signal interference are effectively reduced, and the utilization rate of the heterogeneous computing unit is improved. BRIEF DESCRIPTION OF DRAWINGS
[0048] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0049] Fig. 1 The module diagram of the AI development optimization system based on dynamic learning and adaptive algorithm.
[0050] Fig. 2 The flowchart for generating the separation operation signal.
[0051] Fig. 3 The flowchart for dividing the subtask and allocating the transmission channel identifier.
[0052] Fig. 4 The flowchart for generating the dedicated communication path. DETAILED DESCRIPTION
[0053] In order to make the above objectives, characteristics and advantages of the present application more apparent, comprehensible and easier to be understood, specific embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0054] In the following description, specific details are set forth in order to provide a thorough understanding of the application. However, the application can be practiced without the specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to obscure the application.
[0055] Secondly, the "one embodiment" or "embodiment" referred to herein means that the specific features, structures or characteristics can be included in at least one implementation of the present application. "In one embodiment" appearing in different places in the specification does not mean the same embodiment, nor is it an independent or alternative embodiment mutually exclusive with other embodiments.
[0056] Reference Figs. 1-4 For one embodiment of the present application, the embodiment provides an AI development optimization system based on dynamic learning and adaptive algorithm, comprising the following steps:
[0057] The acquisition module acquires GPU occupation data and transmission channel state data, and generates a separation operation signal according to the real-time monitoring of the load change trend of the GPU occupation data.
[0058] The GPU occupation data and the transmission channel state data are acquired.
[0059] Specifically, the GPU monitoring interface is used to acquire the GPU computing unit occupation in real time, including the current GPU occupation rate and performance index parameters of each computing unit. At the same time, the state information of each transmission channel is collected, such as whether the transmission channel is idle, the bandwidth usage rate, the delay and whether there is an error packet. The GPU occupation data and the transmission channel state data are derived from direct reading at the hardware level.
[0060] The sliding window of the GPU occupation data is analyzed by EWMA, and the GPU occupation rate in the GPU occupation data is weighted and averaged according to the time decay factor in the sliding window to generate a load change rate.
[0061] Specifically, after receiving the GPU occupancy data, a fixed-length time sliding window method is used to process the GPU occupancy data, for example, a 5-minute length sliding window is selected, and whenever a new data point is added, the oldest data point is removed. For each data point in the sliding window, different weights are assigned according to the time distance from the current time, and the closer the data point is to the current time, the higher the weight, which reflects the concept of time decay, and can more sensitively capture short-term fluctuations in load. The weighted average value calculated represents the load change rate, which can effectively reflect the increasing or decreasing trend of GPU resource usage.
[0062] The load change rate formula is,
[0063]
[0064] where L represents the GPU resource usage load change rate, N represents the length of the sliding window, i represents the index identifier of the i-th data point in the sliding window, w i represents the GPU occupancy rate of the i-th data point in the sliding window, g i represents the time decay weight.
[0065] Compare the load change rates of the current sliding window and the adjacent sliding window to identify the GPU load scenario.
[0066] Specifically, after obtaining the load change rate of the current sliding window, the load change rate of the current sliding window is compared with the load change rate of the previous sliding window. For example, when it is found that the load change rates of several consecutive sliding windows show a gradual upward trend, it means that the demand for GPU of the running computing node is increasing. If the load change rate suddenly decreases, it may be because a task has been completed, releasing a large amount of GPU resources. By comparing the load change rates of the previous sliding window and the adjacent sliding window, the current GPU load scenario can be accurately identified, such as the stable period, the growth period and the decline period.
[0067] When the GPU load scenario is identified, a separation operation signal is immediately generated.
[0068] When it is determined that the current GPU load scenario is in a non-steady state, such as rapidly increasing load or resource bottleneck, the corresponding response mechanism is quickly started, and a separation operation signal is generated. The separation operation signal serves as a trigger, aiming to inform the relevant task scheduling mechanism to prepare to re-evaluate and optimize the existing operation tasks. For example, in the case of detecting a sharp rise in the load change rate, the separation operation signal will prompt the computing unit to pause receiving new high-load tasks, and to split or rearrange existing tasks to balance the load distribution. This not only avoids the risk of performance degradation or even collapse of the GPU due to overload, but also improves the overall task processing efficiency and stability.
[0069] An identification module triggers operation task parsing according to a separation operation signal, dynamically learns operation task topology structure through a graph neural network, divides sub-tasks, and allocates transmission channel identification to the sub-tasks.
[0070] A separation operation signal is triggered, and operation task and transmission channel state data are read from a GPU task queue;
[0071] Specifically, after triggering the separation operation signal, a task parsing process is immediately started: a list of operation tasks in a waiting execution state is obtained by accessing a task scheduling interface of the GPU, and transmission channel state data associated with the operation tasks is synchronously read. The content of the operation task includes image processing, model training and inference calculation types. The structure of the operation task is usually composed of multiple dependent operation units, and the transmission channel state data includes bandwidth usage, delay indicators and current occupation state information of each communication path.
[0072] The operation task is split into independently executable task blocks.
[0073] After obtaining the complete operation task content, the operation task is structurally decomposed, and the operation task is divided into multiple independently executable task blocks according to functional logic. For example, a deep learning training task can be split into multiple task blocks such as forward propagation, loss calculation and back propagation. Each task block has a clear input-output relationship. Splitting not only preserves the execution order within the operation task, but also provides structural support for subsequent parallel scheduling and communication path binding. There is a data dependency between task blocks, and the data dependency relationship between task blocks needs to be recorded during the splitting process.
[0074] The task blocks are used as task nodes, and the task nodes are added with original attributes of computing requirements and resource occupation;
[0075] After completing the task block division, the task blocks are used as task nodes in the graph structure. The task node is a basic element for representing a task execution unit. Descriptive original attributes are added to the task node, including the required computing resource type (such as floating point operation unit, memory bandwidth), the estimated computing time, the memory consumption, and the dependency relationship strength between tasks. The original attributes are derived from the definition file of the task itself and the statistical information in the historical execution record, providing more rich context support to make the task scheduling strategy more suitable for actual running requirements.
[0076] The data dependency relationship between the task nodes is analyzed through DFG, and the task edges are generated according to the data dependency relationship and the data flow direction.
[0077] After the task node is constructed, it is necessary to determine whether there is a data flow relationship between the task nodes. The data dependency relationship is identified by analyzing the input-output connection between the task blocks, for example, whether the output result of a certain task is directly used as the input parameter of another task. At the same time, the direction of data flow needs to be determined. The task edge is generated according to the data dependency relationship and the data flow direction. The task edge not only represents the association between the two task nodes, but also carries the path characteristics of data transmission;
[0078] The task nodes and the task edges are combined to generate a task graph;
[0079] Specifically, the task nodes and the task edges are combined according to the connection relationship between the task nodes to form a complete task graph. The task graph clearly shows the topological layout of the entire operation task in the form of a graph structure. The task nodes form the vertices of the graph, and the task edges form the edges of the graph. The task graph not only helps to intuitively understand the execution order and data flow logic between tasks, but also provides a standardized input format for dynamic learning using a graph neural network;
[0080] The task graph is dynamically learned through a graph neural network to aggregate the embedding information of the task nodes and adjacent task nodes to generate an embedding vector, and the embedding vector is used to adjust the task graph to generate an optimized task graph;
[0081] The task graph is modeled in depth using a graph neural network. First, the task nodes and the original attributes are encoded into embedding vectors in a high-dimensional space. Then, through the message passing mechanism of the graph neural network, the embedding information between each task node and adjacent task nodes is aggregated to form a node representation with better semantic expression ability. The embedding vector is used to adjust the structure of the task graph, such as merging similar task nodes, reordering the execution order, and optimizing the data flow path. Finally, a dynamically optimized task graph, called an optimized task graph, is generated.
[0082] All task nodes and corresponding original attributes of the task nodes are extracted from the optimized task graph;
[0083] After the generation of the optimized task graph is completed, all task nodes and corresponding original attributes are extracted from the optimized task graph. The original attributes refer to the computing requirements and resource occupation information of the task nodes in the initial definition stage. The task nodes contain the structural features optimized by the graph neural network, while the original attributes still retain the computing requirements and resource occupation information of the task nodes in the initial definition stage. The computing requirements and resource occupation information are completely retained for subsequent clustering analysis and task division operations;
[0084] According to the embedding vectors and the original attributes of the task nodes, the node similarity values between the task nodes are calculated by cosine similarity;
[0085] Specifically, after obtaining the task nodes, embedding vectors and original attributes, the similarity between the task nodes is calculated: the embedding vectors and the original attributes of the task nodes are fused, the embedding vectors and the original attributes are spliced in the feature space to form a unified numerical representation, so as to retain the structural features and attribute features of the embedding vectors and the original attributes, generate a feature vector, and measure the proximity of different task nodes in the feature space by using a cosine similarity algorithm. The higher the cosine similarity value is, the more similar the task nodes are. The node similarity value between the task nodes is calculated by using the cosine similarity, so as to quantify the structural and functional similarity between the task nodes.
[0086] The node similarity value formula is,
[0087]
[0088] wherein S represents the node similarity value between the task nodes, a represents the feature vector of the task node, b represents the feature vector of the adjacent task node, ||a|| represents the Euclidean norm of the feature vector a of the task node, that is, the length of the feature vector a in the high-dimensional space, and ||b|| represents the Euclidean norm of the feature vector b of the adjacent task node, that is, the length of the feature vector b in the high-dimensional space.
[0089] The task nodes are hierarchically clustered according to the node similarity value to generate sub-tasks.
[0090] After obtaining the node similarity value between the task nodes, the task nodes are organized and classified by using a hierarchical clustering algorithm. The hierarchical clustering is an unsupervised learning method without pre-specifying the number of clusters. The hierarchical clustering gradually constructs the hierarchical structure between the task nodes by continuously splitting the clusters. According to the size of the node similarity value, the task nodes with high similarity are sequentially classified into the same group to form a plurality of task clusters with high internal correlation. Each task cluster corresponds to a sub-task. The division mode of the hierarchical clustering not only ensures the internal coherence of the sub-tasks, but also reduces the communication overhead between the sub-tasks, thereby improving the parallel efficiency and resource utilization of the overall task execution.
[0091] The data transmission requirements of the sub-tasks are matched with the transmission channel state data, and a unique transmission channel identifier is allocated to each sub-task.
[0092] After completing the sub-task division, assign a transmission channel to each sub-task, match the data transmission requirements of each sub-task (such as required bandwidth, delay tolerance and data size) with the current available transmission channel state data, including the idle state, current load level, bandwidth capacity and historical transmission quality information of each channel, by evaluating the matching degree of data transmission requirements and transmission channel state data, select the transmission channel that meets the sub-task requirements, and assign a unique transmission channel identifier to the sub-task, which remains unchanged throughout the scheduling process, ensuring that the sub-task can obtain stable and efficient communication support during execution, avoiding transmission bottleneck problems caused by channel congestion or performance mismatch.
[0093] Path module, query the idle state of each computing unit of GPU, bind the idle computing unit with the transmission channel identifier through attention mechanism, and generate exclusive communication path.
[0094] Get the current idle state of each computing unit from the GPU monitoring interface, and record the hardware identifier of each computing unit;
[0095] Specifically, first, get the real-time running state of all computing units through the GPU monitoring interface, the data provided by the GPU monitoring interface includes the current idle state of each computing unit (such as whether it is in idle, occupied or partial load state), performance parameters of the computing unit (such as current temperature, power consumption and computing unit utilization), and hardware identification information, hardware identification usually consists of physical number, model specification and unique serial number of computing unit, which is used to distinguish the individual characteristics of different computing units, ensure that the query can be based on the latest hardware state information for resource matching, at the same time, through the record of hardware identification, provide a unique anchor point for subsequent vector coding, avoid scheduling errors caused by device repetition or confusion, by collecting the idle state of computing unit in real time, can dynamically identify the current available computing resources;
[0096] Encode the idle computing unit hardware identifier and transmission channel identifier respectively to generate computing vector and channel vector;
[0097] Independently encode the hardware identifier of the computing unit in idle state and the allocated transmission channel identifier, the encoding of computing unit hardware identifier adopts the numerical method based on attribute mapping, converts the hardware model into a preset numerical code, converts the serial number into a hash value, and combines the binary representation of the current idle state (such as "idle" corresponding to 1, "occupied" corresponding to 0) to generate a fixed dimension computing vector;
[0098] The encoding of the transmission channel identifier is based on bandwidth capacity (such as maximum bandwidth 10GB / s), delay tolerance and historical transmission quality indicators, and the bandwidth capacity, delay tolerance and historical transmission quality indicators are converted into standardized values through normalization processing, and combined with the unique number of the channel to form a channel vector. The vector and the channel vector are designed as fixed-length numerical sequences, while retaining the core feature information of the hardware and the channel;
[0099] The calculation vector and the channel vector are weighted by the attention mechanism to generate a vector fitness;
[0100] After the calculation vector and the channel vector are generated, the attention mechanism is used to dynamically associate them. First, the calculation vector and the channel vector are input into the attention network, and the attention weight is determined by the similarity between each dimension in the vector and the corresponding dimension in the channel vector. Each element in the attention weight represents the matching strength of the calculation unit and the transmission channel in a specific dimension. The attention weight and the calculation vector and the channel vector are fused by weighted summation to generate the final vector fitness. The vector fitness reflects the comprehensive score of the calculation unit and the transmission channel in performance compatibility (such as bandwidth matching), resource demand matching (such as the coordination of idle state and channel load), and historical cooperation efficiency (such as the consistency of channel stability and calculation unit demand). Through the dynamic weighting of the attention mechanism, the complex relationship between the hardware and the channel can be more accurately captured, thereby improving the accuracy of resource matching;
[0101] The formula of the vector fitness is:
[0102]
[0103] Where C represents the vector fitness, m represents the total number of dimensions of the calculation vector and the channel vector, j represents the dimension identifier, D j represents the attention weight of the jth dimension, X j represents the jth dimension value of the calculation vector, Y j represents the jth dimension value of the channel vector.
[0104] According to the vector fitness, the idle calculation unit and the transmission channel identifier are combined to generate a dedicated communication path.
[0105] After the vector fitness calculation is completed, the fitness values of all computing units and transmission channels are arranged in descending order to form a priority sequence from high to low. After the sorting is completed, the computing unit with the highest vector fitness is selected and the corresponding transmission channel identifier is bound to generate a dedicated communication path. For example, if the vector fitness of a certain computing unit and a certain transmission channel is the highest, they are marked as priority matching objects, and the binding relationship is recorded as a dedicated communication path. The hardware identifier of the computing unit and the identifier of the transmission channel are combined to generate path description information. The maximum vector fitness ensures the optimal matching of the computing unit and the transmission channel in terms of performance requirements (such as bandwidth matching), resource utilization (such as the synergy of idle state and channel load), and stability (such as the consistency of channel historical quality and computing unit demand). At the same time, the descending order sorting mechanism ensures the fairness and dynamic response capability of the scheduling strategy.
[0106] A detection module runs the sub-tasks in the dedicated communication path and continuously detects the GPU storage occupation information and signal interference of the sub-tasks, and outputs the channel signal complexity.
[0107] Load the sub-tasks into the dedicated communication path for running, and obtain the GPU storage memory occupation information and signal interference data (such as bandwidth utilization, delay jitter mean and crosstalk intensity) of the dedicated communication path during the running of the sub-tasks;
[0108] Specifically, the sub-tasks with allocated transmission channel identifiers are loaded into the corresponding dedicated communication paths for execution. The loading process includes synchronously sending the computing unit allocation instructions of the sub-tasks and the transmission channel binding information to the GPU scheduling interface to ensure that the sub-tasks can start running based on the hardware resources of the dedicated communication path. During the execution of the sub-tasks, the GPU memory occupation information of the GPU storage is continuously collected through the GPU monitoring interface, including the real-time memory occupation amount of the GPU memory during the running of the sub-tasks, the memory allocation and release frequency, and the hot area distribution of the memory access. The signal interference data of the dedicated communication path is obtained through the GPU monitoring interface of the dedicated communication path, including the bandwidth utilization (such as the current bandwidth usage percentage), the delay jitter mean (such as the standard deviation of the continuous data packet transmission delay), and the crosstalk intensity (such as the amplitude of the signal interference of adjacent channels). The memory occupation information and the signal interference data are sampled at fixed time intervals (such as once per second) and recorded in a standardized format.
[0109] Correlation analysis is performed on the memory occupation information and the signal interference data, and the weight proportion of the memory occupation information and the signal interference data is set according to the correlation analysis result;
[0110] The memory occupancy information in the memory occupancy information is compared with the bandwidth utilization in the signal interference data, the corresponding relationship between the memory occupancy peak and the bandwidth bottleneck is identified, the memory access frequency is mapped with the delay jitter average, whether the high-frequency memory access causes the delay jitter of the communication path to be intensified is judged, the memory hotspot region distribution is associated with the crosstalk strength, whether the high occupancy of the specific memory region causes the signal interference of the adjacent channel is evaluated, for example, if a sub-task reaches 80% of the memory occupancy rate, the bandwidth utilization simultaneously rises to 95%, and the delay jitter average increases from 1ms to 3ms, it is indicated that there is a strong correlation between the memory occupancy and the communication path performance, based on the analysis result, the weight proportion of the memory occupancy information and the signal interference data is set, the setting of the weight proportion needs to follow the dynamic adjustment principle, for example, when the influence of the memory occupancy on the communication path performance is significant, the weight of the memory occupancy information can be set to 0.6, the weight of the signal interference data is set to 0.4, if the signal interference data has a greater influence on the overall performance, the weight proportion is adjusted to 0.4 and 0.6;
[0111] The memory occupancy information and the signal interference data are weighted and averaged according to the weight proportion to generate the channel signal complexity;
[0112] The memory occupancy information and the signal interference data are normalized to the interval [0, 1], and the channel signal complexity is calculated by weighted average to ensure the dynamic balance evaluation of the memory occupancy information and the signal interference data in different scenarios;
[0113] The channel signal complexity formula is,
[0114] E=α·Q+β·F;
[0115] Wherein, E represents the channel signal complexity of the memory occupancy information and the signal interference data, α represents the weight value of the memory occupancy information, Q represents the comprehensive value of the normalized memory occupancy information, β represents the weight value of the signal interference data, and F represents the comprehensive value of the normalized signal interference data;
[0116] The trigger module sets the complexity threshold, compares the complexity threshold with the channel signal complexity, and triggers the path replacement signal and the merging operation signal.
[0117] According to the performance requirement of the calculation unit, the complexity threshold is set;
[0118] Specifically, the performance requirements of the computing unit include the maximum tolerable GPU memory occupancy, the maximum bandwidth utilization of the communication path, the upper limit of the average delay jitter, and the threshold of the crosstalk intensity (e.g., the interference amplitude does not exceed 0.5 dB), which is set based on the physical interference tolerance requirements of the computing unit communication channel. The threshold of the mixing degree is set by considering the tolerance range of the performance indicators and calibrated by the critical value in the historical running data. For example, when the computing unit appears the phenomenon that the average delay jitter of the communication path increases from 1 ms to 3 ms when the GPU memory occupancy is 80%, the threshold of the mixing degree is set to 0.75 to ensure that the response mechanism can be triggered in advance when approaching the critical state;
[0119] The mixing degree threshold is compared with the channel signal mixing degree to determine whether to trigger the path replacement signal and the merging operation signal.
[0120] The comparison process adopts periodic evaluation with fixed time intervals. If the current channel signal mixing degree is greater than the mixing degree threshold, it is determined that the current communication path has performance risks, and the path replacement signal is triggered. If the current channel signal mixing degree is less than or equal to the mixing degree threshold, it is determined that the communication path is within an acceptable range, and the merging operation signal is triggered.
[0121] When the channel signal mixing degree exceeds the mixing degree threshold, the path replacement signal is triggered, and the adjacent dedicated communication path is selected for sub-task running.
[0122] First, the topology structure of the current dedicated communication path is queried to identify the dedicated communication paths adjacent to the physical location of the current dedicated communication path (such as adjacent channels connected by a PCIe bus or channels sharing the same memory controller). From the generated dedicated communication paths, the adjacent communication paths in the idle state are filtered out, and it is verified whether the bandwidth capacity and delay indicators meet the requirements of the current sub-task. For example, if the bandwidth utilization of the current dedicated communication path has reached 95% and the bandwidth utilization of the adjacent channel is only 60%, the adjacent channel is selected as the replacement path. The path replacement signal will contain the hardware identifier of the target communication path and the binding instruction, and is sent to the computing unit through the GPU scheduling interface to interrupt the execution process of the current dedicated communication path and migrate the sub-task to the replacement path for running.
[0123] When the channel signal mixing degree does not exceed the mixing degree threshold, the merging operation signal is triggered.
[0124] The merging module suspends the sub-task processing process based on the merging operation signal, recovers the intermediate state information of the sub-task, merges according to the operation sequence of the sub-task, and outputs the complete task.
[0125] The sub-task suspension instruction is sent to the computing unit based on the merging operation signal.
[0126] Specifically, after generating the merge operation signal, a sub-task suspension instruction is sent to the computing unit through the GPU scheduling interface immediately, the sub-task suspension instruction containing the hardware identifier of the target sub-task and a suspension operation code, for interrupting the execution flow of the current sub-task, the sending process adopting a priority queue mechanism to ensure that the sub-task suspension instruction can be processed in priority to other task scheduling instructions, the execution of the sub-task suspension instruction including: first freezing the computing resource allocation of the computing unit to the current sub-task (such as stopping the calling of the floating point operation unit), then saving the execution context of the sub-task (such as the register state and the program counter position) to the reserved area in the video memory, and marking the sub-task as a suspended state, ensuring that the sub-task will not lose the processed data state when suspended, and at the same time releasing the resources of the computing unit for use by other tasks;
[0127] According to the sub-task suspension instruction, each sub-task is suspended, and intermediate state information of each sub-task is extracted;
[0128] According to the operation sequence of the sub-task, the intermediate state information is logically spliced to output a complete task;
[0129] After completing the suspension operation of the sub-task, the extraction of the intermediate state information from all sub-tasks in the suspended state is started, the intermediate state information including temporary data (such as incomplete matrix operation results and local regions of image processing) cached in the video memory, task control blocks in the memory, and untransmitted data packets on the communication path, the data storage blocks are read one by one according to the hardware identifier of the sub-task, and the data storage blocks are logically spliced according to the operation sequence of the sub-task, for example, in an image processing task, if sub-task A processes the left half of the image and sub-task B processes the right half, the intermediate state information of the two is spliced horizontally to generate a complete image output, after splicing, the integrated data is written to the final task output buffer, and the suspended state of all sub-tasks is released through the GPU scheduling interface, so that the computing unit returns to the idle state, by reserving the intermediate state information of the sub-task and recombining according to the operation sequence, the output consistency of the complete task is ensured, at the same time, the resource overhead caused by frequent path switching is avoided, the overall task processing efficiency and stability are improved, and resource waste is reduced.
[0130] To sum up, the application realizes efficient resource scheduling and task optimization of AI development through the cooperation of dynamic task topology analysis and adaptive communication path binding. The topology structure of operation tasks is dynamically learned based on a graph neural network, and a clustering algorithm is combined to divide sub-tasks and assign transmission channel identifiers, so that the task decomposition has multi-dimensional dependency modeling capability, solving the problem of insufficient adaptability of static blocking strategy to complex data flow characteristics, thereby improving the granularity accuracy of task division and resource adaptation efficiency. The idle computing unit and the transmission channel identifier are bound to generate a dedicated communication path using the attention mechanism, so that the hardware state and communication demand are dynamically coupled and optimized, effectively reducing communication delay and signal interference, and improving the collaborative utilization rate of heterogeneous computing units.
[0131] It should be noted that the above embodiments are only used to illustrate the technical solutions of the present application and not to limit it. Although the present application has been described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that the technical solutions of the present application can be modified or replaced equivalently without departing from the spirit and scope of the technical solutions of the present application, which should be covered in the scope of the claims of the present application.
Claims
1. An AI development optimization system based on dynamic learning and adaptive algorithm, characterized in that: include, The acquisition module collects GPU usage data and transmission channel status data, monitors load change trends in real time based on GPU usage data, and generates separation operation signals. The identification module triggers the parsing of the operation task based on the separation operation signal, dynamically learns the topology of the operation task through a graph neural network and divides it into sub-tasks, and assigns transmission channel identifiers to the sub-tasks. The path module queries the idle status of each computing unit in the GPU, and binds the idle computing units with the transmission channel identifier through an attention mechanism to generate a dedicated communication path; The detection module runs subtasks in a dedicated communication path, continuously detecting GPU storage usage and signal interference of the subtasks, and outputting the signal scrambling level of the output channel. The trigger module sets a promiscuity threshold, compares the promiscuity threshold with the promiscuity of the channel signal, and triggers the path substitution signal and the merging operation signal. The merging module pauses the subtask processing process based on the merging operation signal, collects the intermediate state information of the subtasks, merges them according to the operation sequence of the subtasks, and outputs the complete task.
2. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: The process involves collecting GPU usage data and transmission channel status data, monitoring load changes in real time based on GPU usage data, and generating a separation operation signal. The specific steps are as follows: Collect GPU usage data and transmission channel status data; By analyzing the sliding window of GPU usage data using EWMA, and then weighting the GPU usage rate in the GPU usage data according to the time decay factor within the sliding window, the load change rate is generated. By comparing the load change rate of the current sliding window with that of adjacent sliding windows, the GPU load scenario can be identified. When a GPU load scenario is detected, a separation operation signal is immediately generated.
3. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: The steps include: triggering the analysis of the computation task based on the separation operation signal; dynamically learning the topology of the computation task and dividing it into subtasks using a graph neural network; and assigning transmission channel identifiers to the subtasks. Trigger the separation operation signal to read the computation task and transmission channel status data from the GPU task queue; The computation task is decomposed into task blocks, and the task blocks are used as task nodes. Task edges are generated according to the data flow direction between task nodes. Combine task nodes and task edges to generate a task graph; The task graph is dynamically learned through graph neural networks. The embedding information of task nodes and adjacent task nodes in the task graph is aggregated to generate embedding vectors. The task graph is then adjusted based on the embedding vectors to generate an optimized task graph. A clustering algorithm is used to group task nodes in the optimization task graph and output subtasks. Match the data transmission requirements of subtasks with the transmission channel status data, and assign a unique transmission channel identifier to each subtask.
4. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 3, wherein: The specific steps for decomposing the computational task into task blocks, using these task blocks as task nodes, and generating task edges based on the data flow direction between task nodes are as follows: Break down computational tasks into independently executable task blocks; Treat the task block as a task node, and add the original attributes of computing requirements and resource consumption to the task node; Data dependencies between task nodes are analyzed using DFG, and task edges are generated based on these dependencies and the direction of data flow.
5. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 3, wherein: The task node grouping of the optimization task graph is performed by using a clustering algorithm, and a subtask is output, and the specific steps are, All task nodes and original attributes corresponding to the task nodes are extracted from the optimization task graph; According to the embedding vectors and original attributes of the task nodes, the node similarity values between the task nodes are calculated by using cosine similarity; The task nodes are hierarchically clustered according to the node similarity values, and a subtask is generated.
6. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: The idle states of each calculation unit of the GPU are queried, the idle calculation units are bound to the transmission channel identifiers through an attention mechanism, and a dedicated communication path is generated, and the specific steps are, The current idle states of each calculation unit are obtained from the GPU monitoring interface, and the hardware identifiers of each calculation unit are recorded; The idle calculation unit hardware identifiers and the transmission channel identifiers are respectively encoded to generate a calculation vector and a channel vector; The calculation vector and the channel vector are weighted through an attention mechanism to generate a vector adaptation degree; According to the vector adaptation degree, the idle calculation units and the transmission channel identifiers are combined to generate a dedicated communication path.
7. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 6, wherein: The combination of the idle calculation units and the transmission channel identifiers according to the vector adaptation degree refers to sorting the vector adaptation degrees in reverse order, and selecting the calculation unit with the largest vector adaptation degree to combine with the transmission channel identifier.
8. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: The subtask is run in the dedicated communication path, and the GPU storage occupation information and signal interference of the subtask are continuously detected, and a channel signal mixing degree is output, and the specific steps are, The subtask is loaded into the dedicated communication path for running, and the GPU storage memory occupation information and the signal interference data of the dedicated communication path in the subtask running process are obtained; The memory occupation information and the signal interference data are associated and analyzed, and the weight proportion of the memory occupation information and the signal interference data is set according to the result of the association analysis; The memory occupation information and the signal interference data are weighted and averaged according to the weight proportion to generate a channel signal mixing degree.
9. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: The mixing degree threshold is set, the mixing degree threshold is compared with the channel signal mixing degree, and the path replacement signal and the merging operation signal are triggered, and the specific steps are, According to the performance requirements of the calculation unit, the mixing degree threshold is set; The mixing degree threshold is compared with the channel signal mixing degree to determine whether the path replacement signal and the merging operation signal are triggered; When the channel signal mixing degree exceeds the mixing degree threshold, the path replacement signal is triggered, and the adjacent dedicated communication path is selected for subtask running; When the channel signal mixing degree does not exceed the mixing degree threshold, the merging operation signal is triggered.
10. The AI development optimization system based on dynamic learning and adaptive algorithm of claim 1, wherein: Based on the merging operation signal, the subtask processing process is paused, the intermediate state information of the subtask is recovered, the subtasks are merged according to the operation sequence of the subtasks, and a complete task is output, and the specific steps are, The subtask pause instruction is sent to the calculation unit based on the merging operation signal; Each subtask is paused according to the subtask pause instruction, and the intermediate state information of each subtask is extracted; The intermediate state information is logically spliced according to the operation sequence of the subtasks to output a complete task.
Citation Information
Cited By
Edge cloud collaborative adaptive workflow scheduling method and system
CN121326536A
An edge cloud cooperative adaptive workflow scheduling method and system
CN121326536B