Edge calculation method

By dynamically allocating the CPU and GPU resources of edge computing devices to process computing tasks, the network congestion and increase computing time problems caused by limited computing power of edge computing devices are solved, and efficient edge computing is achieved.

CN119473579APending Publication Date: 2025-02-18BEIJING INFORMATION SCI & TECH UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411499582.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-25
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

The computing power of edge computing devices is limited. If computing tasks are scheduled in a centralized manner, it will lead to network congestion and increase in computing time, resulting in inefficient computing efficiency.

Method used

By acquiring new computing tasks and dynamically allocating based on the CPU and GPU computing power of the edge computing device, the CPU first processes some tasks, and then the GPU processes unprocessed tasks, ensuring that the tasks are allocated within the computing power range.

Benefits of technology

It effectively improves the efficiency of edge computing, avoids network congestion and increase in computing time, and realizes balanced and efficient computing of task scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119473579A_ABST
    Figure CN119473579A_ABST
Patent Text Reader

Abstract

The invention provides an edge calculation method. The edge computing method comprises the steps of obtaining a new computing task in a certain time slot from source equipment, and obtaining a to-be-computed task list according to the new computing task; according to the computing power of the CPU of the edge computing device, at least part of the computing tasks in the to-be-computed task sequence are allocated to at least part of the edge computing device, and computing of the computing tasks allocated to the edge computing device is completed through the CPU of the edge computing device; obtaining an unprocessed list according to the to-be-calculated task list and a calculation task calculated by a CPU of the edge calculation equipment; the computing power of the GPU of the edge computing device is obtained, at least part of the computing tasks in the unprocessed list are allocated to the edge computing device, and computing of the computing tasks allocated to the edge computing device is completed using the GPU of the edge computing device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computing technology, and in particular to an edge computing method. Background Art

[0002] With the development, application and popularization of new technologies such as the Internet and AI, big data has entered an era of explosive growth. In the process of processing these big data, data processing often takes up 60% to 80% of the time. To address this problem, edge computing has been used to distribute computing tasks to edge computing devices close to the data source, reducing data transmission and processing time, improving computing efficiency, and reducing the burden on the central processor.

[0003] However, considering the limited computing power of edge computing devices, if some computing tasks are centrally scheduled to one or several edge computing devices, it will cause network congestion, increase the computing time, and lead to low computing efficiency. Summary of the invention

[0004] In order to solve at least one of the above technical problems, the present disclosure provides an edge computing method.

[0005] According to one aspect of the present disclosure, there is provided an edge computing method, which includes:

[0006] Obtain a new computing task within a time slot from a source device, and obtain a list of tasks to be computed based on the new computing task;

[0007] According to the computing power of the CPU of the edge computing device, at least part of the computing tasks in the task sequence to be calculated are allocated to at least part of the edge computing devices, and the computing tasks allocated to the edge computing device are calculated by the CPU of the edge computing device;

[0008] Obtain an unprocessed list according to the list of tasks to be calculated and the computing tasks calculated by the CPU of the edge computing device;

[0009] Obtain computing power of a GPU of the edge computing device, assign at least part of the computing tasks in the unprocessed list to the edge computing device, and use the GPU of the edge computing device to complete computing of the computing tasks assigned to the edge computing device.

[0010] The edge computing method according to at least one embodiment of the present disclosure further includes:

[0011] Obtaining an intermediate list according to the unprocessed list and the computing tasks computed by the GPU of the edge computing device; and

[0012] A new computing task in the next time slot is obtained from the source device, and the new computing task is appended to the intermediate list to obtain a list of tasks to be computed in the next time slot.

[0013] According to the edge computing method of at least one embodiment of the present disclosure, the edge computing device is a computing apparatus based on a software defined network.

[0014] According to the edge computing method of at least one embodiment of the present disclosure, allocating at least part of the computing tasks in the unprocessed list to the edge computing device needs to meet the following conditions:

[0015]

