Distributed computing optimization method and device based on AutoEdge platform

By obtaining real-time status information of online terminal nodes and matching the task volume and maximum load undertaking, the problem that task allocation in the prior art cannot adapt to the processing capabilities of terminal nodes is solved, and more efficient distributed computing processing is achieved.

CN119621347AActive Publication Date: 2025-03-14SHENZHEN JIANGXING INTELLIGENCE INC
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202510153218.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-12
Publication Date
2025-03-14
Estimated Expiration
2045-02-12

AI Technical Summary

Technical Problem

In the current technology, when allocating tasks, it is impossible to automatically adapt to the actual processing capabilities of the terminal nodes, resulting in task overload in some terminal nodes and reducing distributed computing processing capabilities.

Method used

When the target task is determined, real-time status information of the online terminal node is obtained, the task division density is determined according to the number of nodes, the target task is divided into multiple target subtasks, and the task volume and the maximum load undertaken by the terminal node are respectively matched, a task allocation list is generated, and the target subtask is assigned.

Benefits of technology

It realizes automatic adaptation of task allocation results and terminal node processing capabilities, avoids task overload and improves distributed computing processing capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119621347A_ABST
    Figure CN119621347A_ABST
Patent Text Reader

Abstract

The invention discloses a distributed computing optimization method and device based on an AutoEdge platform, and relates to the technical field of distributed computing, and the method comprises the steps: when a target task is determined, determining on-line terminal nodes accessing the AutoEdge platform, obtaining the real-time state information of the on-line terminal nodes, determining the task division density according to the number of the on-line terminal nodes, and obtaining the real-time state information of the on-line terminal nodes; dividing the target task into a plurality of target sub-tasks based on the task division density, respectively determining the task load of the target sub-tasks, determining the maximum undertaking load of the online terminal node according to the real-time state information, matching the task load with the maximum undertaking load to obtain a task allocation list, and allocating the target sub-tasks based on the task allocation list. And receiving calculation results of the online terminal nodes based on the received corresponding target subtasks, and summarizing and outputting the calculation results. By means of the mode, large processing tasks can be cooperatively processed according to the online terminal nodes, and the task processing efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of distributed computing technology, and in particular to a distributed computing optimization method and device based on the AutoEdge platform. Background Art

[0002] As the number of terminal nodes connected to the AutoEdge platform increases, the task data that needs to be processed also increases. If the task data is concentrated on the server for processing, it will undoubtedly increase the processing load of the server, thereby affecting the server's rapid response to other services. Therefore, it is possible to consider distributing the tasks that need to be processed to the terminal nodes for distributed computing, splitting larger tasks into multiple smaller processing tasks, while ensuring the server load of the AutoEdge platform, and making full use of the idle load of the terminal. In the process of distributing tasks to terminal nodes, larger tasks are usually evenly distributed to several terminal nodes for processing. This method cannot make reasonable use of the actual processing capacity of each terminal node, which will cause some terminal nodes to be overloaded with tasks and reduce the distributed computing processing capacity.

[0003] The above contents are only used to assist in understanding the technical solution of the present invention and do not constitute an admission that the above contents are prior art. Summary of the invention

[0004] The main purpose of this application is to provide a distributed computing optimization method and device based on the AutoEdge platform, aiming to solve the technical problem in the prior art that when allocating tasks, the task allocation results cannot be automatically adapted to the actual processing capabilities of the terminal nodes.

[0005] To achieve the above objectives, the present application provides a distributed computing optimization method based on the AutoEdge platform, the method comprising: When the target task is determined, determine the online terminal nodes connected to the AutoEdge platform, and obtain the real-time status information of each of the online terminal nodes; Determining a task division density according to the number of the online terminal nodes, and dividing the target task into a plurality of target subtasks based on the task division density; Determine the task amount of each target subtask, determine the maximum load of the online terminal node according to the real-time status information, match the task amount with the maximum load, and obtain a task allocation list; The target subtask is allocated based on the task allocation list, the calculation result of the online terminal node based on the corresponding target subtask is received, and the calculation result is summarized and outputted.

[0006] In one embodiment, when the target task is determined, before the step of determining the online terminal nodes connected to the AutoEdge platform and respectively acquiring the real-time status information of each of the online terminal nodes, the method further includes: Acquire the workload within the task prediction period, perform feature extraction on the workload, and obtain a work feature value; Generate a characteristic curve by combining the work characteristic value and the collection frequency of the task prediction period; Fitting the characteristic curve to obtain a characteristic-time variation relationship; Determining a target prediction time, and determining a target workload based on the feature-time variation relationship and the target prediction time; A target task is generated with the target workload.

[0007] In one embodiment, the step of fitting the characteristic curve to obtain the characteristic-time variation relationship includes: Determining a characteristic increment of a preset span of the characteristic curve, and generating a characteristic increment set based on the timing information and the characteristic increment; Comparing each feature increment in the feature increment set with an increment threshold respectively, and when the feature increment is greater than the increment threshold, performing a difference on the feature increment to determine a difference parameter; Performing curve correction on the characteristic curve using the differential parameter to obtain a corrected characteristic curve; The correction characteristic curve is combined with the time series information to obtain the characteristic-time variation relationship.

[0008] In one embodiment, when the target task is determined, the steps of determining the online terminal nodes connected to the AutoEdge platform and respectively acquiring the real-time status information of each of the online terminal nodes include: When the target task is determined, node activity detection information is generated, and the node activity detection information is sent to each terminal node connected to the AutoEdge platform to obtain online terminal nodes among the terminal nodes; Determine the communication address of the online terminal node, and generate state extraction information based on the communication address and the state extraction instruction; The state extraction information is sent to the online terminal node, and real-time state information fed back by the online terminal node based on the state extraction information is received.

[0009] In one embodiment, the step of determining the task division density according to the number of the online terminal nodes, and dividing the target task into a plurality of target subtasks based on the task division density includes: Determine the number of online terminal nodes, determine an average task load based on the number of nodes and the task amount of the target task, and determine the average load as the task division density; Determine a task composition of the target task, wherein the task composition includes a plurality of task units; Determine the task size of the task unit, and sort the task units based on the task size to obtain a task division queue; The task division queue is traversed, and tasks in the task division queue are reorganized based on the task division density to obtain a plurality of target subtasks.

