CN111597025B - Edge calculation scheduling algorithm and system - Google Patents

Edge calculation scheduling algorithm and system Download PDF

Info

Publication number
CN111597025B
CN111597025B CN202010407602.4A CN202010407602A CN111597025B CN 111597025 B CN111597025 B CN 111597025B CN 202010407602 A CN202010407602 A CN 202010407602A CN 111597025 B CN111597025 B CN 111597025B
Authority
CN
China
Prior art keywords
tasks
edge computing
task
edge
computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010407602.4A
Other languages
Chinese (zh)
Other versions
CN111597025A (en
Inventor
张锐
兰毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Planetary Computing Power Shenzhen Technology Co ltd
Original Assignee
Planetary Computing Power Shenzhen Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Planetary Computing Power Shenzhen Technology Co ltd filed Critical Planetary Computing Power Shenzhen Technology Co ltd
Priority to CN202010407602.4A priority Critical patent/CN111597025B/en
Publication of CN111597025A publication Critical patent/CN111597025A/en
Application granted granted Critical
Publication of CN111597025B publication Critical patent/CN111597025B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses an edge computing scheduling algorithm and a system, wherein the edge computing scheduling algorithm comprises the following steps: acquiring X computing tasks and determining the priority of each computing task; the X computing tasks are distributed to queues with different priority levels according to the priority levels, and Y ready queues with different priority levels are formed; and (3) allowing the execution time Ty of the queues with different preference levels, suspending the execution time Ty if the task is not executed in Ty, putting the task at the tail of the priority ready queue for queuing again, and selecting the optimal n edge computing nodes when each task is executed. The tasks with different priorities are positioned in different queues, and the tasks are not blocked for a long time when being polled and executed, so that all the tasks are ensured to be normally executed. The invention quantifies the service capability of the edge computing node and ensures that the user task selects the optimal node to execute.

Description

Edge calculation scheduling algorithm and system
Technical Field
The invention belongs to the technical field of edge calculation, and relates to an edge calculation scheduling algorithm and an edge calculation scheduling system.
Background
Edge computing refers to providing near-end services on the side near the object or data source, using an open platform with integrated network, computing, storage, and application core capabilities. The application program is initiated at the cloud end and runs at the edge side, so that a faster network service response is generated, and the requirements of the industry in the aspects of real-time service, application intelligence, safety, privacy protection and the like are met. The edge calculation adopts a distributed operation architecture, and data and operation are processed by moving a network center node to an edge node. The edge computing process is to break up the large service that would otherwise be handled entirely by the central node, cut into smaller and more manageable parts, and scatter to the edge nodes for processing. The most suitable edge node is selected to provide intelligent analysis processing service, large-scale service, data and calculation are decomposed and cut into smaller and easier-to-manage parts, the parts are scattered to the edge node to be executed, finally, a calculation result is formed, time delay is reduced, efficiency is improved, and safety privacy protection is improved. From the industrial application, edge computation is roughly divided into four types, namely, internet of things edge computation, P2P edge computation, server edge computation and operator edge computation.
The edge computation generally adopts a 'big two-layer' structure, and comprises a dispatching framework and an execution framework, wherein dispatching is a central node, and execution is widely distributed in edge computation nodes (Edge Computing Node, ECN) of different regions, different types and different scales. The edge scheduling algorithm (Edge Scheduling Algorithm, ESA) has a very important role in edge computation, which mainly achieves the following two tasks: how to determine the execution sequence of the tasks and how to select the optimal edge computing node, thereby meeting the requirements of computing tasks in different scenes.
At present, in terms of how to determine the execution sequence of tasks, a common method is a first-come first-serve scheduling algorithm, scheduling is performed according to the arrival sequence of the tasks, namely, the tasks with the longest waiting time in a system are prioritized, and the short tasks after the long tasks are scheduled by the method have large waiting time and large weighted turnover time, so that the short tasks are not easy to execute. Another common method is a priority scheduling algorithm, when the system schedules, a task with the highest priority is selected, and a computing node is allocated to the task, and when the method is used, if a task with continuously high priority arrives, a task with low priority may not be executed for a long time.
Disclosure of Invention
The invention aims at least solving the technical problems existing in the prior art, and particularly creatively provides various edge calculation scheduling algorithms and systems.
In order to achieve the above object of the present invention, according to a first aspect of the present invention, there is provided an edge calculation scheduling algorithm comprising the steps of:
acquiring X computing tasks and determining the priority of each computing task, wherein X is a positive integer;
the X computing tasks are distributed to queues with different priority levels according to the priority levels to form Y ready queues with different priority levels, wherein Y is a positive integer greater than 1;
and (3) allowing the execution time Ty of the queues with different preference levels, wherein the Ty is the total execution time of the tasks in the Y-th queue, y=1, 2, … … and Y, if the tasks are not completely executed in the Ty, suspending, putting the tasks into the tail of the priority ready queue for queuing again, and selecting the optimal n edge computing nodes when each task is executed, wherein n is a positive integer.
The tasks with different priorities are positioned in different queues, and the tasks are not blocked for a long time when being polled and executed, so that all the tasks are ensured to be normally executed.
According to a preferred embodiment of the present invention, the method for selecting the optimal n edge computing nodes is as follows:
calculating the current service capability S [ i ] of each edge computing node in m edge computing nodes and the edge computing overall service capability Sigma S [ i ] of the current system, wherein i is the serial number of the edge computing node, 0<i is less than or equal to m, m is a positive integer,
ith edge computing node current service capability value si]= (number of server CPU cores p1+number of server GPU cores p2+memory P3) (1-current number of tasks/maximum number of tasks) P [ i ]]P1, p2, p3 are weight coefficients, p1+p2+p3=1, P [ i ]]Indicating the current comprehensive index of the ith edge computing node0<N is less than or equal to N, wherein N is the total calculated scene number, fin is the index of the ith calculation scene supported by the ith edge calculation node;
the current service capability value S [ in ] = (the number of server CPU cores is P1+ the number of server GPU cores is P2+ the number of memory is P3) (1-the current task number/the maximum task number) (P [ i ]. The Fn) of the ith edge computing node in the aspect of Fn computing scene;
when Sigma S [ i ] is within the threshold, the n edge computing nodes ranked at the front are selected according to the size ranking of S [ i ].
The invention quantifies the service capability of the edge computing node and ensures that the user task selects the optimal node to execute.
According to another preferred embodiment of the invention, the task execution times Ty of the different preference level queues are the same or different or not exactly the same. By setting the execution time Ty of the task, the execution time of the tasks in different scenes can be dynamically adjusted according to the task quantity, and the efficiency is improved.
According to a further preferred embodiment of the invention, the task execution time Ty of the different preference level queues is proportional to the priority level. The priority level is high, the execution time is long, and the task with high priority level is ensured to be executed first.
According to yet another preferred embodiment of the present invention, the top-ranked tasks in the same priority level queue are performed first. The first-come first-serve improves the service efficiency.
In order to achieve the above object of the present invention, according to a second aspect of the present invention, there is provided an edge computing scheduling system including a resource scheduling node and a plurality of edge computing nodes, the resource scheduling node receiving a plurality of computing tasks of a client and controlling execution of each task according to the method of the present invention, the task execution selecting an optimal n edge computing nodes.
The edge computing scheduling system of the invention ensures that tasks with different priorities are positioned in different queues, polling is performed, the tasks are not blocked for a long time, and all the tasks are ensured to be normally performed.
In addition, the service capability of the edge computing node can be quantized, and the user task is guaranteed to select the optimal node to execute.
Drawings
FIG. 1 is a flow chart of an edge calculation scheduling algorithm in a preferred embodiment of the present invention.
Detailed Description
Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are illustrative only and are not to be construed as limiting the invention.
In the description of the present invention, it should be understood that the terms "longitudinal," "transverse," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," and the like indicate orientations or positional relationships based on the orientation or positional relationships shown in the drawings, merely to facilitate describing the present invention and simplify the description, and do not indicate or imply that the devices or elements referred to must have a specific orientation, be configured and operated in a specific orientation, and therefore should not be construed as limiting the present invention.
In the description of the present invention, unless otherwise specified and defined, it should be noted that the terms "mounted," "connected," and "coupled" are to be construed broadly, and may be, for example, mechanical or electrical, or may be in communication with each other between two elements, directly or indirectly through intermediaries, as would be understood by those skilled in the art, in view of the specific meaning of the terms described above.
The invention provides an edge computing scheduling algorithm, which comprises the following steps as shown in fig. 1:
the method comprises the steps of obtaining X computing tasks and determining the priority of each computing task, wherein X is a positive integer, for example, priority levels are set according to different task types (or computing scenes), for example, a plurality of computing scenes (including deep learning, reinforcement learning, countermeasure generation, internet of things, big data, cloud rendering, VASP and the like) are arranged, the priorities of the computing tasks can be set according to actual needs, for example, the deep learning, the reinforcement learning is set as a first level, the countermeasure generation, the Internet of things is set as a second level, the big data, the cloud rendering and the VASP are set as a third level, and the higher the priority of the technology is, the higher the priority is.
And distributing the X computing tasks into queues with different priority levels according to the priority levels to form Y ready queues with different priority levels, wherein Y is a positive integer greater than 1.
And (3) allowing the execution time Ty of the queues with different preference levels, wherein the Ty is the total execution time of the tasks in the Y-th queue, y=1, 2, … … and Y, if the tasks are not completely executed in the Ty, suspending, putting the tasks into the tail of the priority ready queue for queuing again, and selecting the optimal n edge computing nodes when each task is executed, wherein n is a positive integer.
In this embodiment, the method for selecting the optimal n edge computing nodes is as follows:
q [ ij ] represents the j-th task of the i-th queue, task t=q [ ij ] needs to be processed at n (m > n) nodes.
And calculating the current service capacity S [ i ] of each edge computing node in the m edge computing nodes and the edge computing overall service capacity Sigma S [ i ] of the current system, wherein i is the serial number of the edge computing node, 0<i is less than or equal to m, and m is a positive integer.
Ith edge computing node current service capability value si]= (number of server CPU cores p1+number of server GPU cores p2+memory P3) (1-current number of tasks/maximum number of tasks) P [ i ]]P1, p2, p3 are weight coefficients, p1+p2+p3=1, for example p1=p2=p3=1/3. P [ i ]]Indicating the current comprehensive index of the ith edge computing node0<N is less than or equal to N, wherein N is the total calculated scene number, fin is the index of the ith calculation scene supported by the ith edge calculation node;
the edge computing nodes supporting different computing scenarios have different comprehensive indexes, and in general, the stronger the specialty, the lower the comprehensive index value. If the deep learning is f1=0.2, the reinforcement learning is f2=0.2, the generated antagonism is f3=0.15, the internet of things is f4=0.3, the big data is f5=0.35, the cloud rendering is f6=0.2, the vasp is f7=0.1, and if the ith node is supported by all application scenes, the node composite index is P [ i ] = Σfn (0 < n) =1.5.
The current service capability value S [ in ] = (the number of server CPU cores is P1+ the number of server GPU cores is P2+ the number of memory is P3) (1-the current task number/the maximum task number) (P [ i ]. The Fn) of the ith edge computing node in the aspect of Fn computing scene;
when Sigma S [ i ] is within the threshold, the n edge computing nodes ranked at the front are selected according to the size ranking of S [ i ].
The invention quantifies the service capability of the edge computing node and ensures that the user task selects the optimal node to execute.
According to a preferred embodiment of the invention, the task execution times Ty of the different preference level queues are the same or different or not exactly the same. By setting the execution time Ty of the task, the execution time of the tasks in different scenes can be dynamically adjusted according to the task quantity, and the efficiency is improved. According to another preferred embodiment of the invention, the length of the task execution time Ty of the different preference level queues is proportional to the priority level. The priority level is high, the execution time is long, and the task with high priority level is ensured to be executed first.
According to yet another preferred embodiment of the present invention, the top-ranked tasks in the same priority level queue are performed first. The first-come first-serve improves the service efficiency.
The invention also provides an edge computing scheduling system which comprises a resource scheduling node and a plurality of edge computing nodes, wherein the resource scheduling node receives a plurality of computing tasks of a client and controls the execution of each task according to the method disclosed by the invention, and the optimal n edge computing nodes are selected when the tasks are executed. The edge computing scheduling system of the invention ensures that tasks with different priorities are positioned in different queues, polling is performed, the tasks are not blocked for a long time, and all the tasks are ensured to be normally performed. In addition, the service capability of the edge computing node can be quantized, and the user task is guaranteed to select the optimal node to execute.
In the description of the present specification, a description referring to terms "one embodiment," "some embodiments," "examples," "specific examples," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiments or examples. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
While embodiments of the present invention have been shown and described, it will be understood by those of ordinary skill in the art that: many changes, modifications, substitutions and variations may be made to the embodiments without departing from the spirit and principles of the invention, the scope of which is defined by the claims and their equivalents.