[0016] Among them, max represents the maximization operation, They represent the time slot set and edge computing device set respectively, and t and m represent the set and collection A certain time slot and a certain edge computing device in the set; K(t) represents the set of new computing tasks arriving at time t, and k represents a new computing task in the set K(t); represents the set of decision variables, x k,m (t) is a decision variable in the set, indicating whether to assign the new computing task k to the GPU on the edge computing device m for processing in the time slot t; dp k and DR k They represent the number of data packets and latency requirements carried by the new computing task k; C m (t) and G m (t) represents the number of data packets that can be processed by the CPU and the number of available threads on the GPU of the edge computing device m in time slot t, respectively; and represents the maximum number of data packets that can be processed by the CPU and the maximum number of available threads on the GPU on the edge computing device m; λ represents the proportion of CPU computing resources required when a new computing task is processed by the GPU; n represents a switch device in the network, r n (t) represents the forwarding table capacity of switch n in time slot t; Indicates whether switch n forwards the new computing task k processed by edge computing device m in time slot t; It represents the total time required for edge computing device m to process a new computing task k using the GPU. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The accompanying drawings illustrate exemplary embodiments of the present disclosure and together with the description serve to explain the principles of the present disclosure. These drawings are included to provide a further understanding of the present disclosure and are incorporated in and constitute a part of this specification.

[0018] Figure 1 It is a structural diagram of an edge computing system according to an embodiment of the present disclosure.

[0019] Figure 2 is a flow chart of an edge computing method according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0020] The present disclosure is further described in detail below in conjunction with the accompanying drawings and implementations. It is understood that the specific implementations described herein are only used to explain the relevant content, rather than to limit the present disclosure. It should also be noted that, for ease of description, only the parts related to the present disclosure are shown in the accompanying drawings.

[0021] It should be noted that, in the absence of conflict, the embodiments and features of the embodiments in the present disclosure can be combined with each other. The technical solution of the present disclosure will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0022] Unless otherwise specified, the exemplary embodiments / embodiments shown will be understood as providing exemplary features of various details of some ways in which the technical concept of the present disclosure can be implemented in practice. Therefore, unless otherwise specified, the features of the various embodiments / embodiments can be combined, separated, interchanged and / or rearranged without departing from the technical concept of the present disclosure.

[0023] The use of cross-hatching and / or shading in the accompanying drawings is generally used to make the boundaries between adjacent components clear. As such, unless otherwise specified, the presence or absence of cross-hatching or shading does not convey or indicate any preference or requirement for the specific materials, material properties, dimensions, proportions, commonalities between the components shown, and / or any other characteristics, attributes, properties, etc. of the components. In addition, in the accompanying drawings, the sizes and relative sizes of the components may be exaggerated for clarity and / or descriptive purposes. When the exemplary embodiments can be implemented differently, the specific process sequence can be performed in a different order than described. For example, two successively described processes can be performed substantially simultaneously or in an order opposite to the described order. In addition, the same figure numbers represent the same components.

[0024] The terms used herein are for the purpose of describing specific embodiments, and are not intended to be restrictive. As used herein, unless the context clearly indicates otherwise, the singular forms "one (kind, person)" and "said (the)" are also intended to include plural forms. In addition, when the terms "comprise" and / or "include" and their variations are used in this specification, it is explained that there are stated features, integral bodies, steps, operations, parts, assemblies and / or their groups, but it is not excluded that there are or add one or more other features, integral bodies, steps, operations, parts, assemblies and / or their groups. It should also be noted that, as used herein, the terms "substantially", "approximately" and other similar terms are used as approximate terms and not as degree terms, so that they are used to explain the inherent deviations of the measured values, calculated values ​​and / or the values ​​provided that will be recognized by those of ordinary skill in the art.

[0025] The edge computing method disclosed in the present invention can be applied to edge computing systems. Figure 1 As shown, the edge computing system of the present disclosure may include at least one source device 1, one target device 2, at least one edge computing device 3, and multiple routers 4. Wherein, when there are multiple edge computing devices, they may include a first type of computing device and a second type of computing device, and the first type of computing device may include only a CPU but not a GPU. In this case, the first type of computing device can only complete the calculation of the computing task through its CPU. The second type of computing device may include a CPU and a GPU, and accordingly, it may complete the calculation of the computing task through the CPU and / or the GPU.

[0026] And in Figure 1 In the edge computing system shown, the red dotted line represents the transfer path of the computing task calculated by the GPU; the green dotted line represents the transfer path of the computing task calculated by the CPU.

[0027] In a preferred embodiment, the first type computing device and the second type computing device may be computing devices based on software defined networks. In addition, VNF services may be deployed on the first type computing device and the second type computing device. Thus, the control plane and the data plane of the edge computing device of the present disclosure are separated, thereby achieving flexible control of traffic and making the network function as a pipeline more intelligent.

[0028] Based on the above edge computing system, such as Figure 2 As shown, the edge computing method disclosed in the present invention may include the following steps:

[0029] S110. Obtain a new computing task within a time slot from a source device, and obtain a list of tasks to be calculated based on the new computing task; S120. According to the computing power of the CPU of the edge computing device, allocate at least part of the computing tasks in the sequence of tasks to be calculated to at least part of the edge computing device, and use the CPU of the edge computing device to complete the calculation of the computing tasks allocated to the edge computing device; S130. Obtain an unprocessed list based on the list of tasks to be calculated and the computing tasks calculated by the CPU of the edge computing device; S140. Obtain the computing power of the GPU of the edge computing device, allocate at least part of the computing tasks in the unprocessed list to the edge computing device, and use the GPU of the edge computing device to complete the calculation of the computing tasks allocated to the edge computing device.

[0030] The edge computing method disclosed in the present invention will be described in detail below.

[0031] In step S110, when the edge computing method of the present invention is executed for the first time, the new computing task will form a list of tasks to be calculated. When the edge computing method of the present invention is executed for the second time, since there may be uncompleted computing tasks at the previous moment (time slot), it is necessary to merge the uncompleted computing tasks with the new computing tasks and form a list of tasks to be calculated.

[0032] Of course, there may not be any uncompleted computing tasks at the last moment. In this case, the new computing task is the same as the list of tasks to be computed.

[0033] Specifically, in the edge computing method disclosed in the present invention, an intermediate list is obtained based on the unprocessed list and the computing tasks calculated by the GPU of the edge computing device; the intermediate list is the computing tasks that have not been completed in the current time slot, and the computing tasks in the intermediate list also need to be executed in the next time slot. Further, a new computing task in the next time slot is obtained from the source device, and the new computing task is appended to the intermediate list to obtain a list of tasks to be calculated in the next time slot, and in the next time slot, the list to be calculated in the next time slot is processed.

[0034] In step S120, according to the computing power of the CPU of the edge computing device, at least part of the computing tasks in the task sequence to be calculated are allocated to at least part of the edge computing devices, and the calculation of the computing tasks allocated to the edge computing device is completed by the CPU of the edge computing device.

[0035] That is to say, in the edge computing method disclosed in the present invention, the data size in the task list to be calculated is first sorted in non-descending order to screen out computing tasks that are beneficial to CPU execution, and the computing tasks are assigned to the edge computing device with the shortest total time to complete the computing tasks (including data transmission time, waiting time for computing tasks, and computing time).

[0036] In one embodiment, when computing tasks are assigned to edge computing devices, the available computing resources of the edge computing devices should not be exceeded, that is, the CPUs of these edge devices should not be overloaded.

[0037] In step S130, for computing tasks in the sequence of tasks to be computed, if the computing power of the CPU of the edge computing device cannot meet the delay requirement of the computing tasks, these computing tasks will be added to the unprocessed list. Then, the tasks in the unprocessed list will be processed by the GPU of the edge computing device.

[0038] In step S140, the computing power of the GPU of the edge computing device is obtained, at least part of the computing tasks in the unprocessed list are assigned to the edge computing device, and the GPU of the edge computing device is used to complete the calculation of the computing tasks assigned to the edge computing device.

[0039] Therefore, in the edge computing method disclosed in the present invention, a balance can be achieved between the simplicity of scheduling computing tasks and the speed of completing computing tasks, thereby improving the efficiency of edge computing.

[0040] Specifically, in step S140, allocating at least part of the computing tasks in the unprocessed list to the edge computing device needs to meet the following conditions:

[0041]

[0042] Among them, max represents the maximization operation, They represent the time slot set and edge computing device set respectively, and t and m represent the set and collection A time slot and an edge computing device in the set; K(t) represents the set of new computing tasks (i.e., request set) arriving at time t, and k represents a new computing task in the set K(t). represents the set of decision variables, x k,m (t) is a decision variable in the set, indicating whether to assign request k to the GPU on edge computing device m for processing in time slot t. k and DR k They represent the number of data packets and delay requirements carried by request k. m (t) and G m (t) represent the number of data packets that can be processed by the CPU and the number of available threads on the GPU on the edge computing device m in time slot t, respectively. and It represents the maximum number of packets that can be processed by the CPU on edge computing device m and the maximum number of available threads on the GPU. λ represents the proportion of CPU computing resources required when a request is processed by the GPU. n represents a switch device in the network, r n (t) represents the forwarding table capacity of switch n in time slot t. Indicates whether switch n forwards request k processed by edge computing device m in time slot t. It represents the total time required for edge computing device m to process request k using GPU, including data transmission time, computing time and waiting time.