[0010] In one embodiment, the steps of respectively determining the task amounts of the target subtasks, determining the maximum load of the online terminal node according to the real-time status information, matching the task amounts with the maximum load, and obtaining the task allocation list include: Determine the task amounts of the target subtasks respectively, and determine the completeness scores of the task amounts; Determine the maximum load that the online terminal node can bear according to the real-time status information; Matching the maximum accepted load with the task volume, and when the maximum accepted load and the task volume are equal, performing preliminary task allocation, and allocating successfully matched tasks to corresponding online terminal nodes; After the initial task allocation, the remaining target subtasks and the online terminal nodes are updated to obtain a target subtask to-be-allocated queue and an online terminal node to-be-allocated queue; Traversing the target subtasks in the target subtask to-be-allocated queue, and determining the degree of matching with the target subtasks in the online terminal node to-be-allocated queue based on the completeness score and task volume of the target subtasks; The target subtask is matched for the online terminal node based on the matching degree to obtain a task allocation list.

[0011] In one embodiment, the step of traversing the target subtasks in the target subtask to-be-allocated queue and determining the degree of matching with the target subtask in the online terminal node to-be-allocated queue based on the completeness score and the task volume of the target subtask comprises: Traversing each maximum load in the queue to be allocated of the online terminal node; Traversing the target subtasks in the target subtask to-be-allocated queue, determining the task amount of the target subtask, and determining the redundant load between the task amount and the maximum accepted load, wherein the redundant load is the difference between the maximum accepted load and the task amount; Determine the maximum number of task units in the queue to be assigned to the target subtask, determine the number of task units of the target subtask, and determine the completeness score of the target subtask according to the maximum number of task units and the number of task units; A first matching degree is obtained according to the completeness score and the first weight, a second matching degree is obtained according to the redundant load and the second weight, and the first matching degree and the second matching degree are aggregated to obtain a matching degree between the target subtask and the online terminal node.

[0012] In one embodiment, the step of matching the target subtask for the online terminal node based on the matching degree to obtain a task allocation list includes: Matching the online terminal node corresponding to the maximum accepted load with the target subtask with the largest completeness score to obtain a task matching combination; When the online terminal node can successfully match the target subtask, the task matching combination is added to the task allocation list, and the online terminal node queue and the target subtask queue are updated; When the online terminal node fails to match the target subtask, the target subtask is split based on the maximum accepted load to obtain a first task part and a second task part, wherein the task amount of the first task part corresponds to the maximum accepted load, and the second task part is inserted into the target subtask queue based on the task amount, and the online terminal node queue and the target subtask queue are updated; According to the order of the maximum carrying load and the integrity score, based on the updated online terminal node queue and the updated target subtask queue, the step of repeatedly matching the online terminal node corresponding to the maximum carrying load with the target subtask with the largest integrity score is performed to obtain a task matching combination.

[0013] In one embodiment, after the steps of allocating the target subtask based on the task allocation list, receiving the calculation result of the online terminal node based on the corresponding target subtask, and summarizing and outputting the calculation result, the step further includes: Determine the start time of the target task and the end time of aggregating the calculation results, and determine the task processing time according to the start time and the end time; Obtaining the task completion time of each online terminal node, and calculating the optimization factor according to the task completion time and the task processing time; The optimization factor is added to the AutoEdge platform. When the next target task is determined, the task is allocated according to the optimization factor, the task amount of the target subtask and the maximum load of the online terminal node to obtain a task allocation list.

[0014] In addition, to achieve the above purpose, the present application also proposes a distributed computing optimization device based on the AutoEdge platform, and the distributed computing optimization device based on the AutoEdge platform includes: The node detection module is used to determine the online terminal nodes connected to the AutoEdge platform when the target task is determined, and obtain the real-time status information of each of the online terminal nodes; A task division module, used to determine the task division density according to the number of the online terminal nodes, and divide the target task into a plurality of target subtasks based on the task division density; A task allocation module, used to determine the task amount of the target subtask respectively, determine the maximum load of the online terminal node according to the real-time status information, match the task amount with the maximum load, and obtain a task allocation list; The task processing module is used to allocate the target subtask based on the task allocation list, receive the calculation results of the online terminal node based on the corresponding target subtask, and summarize and output the calculation results.

[0015] In addition, to achieve the above-mentioned purpose, the present application also proposes a distributed computing optimization device based on the AutoEdge platform, and the distributed computing optimization device based on the AutoEdge platform includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, and the computer program is configured to implement the steps of the distributed computing optimization method based on the AutoEdge platform as described above.

[0016] In addition, to achieve the above-mentioned purpose, the present invention also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the distributed computing optimization method based on the AutoEdge platform as described above are implemented.

[0017] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the steps of the distributed computing optimization method based on the AutoEdge platform as described above.

[0018] The present application provides a distributed computing optimization method based on the AutoEdge platform, by determining the online terminal nodes connected to the AutoEdge platform when the target task is determined, obtaining the real-time status information of the online terminal nodes, determining the task division density according to the number of nodes of the online terminal nodes, dividing the target task into multiple target subtasks based on the task division density, respectively determining the task amount of the target subtasks, determining the maximum load of the online terminal node according to the real-time status information, matching the task amount with the maximum load, obtaining a task allocation list, allocating the target subtask based on the task allocation list, receiving the calculation results of the online terminal node based on the corresponding target subtask received, and summarizing the calculation results for output. Through the above method, larger processing tasks can be collaboratively processed according to the online terminal nodes to improve the task processing efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0020] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0021] Figure 1 This is a flow chart of an embodiment of a distributed computing optimization method based on the AutoEdge platform of this application; Figure 2 This is a schematic diagram of terminal node verification of an embodiment of a distributed computing optimization method based on the AutoEdge platform of this application; Figure 3 A characteristic curve diagram of an embodiment of a distributed computing optimization method based on the AutoEdge platform of this application; Figure 4 This is a schematic diagram of the module structure of a distributed computing optimization device based on the AutoEdge platform in an embodiment of the present application; Figure 5 This is a schematic diagram of the device structure of the hardware operating environment involved in the distributed computing optimization method based on the AutoEdge platform in the embodiment of the present application.

