A task scheduling optimization method and system for edge collaborative computing

By adopting a task allocation strategy with minimal latency and redistributing computing tasks in edge computing, the problems of lag and downtime when edge nodes process user requests are solved, thereby improving computing efficiency and stability.

CN119621321BActive Publication Date: 2025-11-04GANSU PHOTOSYNTHESIS TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411701628.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-11-04
Estimated Expiration
2044-11-26

AI Technical Summary

Technical Problem

As the amount of data increases, edge computing nodes are prone to lag or crashes when processing user requests, leading to a decrease in computing efficiency.

Method used

By simulating the set computing tasks and edge node task allocation strategies, the task scheduling optimization is performed using the task allocation strategy with the minimum latency, and computing tasks are redistributed when edge nodes fail.

Benefits of technology

It improves the efficiency of edge computing tasks, avoids the delay of computing tasks caused by edge node failures, and ensures the stability and efficiency of computing tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119621321B_ABST
    Figure CN119621321B_ABST
Patent Text Reader

Abstract

The present application relates to the field of data processing, more particularly, it relates to a kind of task scheduling optimization method and system for edge collaborative computing.A kind of task scheduling optimization system for edge collaborative computing, comprising: computing task acquisition module, edge node acquisition module, computing task combination hash value generation module, task scheduling scheme library establishment module, task scheduling scheme library, task scheduling scheme acquisition module and task allocation module.The present application simulates the computing task T i And edge node R j Task allocation strategy in advance, and the task allocation strategy with minimum delay is used as the computing task T i And edge node R j Corresponding task scheduling scheme of the batch in advance, when the edge computing task being carried out and the computing task T i And edge node R j Corresponding, directly through task scheduling scheme to carry out task scheduling optimization, improve the efficiency of edge computing task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing, and more specifically, to a task scheduling optimization method and system for edge collaborative computing. Background Technology

[0002] As the amount of data continues to increase, data analysis methods are shifting from centralized cloud computing to distributed edge computing. Distributed edge computing can move some computing tasks to the edge for processing, which not only reduces the computing burden of cloud service centers, but also has lower service latency and network resource consumption because the edge is closer to the terminal nodes. However, in recent years, due to the further expansion of data volume, users have requested data more frequently, which can lead to edge nodes lag or even crash, seriously affecting the efficiency of edge computing. Summary of the Invention

[0003] This invention provides a task scheduling optimization method and system for edge collaborative computing, which optimizes the scheduling of pre-simulated computing tasks T. i and edge node R j The simulation task allocation strategy was used, and the task allocation strategy with the minimum latency was selected as the basis for the pre-simulated computational tasks T. i and edge node R j The corresponding task scheduling scheme, when the ongoing edge computing task coincides with the pre-simulated computing task T... i and edge node R j In response, task scheduling is optimized directly through a task scheduling scheme to improve the efficiency of edge computing tasks.

[0004] A task scheduling optimization method for edge collaborative computing includes:

[0005] Obtain the computing task T that needs to be performed on the edge. i Where i∈{1, 2, 3...I}, and I is the total number of computation tasks; computation task T i The storage format is {t i_num , t i_data , t i_cpu , t i_ram , t i_w}, where t i_num For computation task T i Task number, t i_data For computation task T i The amount of computational data, t i_cpu To perform computational task T i Required CPU resources, t i_ram To perform computation task T i Required memory (RAM) resources, ti_w To perform the computing task T i The required network resources;

[0006] The edge node is denoted as R j , j∈{1, 2, 3 ··· J}, J is the total number of edge nodes; the edge node R j The storage form is {r j_num , r j_f , r j_cpu , r j_ram , r j_w}, where r j_num is the node number of the edge node R j , r j_f is the computing power of the edge node R j , r j_cpu is the CPU resource of the edge node R j , r j_ram is the memory resource of the edge node R j , r j_w is the network resource of the edge node R j ;

[0007] Extract the task number t i in all computing tasks T i_num , and arrange all task numbers t i_num in ascending order, then splice the arranged task numbers t i_num to generate the task code, and then calculate the task code through the hash algorithm to generate the computing task combination hash value front part; extract the node number r j in all edge nodes R j_num , and arrange all node numbers r j_num in ascending order, then splice the arranged node number r j_num to generate the node code, and then calculate the node code through the hash algorithm to generate the computing task combination hash value rear part; combine the computing task combination hash value front part and the computing task combination hash value rear part to get the computing task combination hash value;

[0008] According to the computing task combination hash value and the standard computing task combination hash value in the task scheduling scheme library, the matching successful standard computing task combination hash value corresponding to the task scheduling scheme is obtained, the standard computing task combination hash value, the time delay allocation matrix and the task scheduling scheme are stored in the task scheduling scheme library, and the standard computing task combination hash value, the time delay allocation matrix and the task scheduling scheme are one-to-one corresponding;