Claims (6)

1. An edge computing scheduling algorithm, comprising the steps of:
acquiring X computing tasks and determining the priority of each computing task, wherein X is a positive integer;
the X computing tasks are distributed to queues with different priority levels according to the priority levels to form Y ready queues with different priority levels, wherein Y is a positive integer greater than 1;
the method comprises the steps of enabling queues with different preference levels to execute time Ty, wherein Ty is the total execution time of tasks in a Y-th queue, y=1, 2, … … and Y, if some tasks are not executed in Ty, suspending, putting the tasks into the tail of the priority ready queue for queuing again, and selecting optimal n edge computing nodes when each task is executed, wherein n is a positive integer;
the method for selecting the optimal n edge computing nodes comprises the following steps:
calculating the current service capacity S [ i ] of each edge calculation node in m edge calculation nodes and the edge calculation overall service capacity Sigma S [ i ] of the current system, wherein i is the serial number of the edge calculation node, 0<i is less than or equal to m, and m is a positive integer;
ith edge computing node current service capability value si]= (number of server CPU cores p1+number of server GPU cores p2+memory P3) (1-current number of tasks/maximum number of tasks) P [ i ]]P1, p2, p3 are weight coefficients, p1+p2+p3=1, P [ i ]]Indicating the current comprehensive index of the ith edge computing nodeWherein N is the total calculated scene number, F in Supporting an index of an nth computation scene for an ith edge computation node;
the current service capability value S [ in ] = (the number of server CPU cores is P1+ the number of server GPU cores is P2+ the number of memory is P3) (1-the current task number/the maximum task number) (P [ i ]. The Fn) of the ith edge computing node in the aspect of Fn computing scene;
when Sigma S [ i ] is within the threshold, the n edge computing nodes ranked at the front are selected according to the size ranking of S [ i ].
2. The edge computing scheduling algorithm of claim 1, wherein the task execution times Ty of different preference level queues are the same or different or not exactly the same.
3. The edge computing scheduling algorithm of claim 2, wherein the length of task execution time Ty for different preference level queues is proportional to priority level.
4. The edge computing scheduling algorithm of claim 1 wherein the top-ranked tasks in the same priority ranking queue are performed first.
5. The edge computing scheduling algorithm of claim 1, wherein the priority levels of computing tasks for different scenarios are different.
6. An edge computing scheduling system comprising a resource scheduling node and a plurality of edge computing nodes, the resource scheduling node receiving a plurality of computing tasks for a customer and controlling execution of each task according to the method of any one of claims 1 to 5, the task execution selecting the optimal n edge computing nodes.
CN202010407602.4A 2020-05-14 2020-05-14 Edge calculation scheduling algorithm and system Active CN111597025B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010407602.4A CN111597025B (en) 2020-05-14 2020-05-14 Edge calculation scheduling algorithm and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010407602.4A CN111597025B (en) 2020-05-14 2020-05-14 Edge calculation scheduling algorithm and system