[0022] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0023] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0024] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0025] The main solution of the embodiment of the present application is: when the target task is determined, the online terminal nodes connected to the AutoEdge platform are determined, and the real-time status information of each of the online terminal nodes is obtained respectively; the task division density is determined according to the number of nodes of the online terminal nodes, and the target task is divided into multiple target sub-tasks based on the task division density; the task volume of the target sub-task is determined respectively, and the maximum load of the online terminal node is determined according to the real-time status information, and the task volume is matched with the maximum load to obtain a task allocation list; the target sub-task is allocated based on the task allocation list, and the calculation results of the online terminal node based on the corresponding target sub-task are received, and the calculation results are summarized and output.

[0026] At present, with the increasing number of terminal nodes connected to the AutoEdge platform, the task data that needs to be processed also increases. If the task data is concentrated on the server for processing, it will undoubtedly increase the processing load of the server, thereby affecting the server's rapid response to other services. Therefore, it is possible to consider distributing the tasks that need to be processed to the terminal nodes for distributed computing, splitting larger tasks into multiple smaller processing tasks, while ensuring the server load of the AutoEdge platform, and making full use of the idle load of the terminal. In the process of distributing tasks to terminal nodes, larger tasks are usually evenly distributed to several terminal nodes for processing. This method cannot make reasonable use of the actual processing capacity of each terminal node, which will cause some terminal nodes to be overloaded with tasks and reduce the distributed computing processing capacity.

[0027] The present application provides a solution. When the target task is determined, the online terminal node connected to the AutoEdge platform is determined, the real-time status information of the online terminal node is obtained, the task division density is determined according to the number of nodes of the online terminal node, the target task is divided into multiple target subtasks based on the task division density, the task amount of the target subtask is determined respectively, the maximum load of the online terminal node is determined according to the real-time status information, the task amount is matched with the maximum load, and the task allocation list is obtained. The target subtask is allocated based on the task allocation list, and the calculation results of the online terminal node based on the corresponding target subtask are received, and the calculation results are summarized and output. Through the above method, larger processing tasks can be collaboratively processed according to the online terminal nodes to improve the efficiency of task processing.

[0028] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, a distributed computing optimization device based on the AutoEdge platform, etc., and this embodiment does not specifically limit this. The following uses a distributed computing optimization device based on the AutoEdge platform as an example to illustrate this embodiment and the following embodiments.

[0029] The present application embodiment provides a distributed computing optimization method based on the AutoEdge platform, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the distributed computing optimization method based on the AutoEdge platform of this application.

[0030] In this embodiment, the distributed computing optimization method based on the AutoEdge platform includes steps S10 to S40: Step S10, when the target task is determined, determine the online terminal nodes connected to the AutoEdge platform, and obtain the real-time status information of each of the online terminal nodes.

[0031] It should be noted that the AutoEdge platform is an intelligent platform in edge computing and needs to process a large number of edge computing tasks. The AutoEdge platform can generate target tasks based on actual production and life needs, including the total task volume and the time required to complete. The AutoEdge platform needs to distribute the target tasks to the edge nodes for processing and summarize the processing results of each edge node to complete the result output of the target task.

[0032] Therefore, the target task can be considered as the task that the AutoEdge platform needs to perform at the current moment. Since the AutoEdge platform can establish data connections with multiple edge nodes, and not all edge nodes are able to accept and process tasks 24 hours a day, if the edge node is undergoing maintenance or due to a failure, it cannot process tasks at this time, so there is no need to assign computing tasks to it.

[0033] According to the status of each edge node, the normally operating edge node can be determined as an online terminal node, and other nodes that cannot process tasks can be determined as offline terminal nodes. Offline terminal nodes at least include faulty terminal nodes and terminal nodes that cannot take on new tasks due to full load. The real-time status information of the online terminal node reflects the current load of each online terminal device and the maximum load of each online terminal node. In other words, the real-time status information can reflect the current operation status of each online terminal node.

[0034] In the specific implementation, the AutoEdge platform can monitor the generation of new tasks in real time, and the generation of new tasks is based on the production data of each terminal node and the demand side. When it is detected that a new task has been generated, the current task needs to be processed in time, so the current newly generated task is the target task. When the target task is determined, the online terminal node currently connected to the AutoEdge platform can be determined, and a data transmission channel constructed by API or SDK is established between the AutoEdge platform and the terminal node. The AutoEdge platform can obtain whether the current terminal node is an online terminal node based on the data transmission channel. If the terminal node is an online terminal node, it can be explained that the online terminal node can accept task allocation. After determining the online terminal node connected to the AutoEdge platform, the node information of each online terminal node can be determined based on the detection data at this time, and status request information can be sent to each online terminal node based on the node information to obtain real-time status information fed back by the online terminal node based on the status request information.

[0035] In a feasible implementation manner, when the target task is determined, the steps of determining the online terminal nodes connected to the AutoEdge platform and respectively obtaining the real-time status information of each of the online terminal nodes include: When the target task is determined, node activity detection information is generated, and the node activity detection information is sent to each terminal node connected to the AutoEdge platform to obtain online terminal nodes among the terminal nodes; Determine the communication address of the online terminal node, and generate state extraction information based on the communication address and the state extraction instruction; The state extraction information is sent to the online terminal node, and real-time state information fed back by the online terminal node based on the state extraction information is received.

[0036] In the specific implementation, when the task target is determined, the node activity detection information can be generated immediately. The node activity detection information can be a simple verification code or a calculation formula, and the node activity detection information is transmitted in the form of broadcast. Each terminal device connected to the AutoEdge platform can receive the node activity detection information. Within a limited time, feedback information needs to be generated based on the node activity detection information, and the completion time is added as a timestamp as the second verification information. The AutoEdge platform can verify the results and timestamps in the received feedback information, and when the verification is successful, it will be used as an online terminal node. Reference Figure 2 , Figure 2The figure is a schematic diagram of terminal node verification. Assuming that the node active detection information is ADI, it can be broadcast to M terminal nodes, and N feedback information mass can be obtained, where M≥N. Then the N feedback information is verified, and finally P feedback information is successfully verified, where N≥P. Then the edge nodes corresponding to the P feedback information are determined as online edge nodes. Further, the communication addresses in the P feedback information are parsed to obtain the online terminal node set ONL={Addr1, Addr2, ..., Addrp}.

[0037] Then, based on the communication address and the state extraction instruction, the state extraction instruction is used to collect the node state information of the online terminal node, including but not limited to the CPU load, memory usage, bandwidth rate and other information of the edge node. The online edge node can feedback the node state information in the form of a data packet, thereby obtaining the real-time state information of the edge node. Among them, when transmitting data, the data can be encrypted. In this embodiment, the data packet can be encrypted with the communication address (such as IP or URL) and the unique identification code UID. First, it is necessary to extract information from Addr and UID and convert it into a form that can be used to generate a key. This can be achieved by a hash function, such as SHA-256, to calculate the basic key Kb=Hash(Addr || UID), where || represents a string concatenation operation, and Hash is the selected hash function. Since the key generated directly from Addr and UID may not meet the key length requirements required by a specific encryption algorithm, assuming that the required key length is L, the final key Kf can be obtained by adjusting the length of Kb, for example, by repeating Kb or using a key derivation function (such as PBKDF2) for further processing to obtain an encryption key. The decryption key is its inverse process.

[0038] In a feasible implementation manner, when the target task is determined, before the step of determining the online terminal nodes connected to the AutoEdge platform and respectively acquiring the real-time status information of each of the online terminal nodes, the method further includes: Acquire the workload within the task prediction period, perform feature extraction on the workload, and obtain a work feature value; Generate a characteristic curve by combining the work characteristic value and the collection frequency of the task prediction period; Fitting the characteristic curve to obtain a characteristic-time variation relationship; Determining a target prediction time, and determining a target workload based on the feature-time variation relationship and the target prediction time; A target task is generated with the target workload.

[0039] In the specific implementation, it is necessary to obtain the workload data within the task prediction period. The task prediction period is set according to the actual situation and can be the past few days or weeks. It usually includes indicators such as CPU usage and memory usage. Suppose the workload sequence during this period is , Indicates a time point. Then the workload sequence obtained Perform feature extraction, including statistical features (such as mean, variance), frequency domain features, or other field-related features. Assume that the extracted feature set is The characteristic value is combined with the time point to form a characteristic curve. Since the acquisition frequency is fixed, the change of the characteristic over time can be represented by interpolation or directly using the original data points. Figure 3 , Figure 3 The ARIMA model is applied to fit the characteristic curve to capture the change pattern of the characteristic over time. The general form of the ARIMA model is ARIMA (p, d, q), where p is the number of autoregressive terms, d is the number of differences, and q is the number of moving average terms. For each characteristic , by analyzing its autocorrelation function and partial autocorrelation function, determine the appropriate p, d, p, and then build and train the ARIMA model. Once the ARIMA model is trained, it can be used to predict future time points. The ARIMA model can be expressed as: ,in, is a constant term, are the autoregressive and moving average coefficients, is the white noise error term. Suppose we want to predict a certain moment in the future By inputting the workload at that moment into the trained ARIMA model, we can get the predicted workload value. . Based on the predicted target workload Develop corresponding task plans or adjust existing resource allocation strategies to ensure that the system can run efficiently.

[0040] In a feasible implementation manner, the step of fitting the characteristic curve to obtain the characteristic-time variation relationship includes: Determining a characteristic increment of a preset span of the characteristic curve, and generating a characteristic increment set based on the timing information and the characteristic increment; Comparing each feature increment in the feature increment set with an increment threshold respectively, and when the feature increment is greater than the increment threshold, performing a difference on the feature increment to determine a difference parameter; Performing curve correction on the characteristic curve using the differential parameter to obtain a corrected characteristic curve; The correction characteristic curve is combined with the time series information to obtain the characteristic-time variation relationship.

[0041] In the specific implementation, first determine a preset time span , calculate the feature increment within this time span, for each feature At the point in time The characteristic increment of can be defined as:

[0042] in, Representation characteristics At the point in time The value of .

[0043] So a feature increment set can be generated , which contains the increments of all features at different time points. , T is a time series set. In this process, an incremental threshold can be set , which is used to determine which feature increments need further differential processing. For each feature increment , if satisfied , then the characteristic increment is subjected to a differential operation to determine the differential parameter. The differential operation can be simply understood as calculating the rate of change of the increment again. For example, the second-order differential of the characteristic increment can be expressed as: , based on the differential parameters, the characteristic curve is corrected to obtain the correction curve. The correction method is: , is the adjustment coefficient, which is used to control the influence of the differential parameter on the original characteristic curve. The corrected characteristic curve is combined with the corresponding time information to form a new characteristic-time change relationship. This step is mainly to ensure that we can accurately capture the change trend of the corrected feature over time. For each time point t, there is a corresponding corrected characteristic value , thus forming a new feature - time series.

[0044] Step S20, determining a task division density according to the number of the online terminal nodes, and dividing the target task into a plurality of target subtasks based on the task division density.

[0045] It should be noted that the task division density can be understood as the number of subtasks into which a task is divided. The greater the task division density, the more subtasks are divided.

[0046] In a specific implementation, it is possible to determine the number of online terminal nodes, determine the average task load based on the number of nodes and the task amount of the target task, and determine the average load as the task division density; determine the task composition of the target task, wherein the task composition includes a plurality of task units; determine the task size of the task unit, and sort the task units based on the task size to obtain a task division queue; traverse the task division queue, and reorganize the task division queue based on the task division density to obtain a plurality of target subtasks.

[0047] That is to say, when the current task volume is A, for the current number of nodes n, the task volume of task A can be divided into subtasks of the size of A / n as much as possible, and the task volume of each subtask at this time is the average task load, which is also used as the task division density. Then determine the task composition of the target task, where the task composition includes multiple task units, and there are differences in the task sizes between different task units. Therefore, multiple task units in the target task can be sorted based on task size to obtain a task division queue, and traverse the task division queue, and reorganize the task queue based on the task division density to obtain multiple target subtasks.

[0048] Step S30, respectively determining the task amount of the target subtask, determining the maximum load of the online terminal node according to the real-time status information, matching the task amount with the maximum load, and obtaining a task allocation list; It should be noted that the maximum load refers to the maximum amount of tasks that the online terminal node can undertake under the current operating state, and it can still operate normally after receiving tasks of the corresponding amount. The task allocation list can be considered as the result of task allocation, that is, the corresponding relationship between the target subtasks assigned to the online terminal node.