[0009] According to the task scheduling scheme, all computing tasks T i are allocated to all edge nodes Rj It then performs computational tasks.

[0010] As a preferred embodiment of the present invention, the establishment of the task scheduling scheme library includes the following steps:

[0011] Select a batch of pre-defined computing tasks T i and edge node R j ;

[0012] All pre-set computational tasks T i Task number t i_num Extract them and assign all task numbers t i_num Arrange them in ascending order, and then number the arranged tasks t. i_num The standard task code is generated by concatenation, and then the standard task code is used to generate the standard computation task combination hash value by hashing the hash value of the standard task code; all pre-defined edge nodes R are then used. j The node number r in j_num Extract them and number all nodes r. j_num Arrange them in ascending order, and then number the arranged nodes r. j_num The standard node code is generated by concatenation, and then the standard node code is used to calculate the latter part of the standard computing task combination hash value through a hash algorithm. The former part and the latter part of the standard computing task combination hash value are concatenated to obtain the standard computing task combination hash value.

[0013] Based on all computational tasks T i and all edge nodes R j Establish task allocation matrix P ji , Where p ji The value to be assigned is either 1 or 0. When p ji A value of 1 represents the computational task T. i Assigned to edge node R j When p ji A value of 0 represents the computational task T. i Not assigned to edge node R j And satisfy the constraints. Assign all tasks to matrix P ji Store the simulated allocation strategy set;

[0014] The task allocation matrix P within the set of simulation allocation strategies ji The process involved three rounds of screening: first, second, and third.

[0015] Iterate through the set of simulated allocation strategies that have undergone the third screening, and select the task allocation matrix P one by one from the set of simulated allocation strategies that have undergone the third screening.ji For each selected task, assign matrix P ji For the task assignment matrix P ji The assigned value p within ji By assigning weights, the time delay allocation matrix H is obtained. ji The weight assignment follows these rules: Where h ji Assign delay matrix H ji The number of terms in w4 ji As a delay weight, and Then use the delay allocation matrix H ji The combined time delay value G is obtained by convolving the weighted convolution kernel with a weighted kernel, where each term in the weighted convolution kernel is 1 and the size of the weighted convolution kernel is J×I; the task allocation matrix P of all tasks in the simulated allocation strategy set after the third screening is obtained. ji The corresponding overall latency value G is determined, and the task allocation matrix P corresponding to the smallest overall latency value G is selected. ji As a task allocation scheme.

[0016] As a preferred embodiment of the present invention, the task allocation matrix P within the set of simulated allocation strategies is... ji After the first screening, the specific steps include: traversing the set of simulated allocation strategies and selecting the task allocation matrix P one by one from the set of simulated allocation strategies. ji For each selected task, assign matrix P ji The task assignment matrix P ji CPU resource allocation weight matrix W1 ji The CPU resource allocation matrix Q is obtained by performing the Hadamard product calculation. ji The CPU resource allocation weight matrix has a size of J×I. The CPU resource allocation weight matrix W1... ji Let w1 be the number of terms in the innermost part. ji Satisfying w1 ji =t i_cpu Given j∈{1, 2, 3...J}, the resulting CPU resource allocation matrix Q ji The CPU resource allocation matrix Q is of size J×I. ji The number of terms in the array is denoted as q. ji Select CPU resource allocation matrix Q one by one ji The number of terms q in ji Determine "q" ji <r j_cpu "Is it true or false? If 'q' appears..." ji <r j_cpu If this condition is not met, the selected task assignment matrix P will be... ji Remove from the set of simulated allocation strategies; if it is the CPU resource allocation matrix Qji The number of terms q in ji All satisfy "q" ji <r j_cpu "No operation; when all task assignment matrices P in the simulation assignment strategy set are in use." ji Once all selections are complete, the operation is stopped, completing the first screening of the simulated allocation strategy set.

[0017] As a preferred embodiment of the present invention, the task allocation matrix P within the set of simulated allocation strategies is... ji The second screening process includes the following steps: traversing the set of simulated allocation strategies that passed the first screening, and selecting task allocation matrices P one by one from the set of simulated allocation strategies that passed the first screening. ji For each selected task, assign matrix P ji The task assignment matrix P ji With memory resource allocation weight matrix W2 ji The memory resource allocation matrix U is obtained by performing the Hadamard product calculation. ji The memory resource allocation weight matrix has a size of J×I. The memory resource allocation weight matrix W2... ji The number of terms in the w2 denoted as w2 ji Satisfying w2 ji =t i_ram The resulting memory resource allocation matrix U, where j∈{1,2,3·····J}, is... ji The memory resource allocation matrix U is of size J×I. ji The number of terms in the innermost part is denoted as u. ji Select memory resource allocation matrix U one by one ji Number of terms u ji Determine "u ji <r j_ram "Is it valid? If a 'u' appears..." ji <r j_ram If this condition is not met, the selected task assignment matrix P will be... ji Remove from the set of simulated allocation strategies; if it is the memory resource allocation matrix U ji Number of terms u ji All satisfy "u ji <r j_ram "No operation; when all task allocation matrices P in the set of simulated allocation strategies after the first screening..." ji After all selections are completed, the operation is stopped, and the second filtering of the simulated allocation strategy set is performed.

[0018] As a preferred embodiment of the present invention, the task allocation matrix P within the set of simulated allocation strategies is... jiThe third screening process includes the following steps: traversing the set of simulated allocation strategies that passed the second screening, and selecting task allocation matrices P one by one from the set of simulated allocation strategies that passed the second screening. ji For each selected task, assign matrix P ji The task assignment matrix P ji With network resource allocation weight matrix W3 ji The network resource allocation matrix B is obtained by performing the Hadamard product calculation. ji The network resource allocation weight matrix has a size of J×I. The network resource allocation weight matrix W3... ji The number of terms in the w3 denoted as w3 ji Satisfying w3 ji =t i_w Given j∈{1, 2, 3·····J}, the resulting network resource allocation matrix B ji The network resource allocation matrix B is of size J×I. ji The number of terms in the array is denoted as b. ji Select network resource allocation matrix B one by one. ji Number of terms b ji Determine "b" ji <r j_w "Is it true or false? If 'b' appears..." ji <r j_w If this condition is not met, the selected task assignment matrix P will be... ji Remove from the set of simulated allocation strategies; if it is network resource allocation matrix B ji Number of terms b ji All satisfy "b" ji <r j_w "No operation; when all task assignment matrices P in the set of simulated assignment strategies after the second screening..." ji After all selections are completed, the operation is stopped, and the third filtering of the simulated allocation strategy set is performed.

[0019] As a preferred embodiment of the present invention, it further includes reallocating the computing task, the specific steps of which are as follows: obtaining the computing task T. i Actual delay L i Calculate the time delay difference in Based on computation task T i The corresponding delay allocation matrix H ji Computation, used to characterize computational task T i Given the theoretical time delay, determine whether "δ < F" holds true, where F is the time delay difference threshold. If "δ < F" holds true, no operation is performed; if "δ < F" does not hold true, calculate task T. i An anomaly exists in the assigned edge node, and this edge node is denoted as R.k , k e {1, 2, 3, ···, J}, select the last computing task T k assigned to edge node R i , traverse the remaining edge nodes R k except edge node R j , judge whether the following condition is true or not , if yes , assign the last computing task T k assigned to edge node R i to edge node R j ; otherwise, do nothing.

[0020] A task scheduling optimization system for edge collaborative computing, comprising:

[0021] a computing task acquisition module configured to acquire a computing task requiring edge computing, the computing task including a task number, a computing data volume, a CPU resource required for executing the computing task, a memory resource required for executing the computing task, and a network resource required for executing the computing task;

[0022] an edge node acquisition module configured to acquire an edge node for edge computing, the edge node including a node number, a computing capability of the edge node, a CPU resource of the edge node, a memory resource of the edge node, and a network resource of the edge node;

[0023] a computing task combination hash value generation module configured to generate a computing task combination hash value according to the task number and the node number;

[0024] a task scheduling scheme library establishment module configured to establish a task scheduling scheme library;

[0025] the task scheduling scheme library configured to store a standard computing task combination hash value, a time delay allocation matrix, and a task scheduling scheme;

[0026] a task scheduling scheme acquisition module configured to acquire a task scheduling scheme from the task scheduling scheme library according to the computing task combination hash value;

[0027] a task allocation module configured to allocate all computing tasks to all edge nodes according to the task scheduling scheme.

[0028] As a preferred embodiment of the present application, the present application further comprises a computing task re-allocation module configured to re-allocate the computing tasks.

[0029] The present application has the following advantages:

[0030] 1. The present application simulates the computing task T i and the edge node R jSimulate the task allocation strategy, and take the task allocation strategy with the minimum time delay as the calculation task T of the batch of simulation settings in advance i and the edge node R j The corresponding task scheduling scheme, when the ongoing edge computing task and the calculation task T of the simulation setting in advance i and the edge node R j Corresponding, directly through the task scheduling scheme to optimize the task scheduling, improve the efficiency of edge computing task.

[0031] 2、The application avoids the failure of the edge node to cause the calculation task to lag greatly and affect the efficiency of edge computing by redistributing the calculation task allocated to the failed edge node. BRIEF DESCRIPTION OF DRAWINGS

[0032] Figure 1 The structural schematic diagram of the task scheduling optimization system for edge cooperative calculation used in the embodiment of the application. DETAILED DESCRIPTION

[0033] In order to make the person in the art better understand the technical scheme in the application, the technical scheme in the embodiment of the application will be described clearly and completely below in combination with the drawings in the embodiment of the application.

[0034] Embodiment 1, a task scheduling optimization method for edge cooperative calculation, comprising:

[0035] Obtain the calculation task T that needs to be edge calculated i , wherein i∈{1, 2, 3 ··· I}, I is the total number of calculation tasks; the storage form of the calculation task T i is {t i_num , t i_data , t i_cpu , t i_ram , t i_w}, wherein t i_num is the task number of the calculation task T i , t i_data is the calculation data volume of the calculation task T i , t i_cpu is the CPU resource required for executing the calculation task T i , t i_ram is the memory (RAM) resource required for executing the calculation task T i , t i_w is the network resource required for executing the calculation task T i ;

[0036] Record the edge node as R j , j∈{1, 2, 3 ··· J}, J is the total number of edge nodes; the edge node Rj r j_num r j_f r j_cpu r j_ram r j_w}, wherein r j_num is the node number of the edge node R j , r j_f is the computing capacity of the edge node R j , r j_cpu is the CPU resource of the edge node R j , r j_ram is the memory resource of the edge node R j , r j_w is the network resource of the edge node R j ;

[0037] extract the task number t i in all computing tasks T i_num , arrange all task numbers t i_num in ascending order, splice the arranged task numbers t i_num to generate a task code, and then calculate the task code through a hash algorithm to generate a computing task combination hash value front part; extract the node number r j in all edge nodes R j_num , arrange all node numbers r j_num in ascending order, splice the arranged node numbers r j_num to generate a node code, and then calculate the node code through a hash algorithm to generate a computing task combination hash value rear part; and combine and splice the computing task combination hash value front part and the computing task combination hash value rear part to obtain a computing task combination hash value;

[0038] According to the computing task combination hash value and the standard computing task combination hash value in the task scheduling scheme library, a task scheduling scheme corresponding to the standard computing task combination hash value that matches successfully is obtained. The task scheduling scheme library stores standard computing task combination hash values, delay allocation matrices, and task scheduling schemes, and the standard computing task combination hash values, the delay allocation matrices, and the task scheduling schemes correspond one by one.

[0039] According to the task scheduling scheme, all computing tasks T i are allocated to all edge nodes R j , and the computing tasks are executed.

[0040] The establishment of the task scheduling scheme library includes the following steps: selecting a batch of computing tasks T i and edge nodes R j that are set in advance., the advance setting refers to the pre-simulation setting calculation task T i and edge node R j , since the current edge computing processing task is generally fixed, for example, atmospheric monitoring analysis, the calculation task and the edge node are limited in number, in order to facilitate the task scheduling more quickly, the calculation task T i and all edge nodes R j can be set in advance, and the task scheduling scheme is determined according to the calculation task T i and edge node R j set in advance;

[0041] extract the task number t i in all the calculation tasks T i_num set in advance, arrange all the task numbers t i_num in ascending order, splice the arranged task numbers t i_num to generate a standard task code, and then calculate the standard task code through a hash algorithm to generate a standard calculation task combination hash value front part; extract the node number r j in all the edge nodes R j_num set in advance, arrange all the node numbers r j_num in ascending order, splice the arranged node numbers r j_num to generate a standard node code, and then calculate the standard node code through a hash algorithm to generate a standard calculation task combination hash value rear part; combine the standard calculation task combination hash value front part and the standard calculation task combination hash value rear part to obtain a standard calculation task combination hash value;

[0042] According to all the calculation tasks T i and all the edge nodes R j , a task allocation matrix P ji is established , wherein p ji is an allocation value, which is 1 or 0, when p ji is 1, it represents that the calculation task T i is allocated to the edge node R j , and when p ji is 0, it represents that the calculation task T i is not allocated to the edge node R j , and satisfies the constraint condition , that is, a calculation task is only allocated to one edge node, since the establishment of the task allocation matrix is a simulation behavior, that is, the calculation task can be allocated to any edge node, therefore, J I task allocation matrices P jiStore the simulated allocation strategy set; iterate through the simulated allocation strategy set, selecting the task allocation matrix P from each strategy set. ji For each selected task, assign matrix P ji The task assignment matrix P ji CPU resource allocation weight matrix W1 ji The CPU resource allocation matrix Q is obtained by performing the Hadamard product calculation. ji The CPU resource allocation weight matrix has a size of J×I. The CPU resource allocation weight matrix W1... ji Let w1 be the number of terms in the innermost part. ji Satisfying w1 ji =t i_cpu , j∈{1,2,3·····J}, that is, the CPU resource allocation weight matrix W1 ji The CPU resource allocation matrix Q stores the CPU resources required for each computing task. ji The size is J×I, and the task assignment matrix P is used. ji CPU resource allocation weight matrix W1 ji The Hadamard product calculation is performed to statistically analyze the CPU resources consumed by each edge node, and the CPU resource allocation matrix Q is then used. ji The number of terms in the array is denoted as q. ji Select CPU resource allocation matrix Q one by one ji The number of terms q in ji Determine "q" ji <r j_cpu "Is it true or false? If 'q' appears..." ji <r j_cpu "If this condition is not met, it indicates that the selected task allocation matrix P..." ji The allocated CPU resources are not suitable for the corresponding edge nodes, which is an invalid task allocation strategy. The selected task allocation matrix P will be changed. ji Remove from the set of simulated allocation strategies; if it is the CPU resource allocation matrix Q ji The number of terms q in ji All satisfy "q" ji <r j_cpu This indicates that the task allocation matrix P is selected. ji The allocated CPU resources are adapted to the corresponding edge nodes, with no operation; when all task allocation matrices P within the simulated allocation strategy set are... ji After all selections are completed, the operation is stopped, thus completing the first screening of the simulated allocation strategy set;

[0043] Iterate through the set of simulated allocation strategies that have passed the first screening, and select the task allocation matrix P one by one from the set of simulated allocation strategies that have passed the first screening. jiFor each selected task, assign matrix P ji The task assignment matrix P ji With memory resource allocation weight matrix W2 ji The memory resource allocation matrix U is obtained by performing the Hadamard product calculation. ji The memory resource allocation weight matrix has a size of J×I. The memory resource allocation weight matrix W2... ji The number of terms in the w2 denoted as w2 ji Satisfying w2 ji =t i_ram , j∈{1,2,3·····J}, that is, the memory resource allocation weight matrix W2 ji The memory resource allocation matrix U stores the memory resources required for each computational task. ji The size is J×I, and the task assignment matrix P is used. ji With memory resource allocation weight matrix W2 ji The Hadamard product calculation is performed to statistically analyze the memory resources consumed by each edge node, and the memory resource allocation matrix U is then used. ji The number of terms in the innermost part is denoted as u. ji Select memory resource allocation matrix U one by one ji Number of terms u ji Determine "u ji <r j_ram "Is it valid? If a 'u' appears..." ji <r j_ram "If this condition is not met, it indicates that the selected task allocation matrix P..." ji The allocated memory resources are not suitable for the corresponding edge nodes, making it an invalid task allocation strategy. The selected task allocation matrix P will be changed. ji Remove from the set of simulated allocation strategies; if it is the memory resource allocation matrix U ji Number of terms u ji All satisfy "u ji <r j_ram This indicates that the task allocation matrix P is selected. ji The allocated memory resources are adapted to the corresponding edge nodes, with no operation; when all task allocation matrices P in the set of simulated allocation strategies that have passed the first screening... ji After all selections are completed, the operation is stopped, and the second filtering of the simulated allocation strategy set is performed.

[0044] Iterate through the set of simulated allocation strategies that have undergone the second round of screening, and select the task allocation matrix P one by one from the set of simulated allocation strategies that have undergone the second round of screening. ji For each selected task, assign matrix P ji The task assignment matrix P jia network resource allocation weight matrix W3 ji a Hadamard product calculation to obtain a network resource allocation matrix B ji , the network resource allocation weight matrix has a size of JxI, and the number of items in the network resource allocation weight matrix W3 ji is denoted as w3 ji , which satisfies w3 ji = t i_w , j∈{1, 2, 3 ··· J}, that is, the network resource allocation weight matrix W3 ji stores the network resources required by each computing task, and the obtained network resource allocation matrix B ji has a size of JxI, and the network resources consumed by each edge node are counted by performing a Hadamard product calculation on the task allocation matrix P ji and the network resource allocation weight matrix W3 ji , the number of items in the network resource allocation matrix B ji is denoted as b ji , and the number of items b ji in the network resource allocation matrix B ji is selected one by one to determine whether “b ji r j_w ” is true, if “b ji r j_w ” is not true, it indicates that the network resources allocated according to the selected task allocation matrix P ji do not match the corresponding edge node, which is an invalid task allocation strategy, and the selected task allocation matrix P ji is deleted from the simulated allocation strategy set; if the number of items b ji in the network resource allocation matrix B ji satisfies “b ji r j_w ”, it indicates that the network resources allocated according to the selected task allocation matrix P ji match the corresponding edge node, and no operation is performed; when all the task allocation matrices P ji in the simulated allocation strategy set after the second screening are selected, the operation is stopped, and the third screening of the simulated allocation strategy set is implemented.

[0045] The simulated allocation strategy set after the third screening is traversed, and the task allocation matrix P ji is selected from the simulated allocation strategy set after the third screening one by one, for each selected task allocation matrix P ji , the allocation value p ji in the task allocation matrix P ji is weighted to obtain a delay allocation matrix H ji , and the weight assignment is performed according to the following rules: wherein h ji is the number of items in the latency allocation matrix H ji for representing the total time spent by the computing task T i allocated to the edge node R j , w4 ji is the latency weight, and , i.e., the time spent by the computing task T i for processing at the edge node R j , the latency allocation matrix H ji is convoluted with a weight convolution kernel to obtain a comprehensive latency value G, wherein the number of items in the weight convolution kernel is all 1, and the size of the weight convolution kernel is JxI; all the task allocation matrices P ji in the set of simulated allocation strategies after the third screening are obtained corresponding to the comprehensive latency values G, and the task allocation matrix P ji corresponding to the smallest comprehensive latency value G is selected as the task allocation scheme.

[0046] The present application simulates the task allocation strategy by the computing task T i and the edge node R j set in advance, and takes the task allocation strategy with the smallest latency as the task scheduling scheme corresponding to the computing task T i and the edge node R j set in advance, when the ongoing edge computing task corresponds to the computing task T i and the edge node R j set in advance, the task scheduling optimization is directly performed through the task scheduling scheme, thereby improving the efficiency of the edge computing task.

[0047] In actual edge computing, considering that the latency of the computing task may be longer than normal due to network failure and other reasons when the edge node processes the computing task, in this case, all the computing tasks allocated to this edge node will have increased latency, therefore, in order to still guarantee the efficiency of the edge computing when the edge node fails, the computing task needs to be re-allocated, and the specific steps are as follows: the actual latency L i of the computing task T i is obtained, the latency difference value is calculated, wherein the latency allocation matrix H i corresponding to the computing task T ji is calculated, for representing the theoretical latency of the computing task T i , it is judged whether or not "delta < F" is true, F is the latency difference threshold value, which is set by the user, and is generally the average value of all latency weights, if "delta < F" is true, it indicates that the computing task T iThe assigned edge nodes are normal and no operations are performed; if "δ < F" is not true, calculate task T. i An anomaly exists in the assigned edge node, and this edge node is denoted as R. k For k∈{1, 2, 3...J}, select and assign it to the edge node R. k The last computational task T i Traverse except for edge nodes R k The remaining edge nodes R j ,judge Is it true? If so... If successful, it means that the node will be assigned to the edge node R. k The last computational task T i Assigned to edge node R j The required latency is shorter, which can improve the efficiency of edge computing and will be allocated to edge nodes R. k The last computational task T i Assigned to edge node R j Otherwise, no operation is performed.

[0048] Actual delay L i The acquisition is achieved through the following steps: Issuing a computation task T i The terminal node records the computation task T i The time of issuance and the computation task T i The return time will be calculated for task T. i Return time minus computation task T i The elapsed time is obtained from the sending time, and then the preset time is subtracted from the elapsed time to obtain the actual delay L. i The preset time is set by the user and is determined based on the transmission time between the terminal node and the edge node.

[0049] This invention avoids significant delays in computing tasks caused by edge node failures, thus preventing them from affecting the efficiency of edge computing, by reallocating computing tasks that were originally assigned to faulty edge nodes.

[0050] Example 2: A task scheduling optimization system for edge collaborative computing, such as... Figure 1 As shown, it includes:

[0051] The computing task acquisition module is used to acquire computing tasks that need to be performed on the edge. The computing task includes the task number, the amount of computing data, the CPU resources required to execute the computing task, the memory resources required to execute the computing task, and the network resources required to execute the computing task.

[0052] An edge node acquisition module is configured to acquire edge nodes for edge computing, wherein each edge node comprises a node number, a computing capability of the edge node, a CPU resource of the edge node, a memory resource of the edge node, and a network resource of the edge node;

[0053] A computing task combination hash value generation module is configured to generate a computing task combination hash value according to the task number and the node number;

[0054] A task scheduling scheme library establishment module is configured to establish a task scheduling scheme library;

[0055] The task scheduling scheme library is configured to store the standard computing task combination hash value, the time delay allocation matrix, and the task scheduling scheme;

[0056] A task scheduling scheme acquisition module is configured to acquire the task scheduling scheme from the task scheduling scheme library according to the computing task combination hash value;

[0057] A task allocation module is configured to allocate all the computing tasks to all the edge nodes according to the task scheduling scheme.

[0058] A task scheduling optimization system for edge collaborative computing, as shown in Figure 1 The task scheduling optimization system further comprises a computing task re-allocation module configured to re-allocate the computing tasks.

[0059] It should be understood that, for those skilled in the art, improvements or changes can be made according to the above description, and all these improvements and changes shall fall within the protection scope of the appended claims of the present application. The parts not described in detail in the specification belong to the prior art known to those skilled in the art.

Claims

1. A task scheduling optimization method for edge collaborative computing, characterized in that, The application comprises the following steps: Obtaining a computing task T requiring edge computing i , wherein i∈{1, 2, 3, …, I}, I is the total number of computing tasks; the storage form of the computing task T i is {t i_num , t i_data , t i_cpu , t i_ram , t i_w}, wherein t i_num is the task number of the computing task T i , t i_data is the computing data volume of the computing task T i , t i_cpu is the CPU resource required for executing the computing task T i , t i_ram is the memory resource required for executing the computing task T i , and t i_w is the network resource required for executing the computing task T i ​ Let the edge node be denoted as R j , j∈{1,2,3 ··· J}, J is the total number of edge nodes; the storage form of edge node R j is {r j_num , r j_f , r j_cpu , r j_ram , r j_w}, wherein r j_num is the node number of edge node R j , r j_f is the computing power of edge node R j , r j_cpu is the CPU resource of edge node R j , r j_ram is the memory resource of edge node R j , and r j_w is the network resource of edge node R j ; Extract all the task numbers t i_num in all the computing tasks T i , arrange all the task numbers t i_num in ascending order, splice the arranged task numbers t i_num to generate task codes, and then calculate the task codes through a hash algorithm to generate a computing task combination hash value front part; extract all the node numbers r j_num in all the edge nodes R j , arrange all the node numbers r j_num in ascending order, splice the arranged node numbers r j_num to generate node codes, and then calculate the node codes through a hash algorithm to generate a computing task combination hash value rear part; and combine the computing task combination hash value front part and the computing task combination hash value rear part to obtain a computing task combination hash value. The application comprises the following steps: According to the task scheduling scheme, all computing tasks T i are distributed to all edge nodes R j above and the computing tasks are executed. 2.The method for task scheduling optimization for edge collaborative computing of claim 1, wherein, The system applies the task scheduling optimization method for edge collaborative computing according to any one of claims 1-6, comprising: selecting a batch of pre-established calculation tasks T i and edge nodes R j ; All pre-set computational tasks T i Task number t i_num Extract them and assign all task numbers t i_num Arrange them in ascending order, and then number the arranged tasks t. i_num The standard task code is generated by concatenation, and then the standard task code is used to generate the standard computation task combination hash value by hashing the hash value of the standard task code; all pre-defined edge nodes R are then used. j The node number r in j_num Extract them and number all nodes r. j_num Arrange them in ascending order, and then number the arranged nodes r. j_num The standard node code is generated by concatenation, and then the standard node code is used to calculate the latter part of the standard computing task combination hash value through a hash algorithm. The former part and the latter part of the standard computing task combination hash value are concatenated to obtain the standard computing task combination hash value. According to all computing tasks T i and all edge nodes R j Establish a task allocation matrix P ji , wherein is an allocation value, taking a value of 1 or 0, when takes a value of 1, representing that the computing task T i is allocated to the edge node R j , and when takes a value of 0, representing that the computing task T i is not allocated to the edge node R j , and satisfying a constraint condition , all task allocation matrices P ji are stored into a simulated allocation strategy set; allocating a task distribution matrix P within a set of simulated allocation strategies ji in succession a first screening, a second screening and a third screening; Iterate through the set of simulated allocation strategies that have undergone the third screening, and select the task allocation matrix P one by one from the set of simulated allocation strategies that have undergone the third screening. ji For each selected task, assign matrix P ji For the task assignment matrix P ji The allocated value within Weights are assigned to obtain the time delay allocation matrix. The weight assignment follows these rules: ,in Delay allocation matrix The number of terms in As a delay weight, and Then the delay allocation matrix The combined time delay value G is obtained by convolving the weighted convolution kernel with a weighted kernel, where each term in the weighted convolution kernel is 1 and the size of the weighted convolution kernel is J×I; the task allocation matrix P of all tasks in the simulated allocation strategy set after the third screening is obtained. ji The corresponding overall latency value G is determined, and the task allocation matrix P corresponding to the smallest overall latency value G is selected. ji As a task allocation scheme.

3. The task scheduling optimization method for edge collaborative computing according to claim 2, wherein, A task allocation matrix P in the simulation allocation strategy set is selected ji After the first screening, the specific steps include: traversing the simulation allocation strategy set, selecting a task allocation matrix P from the simulation allocation strategy set one by one ji , for each selected task allocation matrix P ji , the Hadamard product calculation is performed between the task allocation matrix P ji and the CPU resource allocation weight matrix W1 ji to obtain the CPU resource allocation matrix Q ji , the CPU resource allocation weight matrix has a size of JxI, the number of items in the CPU resource allocation weight matrix W1 ji is denoted as w1 ji , and w1 ji =t i_cpu , j∈{1,2,3, ···J}, the obtained CPU resource allocation matrix Q ji has a size of JxI, the number of items in the CPU resource allocation matrix Q ji is denoted as q ji , the number of items q ji in the CPU resource allocation matrix Q ji is selected one by one, and it is judged whether "q ji <r j_cpu " is established, if "q ji <r j_cpu " is not established, the selected task allocation matrix P ji is deleted from the simulation allocation strategy set; if the number of items q ji in the CPU resource allocation matrix Q ji all satisfy "q ji <r j_cpu ", no operation is performed; when all the task allocation matrices P ji in the simulation allocation strategy set are selected, the operation is stopped, and the first screening of the simulation allocation strategy set is realized.

4. The task scheduling optimization method for edge collaborative computing according to claim 3, wherein, allocate a task distribution matrix P in the simulation allocation strategy set ji After the second screening, the method comprises the following steps: traversing the simulation allocation strategy set after the first screening, selecting a task distribution matrix P from the simulation allocation strategy set after the first screening one by one ji , for each selected task distribution matrix P ji , calculating a memory resource allocation matrix U by performing Hadamard product calculation on the task distribution matrix P ji and a memory resource allocation weight matrix W2 ji , wherein the memory resource allocation weight matrix W2 ji is of a size of JxI, the number of items in the memory resource allocation weight matrix W2 ji is denoted as w2 ji , w2 ji = t i_ram , j ∈ {1, 2, 3, …, J}, the obtained memory resource allocation matrix U ji is of a size of JxI, the number of items in the memory resource allocation matrix U ji is denoted as u ji , the number of items u ji in the memory resource allocation matrix U ji is selected one by one, and it is determined whether "u ji < r j_ram " is true, if "u ji < r j_ram " is not true, the selected task distribution matrix P ji is deleted from the simulation allocation strategy set; if the number of items u ji in the memory resource allocation matrix U ji all satisfy "u ji < r j_ram ", no operation is performed; when all the task distribution matrices P ji in the simulation allocation strategy set after the first screening are selected, the operation is stopped, and the second screening of the simulation allocation strategy set is realized.

5. The task scheduling optimization method for edge collaborative computing according to claim 4, wherein, allocate a task distribution matrix P in the set of simulation allocation strategies ji After the third screening, the method comprises the following steps: traversing the set of simulation allocation strategies after the second screening, selecting a task distribution matrix P from the set of simulation allocation strategies after the second screening one by one ji , for each selected task distribution matrix P ji , performing Hadamard product calculation on the task distribution matrix P ji and a network resource allocation weight matrix W3 ji to obtain a network resource allocation matrix B ji , the network resource allocation weight matrix has a size of J×I, the number of items in the network resource allocation weight matrix W3 ji is denoted as w3 ji , and w3 ji =t i_w , j∈{1, 2, 3, …, J}, the obtained network resource allocation matrix B ji has a size of J×I, the number of items in the network resource allocation matrix B ji is denoted as b ji , the number of items b ji in the network resource allocation matrix B ji is selected one by one, and it is judged whether "b ji <r j_w " is established, if "b ji <r j_w " is not established, the selected task distribution matrix P ji is deleted from the set of simulation allocation strategies; if the number of items b ji in the network resource allocation matrix B ji all satisfy "b ji <r j_w ", no operation is performed; when all the task distribution matrices P ji in the set of simulation allocation strategies after the second screening are selected, the operation is stopped, and the third screening of the set of simulation allocation strategies is realized.

6. The task scheduling optimization method for edge collaborative computing according to claim 5, wherein, This also includes the reallocation of computational tasks, with the following steps: Obtain computational task T i Actual delay L i Calculate the time delay difference ,in Based on computation task T i Corresponding delay allocation matrix Computation, used to characterize computational task T i Given the theoretical time delay, determine whether "δ < F" holds true, where F is the time delay difference threshold. If "δ < F" holds true, no operation is performed; if "δ < F" does not hold true, calculate task T. i An anomaly exists in the assigned edge node, and this edge node is denoted as R. k For k∈{1, 2, 3...J}, select and assign it to the edge node R. k The last computational task T i Traverse except for edge nodes R k The remaining edge nodes R j ,judge" "Is it true or false? If so..." "Established, will be assigned to edge node R" k The last computational task T i Assigned to edge node R j Otherwise, no operation is performed.

7. A task scheduling optimization system for edge collaborative computing, characterized in that, The computing task acquisition module is configured to acquire a computing task requiring edge computing, and the computing task comprises a task number, a computing data volume, a CPU resource required for executing the computing task, a memory resource required for executing the computing task, and a network resource required for executing the computing task. The edge node acquisition module is configured to acquire an edge node for edge computing, and the edge node comprises a node number, a computing capability of the edge node, a CPU resource of the edge node, a memory resource of the edge node, and a network resource of the edge node. The computing task combination hash value generation module is configured to generate a computing task combination hash value according to the task number and the node number. The task scheduling scheme library establishment module is configured to establish a task scheduling scheme library. The task scheduling scheme library is configured to store a standard computing task combination hash value, a time delay allocation matrix, and a task scheduling scheme. The task scheduling scheme acquisition module is configured to acquire a task scheduling scheme from the task scheduling scheme library according to the computing task combination hash value. The task allocation module is configured to allocate all the computing tasks to all the edge nodes according to the task scheduling scheme. The application further comprises the following steps: 8.The task scheduling optimization system for edge collaborative computing of claim 7, wherein, The computing task re-allocation module is configured to re-allocate the computing tasks. ​

Citation Information

Patent Citations

  • Automatic test resource allocation method for cloud-side cooperative power information communication equipment

    CN111064633A

  • Resource allocation method and system for edge computing

    CN116401071A