Cloud edge collaboration-oriented computing resource optimization configuration method
By optimizing the data matrix operation order, configuring shared memory and buffers, and optimizing scheduling functions and load distribution strategies, the problem of wasted computing resources in cloud-edge collaboration has been solved, improving computing efficiency and response speed.
Patent Information
- Application Number
- CN202511738456.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-25
- Publication Date
- 2026-02-17
AI Technical Summary
In cloud-edge collaboration, existing technologies struggle to effectively optimize computing resource allocation, leading to wasted computing resources and untimely responses for high real-time tasks such as power distribution network operations.
By optimizing the order of data matrix operations, configuring shared memory and buffers, and optimizing scheduling functions and load distribution strategies, the utilization rate of computing resources can be improved.
It improves the computational efficiency of cloud edge collaboration tasks, reduces the resource consumption of data matrix processing, and enhances the utilization rate and response speed of computing resources.
Smart Images

Figure CN121542046A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of cloud edge collaboration technology, and in particular relates to a method for optimizing the allocation of computing resources for cloud edge collaboration. Background Technology
[0002] Cloud-edge computing technology achieves efficient processing of computing resources through the collaborative application of cloud computing and edge computing technologies. Cloud computing, through the powerful big data centers and virtualized hardware abstraction computing technologies of cloud computing service centers, allocates and processes computing resources, providing centralized processing capabilities. Edge computing, configured at the source or edge of the data source, performs low-latency, high-response real-time processing, enabling instant processing of data from edge devices or systems. The synergy between the two achieves multiple advantages, including optimized computing resource allocation, real-time data processing, and high efficiency. In actual resource allocation, one or more cloud service computing centers and numerous edge computing servers typically perform joint data processing. To handle the joint processing of multi-device, multi-type data, a data matrix is needed for data allocation and management, and the system's computing resource allocation is optimized through data matrix operations. In various computing service centers, a large number of linear algebra operations are the foundation for solving various business problems. However, due to differences in hardware structure, register data processing methods, and cache processing methods among different servers, a large amount of computing resources are consumed during the execution of various businesses. Although a large number of computing tasks can be allocated to optimize the overall computing resource utilization efficiency through multi-core parallel processing and task splitting, this low-dimensional and fragmented processing cannot be well adapted to high real-time tasks, especially high-response-requirement businesses related to power distribution networks. Summary of the Invention
[0003] The purpose of this invention is to provide a method for optimizing the allocation of computing resources that can improve the computational efficiency of current cloud edge collaborative tasks, reduce the resource consumption of data matrix processing, and enhance the cloud edge collaborative processing capabilities.
[0004] To achieve the above objectives, the present invention adopts the following technical solution.
[0005] A method for optimizing the allocation of computing resources for cloud-edge collaboration includes: K0, optimizing the operation order of data matrix operation instances by sorting the memory addresses and demand of data matrix operation instances; K1, configuring data storage and shared storage in the computing service unit; K2, establishing a parallel data buffer in the shared storage for pre-fetching; K3, optimizing and matching the scheduling function to ensure that the computing service unit can achieve better data reuse; and K4, optimizing the load allocation strategy of the computing workgroup to improve the utilization rate of computing resources.
[0006] A further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration, wherein K0 specifically includes: during the computing resource allocation process, firstly, performing dimensional analysis on the data matrix operation instances that need to be input into the cloud edge computing service to determine the required amount of computing resources; establishing a data body to store the memory addresses and requirements of the data matrix operation instances, sorting them according to the order of requirements from least to most, and modifying the memory addresses according to the sorting order; and optimizing the operation order of the data matrix operation instances by synchronously mapping the data pointers of the data matrix operation instances according to the modified memory addresses.
[0007] A further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration, wherein K1 specifically includes: configuring a data storage and a shared storage in the computing service unit, the data input to the computing service unit is first stored in the shared storage, and the data that has been calculated is stored in the data storage, and the data in the shared storage can be extracted and used by all work items within the same work group.
[0008] A further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration, wherein K2 specifically includes: during each data matrix operation, in each computation cycle, further dividing the individual data blocks in the data matrix to be used, and storing them in the vector general-purpose register of the computing service unit for direct use;
[0009] A first and second data buffer are established in parallel in the shared memory to read the data required for each computation cycle. When the data in the first data buffer is used to execute computation instructions, the second data buffer is used to pre-read the resources required for subsequent operations. When subsequent operations are executed, the data buffer that is not involved in executing computation instructions is used to cache the data for the next computation task.
[0010] A further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration involves using a shared memory. Assuming the capacity of the data buffer currently participating in the computing task is 'a', another data buffer with a capacity of 2a is established to cache data for the next computing task. The two data elements in the data matrix that will participate in the next operation are merged and stored in the data buffer. An offset pointer is used to distinguish the two data element regions. During the swap operation, the positions of the two data elements are switched by switching the offset pointer to improve the efficiency of the swap operation.
[0011] In a further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration, K3 specifically refers to: a general mode for operations on the data matrix to be processed. Assuming yes 1-order data matrix yes 1-order data matrix yes 1-order data matrix It is a scalar function used to optimize and match the available scheduling functions for computing service units, ensuring that the computing service units can achieve better data reuse while minimizing the consumption of ineffective resources. The matching principles for the optimal scheduling function include:
[0012] (a) The horizontal scale of the main data blocks of the computing resources partitioned by the scheduling function should be No more than the horizontal dimension of the data matrix to be processed , represented as ;
[0013] (b) Vertical scale of computing resources partitioned by scheduling function It should not exceed the vertical dimension of the data matrix to be processed. , represented as ;
[0014] (c) When the scheduling function partitions the metadata blocks for the data matrix to be multiplied, the horizontal scale of the metadata blocks of the data matrix should be... No more than the middle dimension of the multiplied data matrices (A and B) , represented as ;
[0015] (d) Prioritize scheduling function schemes with higher parallel computing capabilities, which can be expressed as: .
[0016] A further improvement or specific implementation of the aforementioned method for optimizing the allocation of computing resources for cloud-edge collaboration, wherein K4 specifically includes the following optimization steps:
[0017] (1) For the data matrix computation task assigned by the computing service unit, for each computing work group, based on the middle dimension of the multiplied data matrix Sort the data in ascending order, obtain the ID information of the sorted data matrix pairs, the memory ID information of the data matrix, and the ID information of the corresponding optimal scheduling function determined based on step K3, and save the sorting and ID information to the data register T;
[0018] (2) Based on the sorting order in the data register T, further analyze the size of the metadata blocks in the scheduling function, sort them in descending order, and update the sorting order in the data register T; generate the input sequence of the computing task according to the new sorting order and perform the calculations in sequence. Attached Figure Description
[0019] Figure 1 This is a schematic diagram of the data matrix metadata block division. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.
[0021] Data matrices are a common tool for processing and analyzing large amounts of data. In cloud-edge collaboration tasks, there are a lot of data matrix transfer and computation tasks between edge servers and cloud computing centers, as well as between edge servers. The application of large amounts of data matrices ensures the stable transfer of massive amounts of data and the effectiveness of collaborative computing. The allocation and processing of computing resources for data matrices directly affect the computing efficiency of cloud-edge collaboration.
[0022] Therefore, this application proposes a method for optimizing the allocation of computing resources for cloud-edge collaboration, aiming to improve the related problems in the background technology. First, considering the uneven distribution of data matrix input and the problem of computing resource load allocation and scheduling configuration on the computing server:
[0023] like Figure 1 As shown, in cloud edge computing services, to achieve multi-threaded parallel processing, it is necessary to matrix-process the scattered and independent original edge data so that it can be further processed. However, in this process, it is impossible to guarantee the integrity of the matrix data (…). Figure 1 In a large or medium-sized matrix, each data element is valid data. Methods such as zero-filling are needed to ensure that positions containing invalid data are not empty. This traditional data matrix fragmentation process introduces unnecessary matrix data. Figure 1 (In the shaded area), these unnecessary matrix data still require computing resources for computation. In some parallel processing flows, all parallel computing servers even need to perform the same operation on these unnecessary matrix data, resulting in a waste of computing resources.
[0024] To avoid the problem of untimely response of computing resources caused by the fragmentation of traditional data matrices, the operation order of data matrix operation instances is optimized by sorting the memory addresses and demand of data matrix operation instances. Specifically:
[0025] In the process of configuring computing resources, the first step is to perform dimensional analysis on the data matrix operation instances that need to be input into the cloud edge computing service to determine the required amount of computing resources.
[0026] Create a data body to store the memory addresses and requirements of data matrix operation instances, sort them according to the requirements from least to most, and modify the memory addresses according to the sorting order;
[0027] The operation order of data matrix operation instances is optimized by synchronizing the data pointers of the data matrix operation instances based on the modified memory addresses;
[0028] Furthermore, by configuring data storage and shared memory in the computing service unit (GPU or other computing service unit), the data input to the computing service unit is first stored in the shared memory, while the completed data is stored in the data storage. The data in the shared memory can be retrieved and used by all work items within the same workgroup.
[0029] During each data matrix operation, in each calculation loop, the individual data blocks in the data matrix to be used are further divided and stored in the vector general-purpose register of the calculation service unit for direct use;
[0030] A first and second data buffer are established in parallel in the shared memory to read the data required for each computation cycle. When the data in the first data buffer is used to execute computation instructions, the second data buffer is used to pre-read the resources required for subsequent operations and switch during subsequent operations. The data buffer that is not involved in executing computation instructions is used to cache the data for the next computation task.
[0031] In particular, in high-response-demand tasks, to ensure the smooth reading of the data matrix and to resolve the large number of swap operations in the data matrix, in the shared memory, assuming the capacity of the data buffer currently participating in the calculation task is 'a', another data buffer with a capacity of 2a is used to create a data buffer for the next calculation task. The two data elements in the data matrix that will participate in the next calculation are merged and stored in the data buffer. An offset pointer is used to distinguish the two data element regions. During the swap operation, the offset pointer is used to switch the positions of the two data elements to improve the efficiency of the swap operation.
[0032] During data matrix operations, different scheduling functions of computing service units employ different data scales when dividing data blocks of computing resources. Generally, larger data scales facilitate data reuse. However, during workgroup generation, larger single-data-element scales can lead to significant idle workspaces, resulting in inefficient consumption of computing resources. To ensure that computing service units can better meet the efficiency requirements for operating the rows of the data matrix involved in the operation, optimization matching should be performed based on the scheduling functions of the computing service units at different times. Specifically, for the general mode of data matrix operations to be performed... Assuming yes 1-order data matrix yes 1-order data matrix yes 1-order data matrix It is a scalar function used to optimize and match the available scheduling functions for computing service units, ensuring that the computing service units can achieve better data reuse while minimizing the consumption of ineffective resources. The matching principles for the optimal scheduling function include:
[0033] (a) The horizontal scale of the main data blocks of the computing resources partitioned by the scheduling function should be No more than the horizontal dimension of the data matrix to be processed , represented as ;
[0034] (b) Vertical scale of computing resources partitioned by scheduling function It should not exceed the vertical dimension of the data matrix to be processed. , represented as ;
[0035] (c) When the scheduling function partitions the metadata blocks for the data matrix to be multiplied, the horizontal scale of the metadata blocks of the data matrix should be... No more than the middle dimension of the multiplied data matrices (A and B) , represented as ;
[0036] (d) Prioritize scheduling function schemes with higher parallel computing capabilities, which can be expressed as: ;
[0037] In general computation, the computing service unit typically uses a uniform load distribution strategy when allocating computational tasks, ensuring that each workgroup is always assigned tasks with similar workloads. However, during the processing of data matrices, the original data matrix has a randomly distributed bidirectional dimension, which means that the actual workload of the subtasks may not be consistent during the allocation process. Using the default uniform load distribution strategy would lead to a waste of computing resources for the workgroups, while the intermediate dimension... This impacted the workload of each workgroup. By optimizing the allocation of computational tasks, and prioritizing low-load, low-time-consuming computational tasks, the overall resource processing process can be better optimized, increasing the amount of available computing resources throughout the data processing process. Specifically:
[0038] (1) For the data matrix computation task assigned by the computing service unit, for each computing work group, based on the middle dimension of the multiplied data matrix Sort the data in ascending order, obtain the ID information of the sorted data matrix pairs, the memory ID information of the data matrix, and the ID information of the corresponding optimal scheduling function determined based on step K3, and save the sorting and ID information to the data register T;
[0039] In the above steps, sorting based on the intermediate dimension can optimize the order of computing tasks at the computing workgroup level, thereby improving the utilization efficiency of computing resources at this level.
[0040] (2) Based on the sorting order in the data register T, further analyze the size of the metadata blocks in the scheduling function, sort them in descending order, and update the sorting order in the data register T; generate the input sequence of the computing task according to the new sorting order and perform the calculations in sequence.
[0041] Building upon the optimizations performed by the computing working group, further optimization is achieved by adjusting the size of the metadata block in the specific scheduling function. This improves the execution efficiency of fine-grained computing tasks, thereby enhancing the utilization efficiency of computing resources during data processing. Subsequently, by replacing the scheduling function and updating the metadata block, computing resource scheduling that matches the latest computing tasks can be implemented, thereby increasing the maximum computing power of cloud edge computing tasks and expanding the capability boundaries of the computing system.
[0042] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit the scope of protection of the present invention. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the essence and scope of the technical solutions of the present invention.
Claims
1. A method for optimizing the allocation of computing resources for cloud-edge collaboration, characterized in that, include: K0. Optimize the operation order of data matrix operation instances by sorting them by memory address and demand. K1. Configure data storage and shared storage in the computing service unit; K2. Establish a parallel data buffer in the shared memory for pre-fetching; K3. Optimize and match the scheduling function to ensure that the computing service unit can achieve better data reuse; K4. Optimize the load distribution strategy of the computing workgroup to improve the utilization of computing resources.
2. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 1, characterized in that, Specifically, K0 includes: in the process of configuring computing resources, firstly, performing dimensional analysis on the data matrix operation instances that need to be input into the cloud edge computing service to determine the required amount of computing resources; establishing a data body to store the memory addresses and requirements of the data matrix operation instances, sorting them according to the order of requirements from least to most, and modifying the memory addresses according to the sorting order; and optimizing the operation order of the data matrix operation instances by synchronously mapping the data pointers of the data matrix operation instances according to the modified memory addresses.
3. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 1, characterized in that, Specifically, K1 includes: by configuring a data storage and a shared storage in the computing service unit, the data input to the computing service unit is first stored in the shared storage, and the data that has been calculated is stored in the data storage. The data in the shared storage can be extracted and used by all work items within the same work group.
4. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 1, characterized in that, Specifically, K2 includes: during each data matrix operation, in each calculation loop, further dividing the individual data blocks in the data matrix to be used and storing them in the vector general-purpose register of the calculation service unit for direct use; A first and second data buffer are established in parallel in the shared memory to read the data required for each computation cycle. When the data in the first data buffer is used to execute computation instructions, the second data buffer is used to pre-read the resources required for subsequent operations. When subsequent operations are executed, the data buffer that is not involved in executing computation instructions is used to cache the data for the next computation task.
5. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 4, characterized in that, In shared memory, assuming the capacity of the data buffer currently participating in the computation task is 'a', another data buffer with a capacity of 2a is created to cache data for the next computation task. The two data elements in the data matrix that will participate in the next operation are merged and stored in the data buffer. An offset pointer is used to distinguish the two data element regions. During the swap operation, the positions of the two data elements are switched by switching the offset pointer to improve the efficiency of the swap operation.
6. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 1, characterized in that, Specifically, K3 refers to: the general mode for operations on the data matrix to be processed. Assuming yes 1-order data matrix yes 1-order data matrix yes 1-order data matrix It is a scalar function used to optimize and match the available scheduling functions for computing service units, ensuring that the computing service units can achieve better data reuse while minimizing the consumption of ineffective resources. The matching principles for the optimal scheduling function include: (a) The horizontal scale of the main data blocks of the computing resources partitioned by the scheduling function should be No more than the horizontal dimension of the data matrix to be processed , represented as ; (b) Vertical scale of computing resources partitioned by scheduling function It should not exceed the vertical dimension of the data matrix to be processed. , represented as ; (c) When the scheduling function partitions the metadata blocks for the data matrix to be multiplied, the horizontal scale of the metadata blocks of the data matrix should be... No more than the middle dimension of the multiplied data matrices (A and B) , represented as ; (d) Prioritize scheduling function schemes with higher parallel computing capabilities, which can be expressed as: .
7. The method for optimizing the allocation of computing resources for cloud-edge collaboration according to claim 1, characterized in that, The K4 specifically includes the following optimization steps: (1) For the data matrix computation task assigned by the computing service unit, for each computing work group, based on the middle dimension of the multiplied data matrix Sort the data in ascending order, obtain the ID information of the sorted data matrix pairs, the memory ID information of the data matrix, and the ID information of the corresponding optimal scheduling function determined based on step K3, and save the sorting and ID information to the data register T; (2) Based on the sorting order in the data register T, further analyze the size of the metadata blocks in the scheduling function, sort them in descending order, and update the sorting order in the data register T; generate the input sequence of the computing task according to the new sorting order and perform the calculations in sequence.