[0049] In a specific implementation, the steps of respectively determining the task amount of the target subtask, determining the maximum load of the online terminal node according to the real-time status information, matching the task amount with the maximum load, and obtaining a task allocation list include: respectively determining the task amount of the target subtask, and determining the completeness score of the task amount; determining the maximum load of the online terminal node according to the real-time status information; matching the maximum load with the task amount, and when the maximum load is equal to the task amount, performing preliminary task allocation, and allocating successfully matched tasks to the corresponding online terminal nodes; after the preliminary task allocation, updating the remaining target subtasks and the online terminal nodes to obtain a target subtask to be allocated queue and an online terminal node to be allocated queue; traversing the target subtasks in the target subtask to be allocated queue, and determining the degree of matching with the online terminal node to be allocated queue based on the completeness score and task amount of the target subtask; matching the target subtask for the online terminal node based on the degree of matching to obtain a task allocation list.

[0050] For each target subtask First, we need to determine the amount of work and completeness score , the task volume refers to the workload size of the subtask, and the completeness score can be calculated based on factors such as task complexity and priority. The task volume is directly obtained from the subtask definition or calculated based on the summary of task units. The completeness score can be calculated based on a variety of factors, such as the time required to complete the task, resource requirements, etc. The formula can be expressed as:

[0051] in, and is the weight coefficient, and Respectively represent the time and resources required to complete a task.

[0052] By analyzing the real-time status information of the online terminal nodes, the maximum load of each node is determined, and the maximum load of each online terminal node is compared with the task volume of the target subtask. When the two are equal, preliminary task allocation is performed. After completing the preliminary task allocation, the remaining unassigned target subtask queue and the unused online terminal node queue are updated. The target subtasks in the target subtask to-be-assigned queue are traversed, and the completeness score and task volume of the target subtask are determined to match the online terminal node to-be-assigned queue. Then, the online terminal node to which the target subtask is assigned is determined based on the matching degree, and this combination relationship is stored in the task allocation list.

[0053] In a feasible implementation manner, the step of traversing the target subtasks in the target subtask to-be-allocated queue and determining the degree of matching with the target subtask in the online terminal node to-be-allocated queue based on the completeness score and task volume of the target subtask includes: Traversing each maximum load in the queue to be allocated of the online terminal node; Traversing the target subtasks in the target subtask to-be-allocated queue, determining the task amount of the target subtask, and determining the redundant load between the task amount and the maximum accepted load, wherein the redundant load is the difference between the maximum accepted load and the task amount; Determine the maximum number of task units in the queue to be assigned to the target subtask, determine the number of task units of the target subtask, and determine the completeness score of the target subtask according to the maximum number of task units and the number of task units; A first matching degree is obtained according to the completeness score and the first weight, a second matching degree is obtained according to the redundant load and the second weight, and the first matching degree and the second matching degree are aggregated to obtain a matching degree between the target subtask and the online terminal node.

[0054] It should be noted that the first weight is a weight coefficient used to determine the matching degree according to the completeness score, and the second weight is a weight coefficient used to determine the matching degree according to the redundant load.

[0055] In the specific implementation, for each node in the online terminal node to be allocated queue , the corresponding maximum load is , for each target subtask , the task volume is , and then calculate each target subtask Corresponding to each online terminal node Redundant load , defined as the difference between the maximum accepted load and the task volume:

[0056] Among them, is the CPU utilization, and They are standard time consumption and standard resource occupancy respectively.

[0057] if , indicating that the task cannot be assigned to the node because the task volume exceeds the maximum carrying capacity of the node.

[0058] Assume that the maximum number of task units in the target subtask to be assigned queue is , each target subtask The number of task units is , determine the completeness score of the target subtask based on the maximum number of task units and the number of task units :

[0059] in, and are weight coefficients, which are the first weight and the second weight respectively, and Respectively represent the time and resources required to complete a task.

[0060] Then, a first matching degree is obtained according to the completeness score and the first weight, a second matching degree is obtained according to the redundant load and the second weight, and the first matching degree and the second matching degree are summarized to obtain a matching degree between the target subtask and the online terminal node.

[0061] In a feasible implementation manner, the step of matching the target subtask for the online terminal node based on the matching degree to obtain a task allocation list includes: Matching the online terminal node corresponding to the maximum accepted load with the target subtask with the largest completeness score to obtain a task matching combination; When the online terminal node can successfully match the target subtask, the task matching combination is added to the task allocation list, and the online terminal node queue and the target subtask queue are updated; When the online terminal node fails to match the target subtask, the target subtask is split based on the maximum accepted load to obtain a first task part and a second task part, wherein the task amount of the first task part corresponds to the maximum accepted load, and the second task part is inserted into the target subtask queue based on the task amount, and the online terminal node queue and the target subtask queue are updated; According to the order of the maximum carrying load and the integrity score, based on the updated online terminal node queue and the updated target subtask queue, the step of repeatedly matching the online terminal node corresponding to the maximum carrying load with the target subtask with the largest integrity score is performed to obtain a task matching combination.

[0062] In the specific implementation, the online terminal node corresponding to the maximum accepted load is matched with the target subtask with the largest completeness score to obtain a task matching combination. When the match is successful, the task matching combination is added to the task allocation list to complete the task allocation, and the online terminal node queue and the target subtask queue are updated to remove the corresponding task and node information. When the match fails, the target subtask is cut based on the maximum accepted load, and the task volume of one part is consistent with the maximum accepted load. The second part is used as a new subtask and added to the target subtask queue according to the task size for subsequent task allocation. The first part is allocated to the online terminal node, and the online terminal node queue and the target subtask queue are updated. This process is repeated until all the tasks of both are allocated.

[0063] Step S40: allocating the target subtask based on the task allocation list, receiving the calculation result of the online terminal node based on the corresponding target subtask, and summarizing and outputting the calculation result.

[0064] In the specific implementation, after allocating the target subtask according to the task allocation list, the online terminal node can receive the calculation results based on the corresponding target subtask received, and the calculation results can be summarized and output. After the calculation results are output, the start time of the target task and the end time of the calculation results can be determined, and the task processing time can be determined according to the start time and the end time; the task completion time of each online terminal node is obtained, and the optimization factor is calculated according to the task completion time and the task processing time. The optimization factor is the ratio of the task completion time to the task processing time, which is used to measure the task processing capacity; the optimization factor is added to the AutoEdge platform. When the target task is determined next time, the task is allocated according to the optimization factor, the task volume of the target subtask and the maximum load of the online terminal node to obtain a task allocation list.

[0065] This embodiment provides a distributed computing optimization method based on the AutoEdge platform, determines the online terminal nodes connected to the AutoEdge platform, obtains the real-time status information of the online terminal nodes, determines the task division density according to the number of nodes of the online terminal nodes, divides the target task into multiple target subtasks based on the task division density, determines the task amount of the target subtasks respectively, determines the maximum load of the online terminal nodes according to the real-time status information, matches the task amount with the maximum load, obtains the task allocation list, allocates the target subtasks based on the task allocation list, receives the calculation results of the online terminal nodes based on the corresponding target subtasks received, and summarizes and outputs the calculation results. Through the above method, larger processing tasks can be collaboratively processed according to the online terminal nodes to improve the task processing efficiency.

[0066] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the distributed computing optimization method based on the AutoEdge platform of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.

[0067] This application also provides a distributed computing optimization device based on the AutoEdge platform, please refer to Figure 4 , the distributed computing optimization device based on the AutoEdge platform includes: The node detection module 10 is used to determine the online terminal nodes connected to the AutoEdge platform when the target task is determined, and obtain the real-time status information of each of the online terminal nodes; A task division module 20, configured to determine a task division density according to the number of the online terminal nodes, and divide the target task into a plurality of target subtasks based on the task division density; The task allocation module 30 is used to determine the task amount of the target subtask respectively, determine the maximum load of the online terminal node according to the real-time status information, match the task amount with the maximum load, and obtain a task allocation list; The task processing module 40 is used to allocate the target subtask based on the task allocation list, receive the calculation results of the online terminal node based on the corresponding target subtask, and summarize and output the calculation results.

[0068] In a feasible implementation manner, the node detection module 10 is further used to obtain the workload within the task prediction period, perform feature extraction on the workload, and obtain a work feature value; Generate a characteristic curve by combining the work characteristic value and the collection frequency of the task prediction period; Fitting the characteristic curve to obtain a characteristic-time variation relationship; Determining a target prediction time, and determining a target workload based on the feature-time variation relationship and the target prediction time; A target task is generated with the target workload.

[0069] In a feasible implementation manner, the node detection module 10 is further used to determine a feature increment of a preset span of the feature curve, and generate a feature increment set based on the time series information and the feature increment; Comparing each feature increment in the feature increment set with an increment threshold respectively, and when the feature increment is greater than the increment threshold, performing a difference on the feature increment to determine a difference parameter; Performing curve correction on the characteristic curve using the differential parameter to obtain a corrected characteristic curve; The correction characteristic curve is combined with the time series information to obtain the characteristic-time variation relationship.

[0070] In a feasible implementation manner, the node detection module 10 is further used to generate node activity detection information when the target task is determined, send the node activity detection information to each terminal node connected to the AutoEdge platform, and obtain an online terminal node among the terminal nodes; Determine the communication address of the online terminal node, and generate state extraction information based on the communication address and the state extraction instruction; The state extraction information is sent to the online terminal node, and real-time state information fed back by the online terminal node based on the state extraction information is received.

[0071] In a feasible implementation manner, the task division module 20 is further used to determine the number of online terminal nodes, determine the average task load based on the number of nodes and the task amount of the target task, and determine the average load as the task division density; Determine a task composition of the target task, wherein the task composition includes a plurality of task units; Determine the task size of the task unit, and sort the task units based on the task size to obtain a task division queue; The task division queue is traversed, and tasks in the task division queue are reorganized based on the task division density to obtain a plurality of target subtasks.

[0072] In a feasible implementation manner, the task allocation module 30 is further used to determine the task amount of the target subtask respectively and determine the completeness score of the task amount; Determine the maximum load that the online terminal node can bear according to the real-time status information; Matching the maximum accepted load with the task volume, and when the maximum accepted load and the task volume are equal, performing preliminary task allocation, and allocating successfully matched tasks to corresponding online terminal nodes; After the initial task allocation, the remaining target subtasks and the online terminal nodes are updated to obtain a target subtask to-be-allocated queue and an online terminal node to-be-allocated queue; Traversing the target subtasks in the target subtask to-be-allocated queue, and determining the degree of matching with the target subtasks in the online terminal node to-be-allocated queue based on the completeness score and task volume of the target subtasks; The target subtask is matched for the online terminal node based on the matching degree to obtain a task allocation list.

[0073] In a feasible implementation manner, the task allocation module 30 is further used to traverse each maximum load in the queue to be allocated of the online terminal node; Traversing the target subtasks in the target subtask to-be-allocated queue, determining the task amount of the target subtask, and determining the redundant load between the task amount and the maximum accepted load, wherein the redundant load is the difference between the maximum accepted load and the task amount; Determine the maximum number of task units in the queue to be assigned to the target subtask, determine the number of task units of the target subtask, and determine the completeness score of the target subtask according to the maximum number of task units and the number of task units; A first matching degree is obtained according to the completeness score and the first weight, a second matching degree is obtained according to the redundant load and the second weight, and the first matching degree and the second matching degree are aggregated to obtain a matching degree between the target subtask and the online terminal node.

[0074] In a feasible implementation manner, the task allocation module 30 is further used to match the online terminal node corresponding to the maximum accepted load with the target subtask with the largest completeness score to obtain a task matching combination; When the online terminal node can successfully match the target subtask, the task matching combination is added to the task allocation list, and the online terminal node queue and the target subtask queue are updated; When the online terminal node fails to match the target subtask, the target subtask is split based on the maximum accepted load to obtain a first task part and a second task part, wherein the task amount of the first task part corresponds to the maximum accepted load, and the second task part is inserted into the target subtask queue based on the task amount, and the online terminal node queue and the target subtask queue are updated; According to the order of the maximum carrying load and the integrity score, based on the updated online terminal node queue and the updated target subtask queue, the step of repeatedly matching the online terminal node corresponding to the maximum carrying load with the target subtask with the largest integrity score is performed to obtain a task matching combination.

[0075] In a feasible implementation manner, the task processing module 40 is further used to determine the start time of the target task and the end time of aggregating the calculation results, and determine the task processing time according to the start time and the end time; Obtaining the task completion time of each online terminal node, and calculating the optimization factor according to the task completion time and the task processing time; The optimization factor is added to the AutoEdge platform. When the next target task is determined, the task is allocated according to the optimization factor, the task amount of the target subtask and the maximum load of the online terminal node to obtain a task allocation list.

[0076] The distributed computing optimization device based on the AutoEdge platform provided by this application adopts the distributed computing optimization method based on the AutoEdge platform in the above embodiment, which can solve the technical problem that when allocating tasks, the task allocation results cannot be automatically adapted to the actual processing capabilities of the terminal nodes. Compared with the prior art, the beneficial effects of the distributed computing optimization device based on the AutoEdge platform provided by this application are the same as the beneficial effects of the distributed computing optimization method based on the AutoEdge platform provided by the above embodiment, and the other technical features of the distributed computing optimization device based on the AutoEdge platform are the same as the features disclosed in the above embodiment method, which will not be repeated here.

[0077] The present application provides a distributed computing optimization device based on the AutoEdge platform, and the distributed computing optimization device based on the AutoEdge platform includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the distributed computing optimization method based on the AutoEdge platform in the above-mentioned embodiment one.

[0078] Reference below Figure 5 , which shows a schematic diagram of the structure of a distributed computing optimization device based on the AutoEdge platform suitable for implementing the embodiment of the present application. The distributed computing optimization device based on the AutoEdge platform in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 5 The distributed computing optimization device based on the AutoEdge platform shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0079] like Figure 5As shown, the distributed computing optimization device based on the AutoEdge platform may include a processing device 1001 (such as a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM: Read Only Memory) 1002 or the program loaded from the storage device 1003 to the random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the distributed computing optimization device based on the AutoEdge platform are also stored. The processing device 1001, ROM1002 and RAM1004 are connected to each other through a bus 1005. The input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the distributed computing optimization device based on the AutoEdge platform to communicate wirelessly or wired with other devices to exchange data. Although the figure shows a distributed computing optimization device based on the AutoEdge platform with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have instead.

[0080] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0081] The distributed computing optimization device based on the AutoEdge platform provided by this application adopts the distributed computing optimization method based on the AutoEdge platform in the above embodiment, which can solve the technical problems of distributed computing optimization based on the AutoEdge platform. Compared with the prior art, the beneficial effects of the distributed computing optimization device based on the AutoEdge platform provided by this application are the same as the beneficial effects of the distributed computing optimization method based on the AutoEdge platform provided by the above embodiment, and the other technical features of the distributed computing optimization device based on the AutoEdge platform are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.

[0082] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0083] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0084] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the distributed computing optimization method based on the AutoEdge platform in the above-mentioned embodiment.

[0085] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.

[0086] The above-mentioned computer-readable storage medium may be included in a distributed computing optimization device based on the AutoEdge platform; or it may exist independently without being assembled into a distributed computing optimization device based on the AutoEdge platform.

[0087] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by a distributed computing optimization device based on the AutoEdge platform, the distributed computing optimization device based on the AutoEdge platform: when the target task is determined, determine the online terminal nodes connected to the AutoEdge platform, and obtain the real-time status information of each of the online terminal nodes respectively; determine the task division density according to the number of nodes of the online terminal nodes, and divide the target task into multiple target subtasks based on the task division density; determine the task volume of the target subtask respectively, determine the maximum load of the online terminal node according to the real-time status information, match the task volume with the maximum load, and obtain a task allocation list; allocate the target subtask based on the task allocation list, receive the calculation results of the online terminal node based on the corresponding target subtask received, and summarize and output the calculation results.

[0088] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0089] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0090] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0091] The readable storage medium provided in this application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned distributed computing optimization method based on the AutoEdge platform, and can solve the technical problems of distributed computing optimization based on the AutoEdge platform. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as the beneficial effects of the distributed computing optimization method based on the AutoEdge platform provided in the above-mentioned embodiment, and will not be repeated here.

[0092] The present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the above-mentioned distributed computing optimization method based on the AutoEdge platform.

[0093] The computer program product provided in this application can solve the technical problem of distributed computing optimization based on the AutoEdge platform. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as the beneficial effects of the distributed computing optimization method based on the AutoEdge platform provided in the above embodiment, and will not be repeated here.

[0094] The above are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect application in other related technical fields are included in the patent protection scope of the present application.

Claims

1. A distributed computing optimization method based on the AutoEdge platform, characterized in that: The distributed computing optimization method based on the AutoEdge platform includes: When the target task is determined, determine the online terminal nodes connected to the AutoEdge platform, and obtain the real-time status information of each of the online terminal nodes; Determining a task division density according to the number of the online terminal nodes, and dividing the target task into a plurality of target subtasks based on the task division density; Determine the task amount of each target subtask, determine the maximum load of the online terminal node according to the real-time status information, match the task amount with the maximum load, and obtain a task allocation list; The target subtask is allocated based on the task allocation list, the calculation result of the online terminal node based on the corresponding target subtask is received, and the calculation result is summarized and outputted.

2. The method according to claim 1, characterized in that Before the step of determining the online terminal nodes connected to the AutoEdge platform when the target task is determined and respectively obtaining the real-time status information of each of the online terminal nodes, the method further includes: Acquire the workload within the task prediction period, perform feature extraction on the workload, and obtain a work feature value; Generate a characteristic curve by combining the work characteristic value and the acquisition frequency of the task prediction period; Fitting the characteristic curve to obtain a characteristic-time variation relationship; Determining a target prediction time, and determining a target workload based on the feature-time variation relationship and the target prediction time; A target task is generated with the target workload.

3. The method according to claim 2, characterized in that The step of fitting the characteristic curve to obtain the characteristic-time variation relationship comprises: Determining a characteristic increment of a preset span of the characteristic curve, and generating a characteristic increment set based on the timing information and the characteristic increment; Comparing each feature increment in the feature increment set with an increment threshold respectively, and when the feature increment is greater than the increment threshold, performing a difference on the feature increment to determine a difference parameter; Performing curve correction on the characteristic curve using the differential parameter to obtain a corrected characteristic curve; The correction characteristic curve is combined with the time series information to obtain the characteristic-time variation relationship.

4. The method according to claim 1, characterized in that When the target task is determined, the steps of determining the online terminal nodes connected to the AutoEdge platform and respectively obtaining the real-time status information of each of the online terminal nodes include: When the target task is determined, node activity detection information is generated, and the node activity detection information is sent to each terminal node connected to the AutoEdge platform to obtain online terminal nodes among the terminal nodes; Determine the communication address of the online terminal node, and generate state extraction information based on the communication address and the state extraction instruction; The state extraction information is sent to the online terminal node, and real-time state information fed back by the online terminal node based on the state extraction information is received.

5. The method according to claim 1, characterized in that The step of determining the task division density according to the number of the online terminal nodes, and dividing the target task into a plurality of target subtasks based on the task division density comprises: Determine the number of online terminal nodes, determine an average task load based on the number of nodes and the task amount of the target task, and determine the average task load as the task division density; Determine a task composition of the target task, wherein the task composition includes a plurality of task units; Determine the task size of the task unit, and sort the task units based on the task size to obtain a task division queue; The task division queue is traversed, and tasks in the task division queue are reorganized based on the task division density to obtain a plurality of target subtasks.

6. The method according to claim 1, characterized in that The steps of respectively determining the task amounts of the target subtasks, determining the maximum load of the online terminal node according to the real-time status information, matching the task amounts with the maximum load, and obtaining a task allocation list include: Determine the task amounts of the target subtasks respectively, and determine the completeness scores of the task amounts; Determine the maximum load that the online terminal node can bear according to the real-time status information; Matching the maximum accepted load with the task volume, and when the maximum accepted load and the task volume are equal, performing preliminary task allocation, and allocating successfully matched tasks to corresponding online terminal nodes; After the initial task allocation, the remaining target subtasks and the online terminal nodes are updated to obtain a target subtask to-be-allocated queue and an online terminal node to-be-allocated queue; Traversing the target subtasks in the target subtask to-be-allocated queue, and determining the degree of matching with the target subtasks in the online terminal node to-be-allocated queue based on the completeness score and task volume of the target subtasks; The target subtask is matched for the online terminal node based on the matching degree to obtain a task allocation list.

7. The method according to claim 6, characterized in that The step of traversing the target subtasks in the target subtask to-be-allocated queue and determining the degree of matching with the target subtask in the online terminal node to-be-allocated queue based on the completeness score and task volume of the target subtask comprises: Traversing each maximum load in the queue to be allocated of the online terminal node; Traversing the target subtasks in the target subtask to-be-allocated queue, determining the task amount of the target subtask, and determining the redundant load between the task amount and the maximum accepted load, wherein the redundant load is the difference between the maximum accepted load and the task amount; Determine the maximum number of task units in the queue to be assigned to the target subtask, determine the number of task units of the target subtask, and determine the completeness score of the target subtask according to the maximum number of task units and the number of task units; A first matching degree is obtained according to the completeness score and the first weight, a second matching degree is obtained according to the redundant load and the second weight, and the first matching degree and the second matching degree are aggregated to obtain a matching degree between the target subtask and the online terminal node.

8. The method according to claim 6, characterized in that The step of matching the target subtask for the online terminal node based on the matching degree to obtain a task allocation list comprises: Matching the online terminal node corresponding to the maximum accepted load with the target subtask with the largest completeness score to obtain a task matching combination; When the online terminal node can successfully match the target subtask, the task matching combination is added to the task allocation list, and the online terminal node queue and the target subtask queue are updated; When the online terminal node fails to match the target subtask, the target subtask is split based on the maximum accepted load to obtain a first task part and a second task part, wherein the task amount of the first task part corresponds to the maximum accepted load, and the second task part is inserted into the target subtask queue based on the task amount, and the online terminal node queue and the target subtask queue are updated; According to the order of the maximum carrying load and the integrity score, based on the updated online terminal node queue and the updated target subtask queue, the step of repeatedly matching the online terminal node corresponding to the maximum carrying load with the target subtask with the largest integrity score is performed to obtain a task matching combination.

9. The method according to claim 1, characterized in that After the steps of allocating the target subtask based on the task allocation list, receiving the calculation results of the online terminal node based on the corresponding target subtask, and summarizing and outputting the calculation results, the method further includes: Determine the start time of the target task and the end time of aggregating the calculation results, and determine the task processing time according to the start time and the end time; Obtaining the task completion time of each online terminal node, and calculating the optimization factor according to the task completion time and the task processing time; The optimization factor is added to the AutoEdge platform. When the next target task is determined, the task is allocated according to the optimization factor, the task amount of the target subtask and the maximum load of the online terminal node to obtain a task allocation list.

10. A distributed computing optimization device based on the AutoEdge platform, characterized in that: The distributed computing optimization device based on the AutoEdge platform includes: The node detection module is used to determine the online terminal nodes connected to the AutoEdge platform when the target task is determined, and obtain the real-time status information of each of the online terminal nodes; A task division module, used to determine the task division density according to the number of the online terminal nodes, and divide the target task into a plurality of target subtasks based on the task division density; A task allocation module, used to determine the task amount of the target subtask respectively, determine the maximum load of the online terminal node according to the real-time status information, match the task amount with the maximum load, and obtain a task allocation list; The task processing module is used to allocate the target subtask based on the task allocation list, receive the calculation results of the online terminal node based on the corresponding target subtask, and summarize and output the calculation results.

Citation Information

Patent Citations

  • Task scheduling method and system for WIFI performance test platform

    CN118200961A

  • AutoEdge-based intelligent calculation platform automatic optimization method, apparatus and device, and storage medium

    CN118760844A

  • Self-adaptive task scheduling execution unit management method and system

    CN119376903A

  • Data analysis method, system and equipment based on distributed communication and medium

    CN119402440A

  • Management device, distributed system, management method, and program

    JP2018151968A