[0043] The above formula (1) represents the optimization problem of maximizing the cumulative throughput of all time slots in the entire network. Formula (2) restricts all decision variables x k,m (t) can only be 0 or 1. Formula (3) indicates that the number of packets that can be processed by the CPU and the number of available threads on the GPU of each edge computing node in any time slot should not exceed the maximum number of packets that can be processed by the CPU and the maximum number of available threads on the GPU. Formula (4) ensures that each user request can only be scheduled once for all edge nodes in all time slots. Formula (5) ensures that the CPU resources required for the request allocated to each node in any time slot cannot exceed the CPU resource capacity of the node in the time slot, because the GPU requires the assistance of the CPU in calculation. Formula (6) ensures that the number of available threads for GPU execution requests on each node in any time slot is sufficient. Formula (7) ensures that the number of requests forwarded by each switch in any time slot will not exceed the capacity of its forwarding table in that time slot. Formula (8) ensures that each user request must be completed within the delay limit.

[0044] The present disclosure also provides an electronic device, including: a memory, the memory storing execution instructions; and a processor or other hardware module, the processor or other hardware module executes the execution instructions stored in the memory, so that the processor or other hardware module executes the above method.

[0045] The present disclosure also provides a readable storage medium, in which execution instructions are stored. When the execution instructions are executed by a processor, they are used to implement the above method.

[0046] Those skilled in the art should understand that the above embodiments are only for the purpose of clearly illustrating the present disclosure, and are not intended to limit the scope of the present disclosure. For those skilled in the art, other changes or modifications may be made based on the above disclosure, and these changes or modifications are still within the scope of the present disclosure.

Claims

1. An edge computing method, characterized in that: include: Obtain a new computing task within a time slot from a source device, and obtain a list of tasks to be computed based on the new computing task; According to the computing power of the CPU of the edge computing device, at least part of the computing tasks in the task sequence to be calculated are allocated to at least part of the edge computing devices, and the computing tasks allocated to the edge computing device are calculated by the CPU of the edge computing device; Obtain an unprocessed list according to the list of tasks to be calculated and the computing tasks calculated by the CPU of the edge computing device; Obtain computing power of a GPU of the edge computing device, assign at least part of the computing tasks in the unprocessed list to the edge computing device, and use the GPU of the edge computing device to complete computing of the computing tasks assigned to the edge computing device.

2. The edge computing method according to claim 1, characterized in that: Also includes: An intermediate list is obtained according to the unprocessed list and the computing tasks calculated by the GPU of the edge computing device; as well as A new computing task in the next time slot is obtained from the source device, and the new computing task is appended to the intermediate list to obtain a list of tasks to be computed in the next time slot.

3. The edge computing method according to claim 1, characterized in that: The edge computing device is a computing device based on software defined network.

4. The edge computing method according to claim 1, characterized in that: Allocating at least part of the computing tasks in the unprocessed list to the edge computing device requires that: Among them, max represents the maximization operation, They represent the time slot set and edge computing device set respectively, and t and m represent the set and collection A certain time slot and a certain edge computing device in the set; K(t) represents the set of new computing tasks arriving at time t, and k represents a new computing task in the set K(t); represents the set of decision variables, x k,m (t) is a decision variable in the set, indicating whether to assign the new computing task k to the GPU on the edge computing device m for processing in the time slot t; dp k and DR k They represent the number of data packets and latency requirements carried by the new computing task k; C m (t) and G m (t) represents the number of data packets that can be processed by the CPU and the number of available threads on the GPU of the edge computing device m in time slot t, respectively; and represents the maximum number of data packets that can be processed by the CPU and the maximum number of available threads on the GPU on the edge computing device m; λ represents the proportion of CPU computing resources required when a new computing task is processed by the GPU; n represents a switch device in the network, r n (t) represents the forwarding table capacity of switch n in time slot t; Indicates whether switch n forwards the new computing task k processed by edge computing device m in time slot t; It represents the total time required for edge computing device m to process a new computing task k using the GPU.