Publications (2)

Publication Number Publication Date
CN111597025A CN111597025A (en) 2020-08-28
CN111597025B true CN111597025B (en) 2024-02-09

Family

ID=72187358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010407602.4A Active CN111597025B (en) 2020-05-14 2020-05-14 Edge calculation scheduling algorithm and system

Country Status (1)

Country Link
CN (1) CN111597025B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148449B (en) * 2020-09-22 2024-06-04 行星算力(深圳)科技有限公司 Scheduling algorithm and system based on edge calculation for local area network
CN112148454A (en) * 2020-09-29 2020-12-29 行星算力(深圳)科技有限公司 Edge computing method supporting serial and parallel and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684083A (en) * 2018-12-11 2019-04-26 北京工业大学 A kind of multilevel transaction schedule allocation strategy towards under edge-cloud isomery
CN110198278A (en) * 2019-04-15 2019-09-03 湖南大学 A kind of Lyapunov optimization method in car networking cloud and the scheduling of edge Joint Task
CN110570075A (en) * 2019-07-18 2019-12-13 北京邮电大学 Power business edge calculation task allocation method and device
CN110688213A (en) * 2018-07-05 2020-01-14 深圳先进技术研究院 Resource management method and system based on edge calculation and electronic equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688213A (en) * 2018-07-05 2020-01-14 深圳先进技术研究院 Resource management method and system based on edge calculation and electronic equipment
CN109684083A (en) * 2018-12-11 2019-04-26 北京工业大学 A kind of multilevel transaction schedule allocation strategy towards under edge-cloud isomery
CN110198278A (en) * 2019-04-15 2019-09-03 湖南大学 A kind of Lyapunov optimization method in car networking cloud and the scheduling of edge Joint Task
CN110570075A (en) * 2019-07-18 2019-12-13 北京邮电大学 Power business edge calculation task allocation method and device

Also Published As

Publication number Publication date
CN111597025A (en) 2020-08-28

Similar Documents

Publication Publication Date Title
CN108965024B (en) Virtual network function scheduling method based on prediction for 5G network slice
US10474504B2 (en) Distributed node intra-group task scheduling method and system
CN104657221B (en) The more queue flood peak staggered regulation models and method of task based access control classification in a kind of cloud computing
CN111597043B (en) Full scene edge calculation method, device and system
CN111597025B (en) Edge calculation scheduling algorithm and system
CN111131421B (en) Method for interconnection and intercommunication of industrial internet field big data and cloud information
CN111400022A (en) Resource scheduling method and device and electronic equipment
CN112148454A (en) Edge computing method supporting serial and parallel and electronic equipment
WO2023124947A1 (en) Task processing method and apparatus, and related device
CN115629865B (en) Deep learning inference task scheduling method based on edge calculation
Saeidi et al. Determining the optimum time quantum value in round robin process scheduling method
Squillante et al. Threshold-based priority policies for parallel-server systems with affinity scheduling
CN115776524A (en) Internet of things mass data multistage scheduling transmission system for intelligent manufacturing
CN113986497B (en) Queue scheduling method, device and system based on multi-tenant technology
CN108170523A (en) A kind of Random Task sequence dispatching method of mobile cloud computing
CN112148449B (en) Scheduling algorithm and system based on edge calculation for local area network
Arefian et al. Delay reduction in MTC using SDN based offloading in Fog computing
CN117042047B (en) Resource allocation method, device, controller and system based on task priority
CN117056064A (en) Resource allocation method, device, server, storage medium and program product
CN106295117B (en) A kind of passive phased-array radar resource dynamic queuing management-control method
Stavrinides et al. Multi-criteria scheduling of complex workloads on distributed resources
CN107360483A (en) A kind of controller load-balancing algorithm for software definition optical-fiber network
CN117093342A (en) Task scheduling method and device for cloud platform, electronic equipment and storage medium
CN111538595B (en) MEC server task scheduling method based on task cutting
CN112217742B (en) Calculation migration method for cooperation between fog nodes

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant