Efficient task scheduling method, system and electronic device for edge server

Through the deep multi-core learning model, the task scheduling of edge servers is optimized, which solves the problems of limited computing resources and high latency of edge servers, and realizes efficient resource utilization and low-energy computing environment.

CN115437764BActive Publication Date: 2025-04-29SOUTH CHINA UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210990277.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-18
Publication Date
2025-04-29
Estimated Expiration
2042-08-18

AI Technical Summary

Technical Problem

Due to limited computing resources, low computing resource utilization, heterogeneous computing resources cannot be coordinated and unified, and high maintenance costs, edge servers have problems such as slow data transmission and high computing delay.

Method used

The task scheduling of edge servers is optimized by using deep multi-core learning model. By obtaining the attribute feature information of the computing task and the server environment information, it is classified to select the most suitable task scheduling model, and complete task scheduling and resource allocation.

Benefits of technology

Without occupancy of high computing power inference cards, improve the computing resource utilization rate of edge servers, reduce server energy consumption and feedback delay of computing tasks, and promote the development of cloud-edge computing system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115437764B_ABST
    Figure CN115437764B_ABST
Patent Text Reader

Abstract

The present invention discloses an efficient task scheduling method, system and electronic device for edge servers. The method includes: obtaining the attribute feature information Job of each computing task in the current task queue and the environment information Cluster of the current edge server; using the value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information as the input value X of a pre-established deep multi-core learning model M, inputting the input value X into the deep multi-core learning model M for classification, and the output of M is the optimal task scheduling model Best that is most suitable for the current environment in the scheduling model library. model Input the scheduling task attribute feature information Job of the current task queue into the optimal task scheduling model Best. model Complete the scheduling work of the current computing task. Under the condition of limited resources of the edge server, the present invention can quickly and accurately complete task scheduling and resource allocation without the support of special AI chips, improving the utilization rate of resources.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of machine learning technology and deep learning, and in particular to an efficient task scheduling method, system and electronic device for an edge server. Background Art

[0002] As one of the most important services provided by Internet companies, cloud computing can provide unlimited computing resources to users at any time according to their needs, and users only need to pay for the computing services they use. At the same time, cloud data centers can also provide various container management services, resource pool services, hosting services, etc.

[0003] However, with the rapid development of 5G technology and the intelligent Internet of Things (IIOT) in recent years, a large number of terminal devices have been born. According to statistics from relevant data agency IDC, by the end of 2020, there will be no less than 50 billion intelligent terminal devices connected to the Internet. In such a scenario, the traditional cloud computing framework will not be able to meet the real-time computing service requirements of these massive devices due to factors such as geography and bandwidth, resulting in a series of problems such as slow data transmission and high computing latency. In particular, computing tasks such as VR games, unmanned driving, and smart homes that require very high computing latency make the cloud computing framework no longer applicable.

[0004] To this end, many Internet companies have provided a new computing system - cloud-edge collaborative computing architecture. This system advocates sinking computing power, adding an edge network composed of many edge nodes between cloud data centers and smart terminals, shortening the distance between computing resources and customers. Unlike traditional cloud computing frameworks, smart terminals under this architecture no longer need to upload all computing tasks and data to the cloud. They can quickly process computing tasks through edge nodes deployed at the edge of the network. The cloud only needs to regularly schedule, manage, coordinate and unify many edge nodes, thereby greatly reducing the pressure on network bandwidth and greatly reducing computing latency.

[0005] Although edge servers, such as Huawei's Atlas series, can theoretically make great breakthroughs in reducing computing service latency, edge servers still suffer from a series of problems in practice, such as slow data transmission and high computing latency, due to extremely limited computing resources, low computing resource utilization, heterogeneous computing resources that cannot be coordinated and unified, and too many edge nodes requiring high labor costs for maintenance. To this end, in recent years, technicians have proposed task scheduling models based on deep learning and reinforcement learning technologies, such as optimizing server resource utilization, computing the average waiting time of tasks, and server energy consumption, for use by servers. For example, the University of Electronic Science and Technology of China proposed an edge computing task allocation method based on deep Monte Carlo tree search (DNN, MCTS, and LSTM collaborate with each other) to support the optimization of resource allocation by edge servers; the National University of Defense Technology proposed a deep learning task scheduling method based on reinforcement learning, which is aimed at deep learning multi-task scheduling scenarios, based on task online performance feedback, adaptive learning and adjustment of scheduling strategies; the edge computing IoT deep learning and task offloading scheduling strategy proposed by Chongqing University of Engineering optimizes network performance and protects user privacy during data upload; the high-efficiency deep learning task scheduling strategy for edge devices proposed by Shaanxi Normal University and other units, by coordinating mobile devices and edge servers, fully utilizing the convenience of smart mobile terminals and the capabilities of edge servers to complete the dynamic deployment of deep learning models on two types of devices.

[0006] In theory, the above models can achieve server performance upgrades while ignoring the fact that these models are too complex and have high requirements and consumption on the computing power of the machine. For example, Huawei Atlas200DK is only equipped with two NPU inference cards. If the scheduler itself needs to occupy an NPU inference card, the computing resources left for the computing task will be very tight, which will still cause the problem of high computing latency of the computing task. For example, the performance of the traditional scheduling model based on heuristic learning cannot meet the performance requirements of the edge server. These problems are all unbearable for the edge server. Summary of the invention

[0007] The main purpose of the present invention is to overcome the shortcomings and deficiencies of the prior art and to provide an efficient task scheduling method, system and electronic device for edge servers. Under the condition of limited edge server resources, task scheduling and resource allocation can be completed quickly and accurately without the support of special AI chips, thereby improving the utilization rate of edge server computing resources.

[0008] In order to achieve the above object, the present invention adopts the following technical solutions:

[0009] On the one hand, the present invention provides an efficient task scheduling method for edge servers, comprising the following steps:

[0010] When the computing task queue is transmitted to the scheduler, the attribute characteristic information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server are obtained in advance, wherein the attribute characteristic information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period;

[0011] The value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information are used as the input value X of the pre-established deep multi-core learning model M, where X = {x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections;

[0012] The input value X is input into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ;

[0013] Input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

[0014] Preferably, the value x1 obtained by statistically analyzing the attribute characteristic information Job of each task in the task queue includes:

[0015] The average energy consumption of all tasks in the task queue running separately on different chips Avg e , the maximum value Max e , Variance Var e ;

[0016] The average value of computing nodes required by all tasks in the task queue on different chips Avg n , the maximum value Max n , Variance Var n ;

[0017] The average value of the computational memory required by all tasks in the task queue on different chips Avg m , the maximum value Max m , Variance Var m .

[0018] Preferably, the basic kernel function includes a linear kernel function, a Gaussian kernel function, a polynomial kernel function and a Sigmoid kernel function.

[0019] Preferably, the scheduling model library is established through pre-training, and various lightweight scheduling models are trained for edge server environment information Cluster and attribute feature information Job based on heuristic learning, traditional machine learning and lightweight neural networks to form a scheduling model library.

[0020] Preferably, various scheduling models are trained for the edge server environment information Cluster and attribute feature information Job, wherein the training objectives are mainly:

[0021] Minimize the average task waiting time wait, minimize server energy consumption energy, minimize the average task response time response and maximize server resource utilization usage.

[0022] Preferably, the deep multi-core learning model M is pre-trained, and the training method is as follows:

[0023] (1) Collect the historical task queue data of the server to form training data History X ={X1,X2,X3,…,X h}, where h is the number of historical data, representing h periods;

[0024] (2) Select the most suitable X from the scheduling model library through human judgment i The scheduling model, and its serial number as the label Y i Corresponding to the data X for each period i , forming a tag History Y ={Y1,Y2,Y3,…,Y h};

[0025] (3) History X With History Y As training data for deep multi-core learning models;

[0026] (4) Parameter optimization of each basic kernel function in the network, using grid search and random search;

[0027] (5) Optimize the topological structure and network connection weights of the deep multi-core learning model through genetic algorithms;

[0028] (6) Generate model.

[0029] Preferably, the task scheduling model number that best suits the current task queue information and server environment information is scored, and the scoring criteria are as follows:

[0030] Score=λ1wait+λ2energy+λ3response+λ4usage

[0031] λ1+λ2+λ3+λ4=1.0

[0032] The parameters λ1-λ4 are constrained by the hardware status of the specific server itself and the hard requirements of the computing task on the computing latency.

[0033] Preferably, the optimization of the topological structure and network connection weights of the deep multi-core learning model by a genetic algorithm comprises the following steps:

[0034] A random m×(L-1)-bit binary number is generated to correspond to the model topology. 1 and 0 represent whether the kernel function corresponding to the corresponding layer is activated. Activation means that the kernel function participates in the calculation, and non-activation means that the layer does not have this kernel function.

[0035] Randomly generate p groups of weights according to the topological structure;

[0036] Optimize the weights of p groups through selection, mutation, and crossover to find the optimal weights for the corresponding topological structure;

[0037] Repeatedly randomly generate n topological structures with different optimal weights.

[0038] The model is optimized again through selection, mutation, and crossover to obtain a model with the optimal topological structure and optimal weight.

[0039] In another aspect, the present invention provides an efficient task scheduling system for edge servers, which is applied to the efficient task scheduling method for edge servers, and includes an information acquisition module, a deep multi-core learning module, an optimal scheduling module, and a generation scheduling module;

[0040] The information acquisition module is used to acquire the attribute characteristic information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server in advance when the computing task queue is transmitted to the scheduler. The attribute characteristic information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period;

[0041] The deep multi-core learning module is used to use the value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information as the input value X of the pre-established deep multi-core learning model M, where X={x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections;

[0042] The optimal scheduling module is used to input the value X into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ;

[0043] The generation scheduling module is used to input the scheduling task attribute feature information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

[0044] Another aspect of the present invention provides an electronic device, characterized in that the electronic device comprises:

[0045] at least one processor; and,

[0046] a memory communicatively connected to the at least one processor; wherein,

[0047] The memory stores computer program instructions that can be executed by the at least one processor, and the computer program instructions are executed by the at least one processor so that the at least one processor can execute the efficient task scheduling method for edge servers.

[0048] The beneficial effects of the present invention are:

[0049] The present invention proposes an efficient task scheduling method for edge servers, which uses a deep multi-core learning model M to select a scheduling model from a model library. When the computing resources of the edge server are limited, the high-computing power inference card of the edge server is not occupied, thereby further improving the computing resource utilization of the edge server, reducing server energy consumption and other indicators, and promoting the development of cloud-edge computing systems. In addition, compared with ordinary deep neural networks, the deep multi-core learning model M of the present invention does not require a large number of training samples, does not require the support of special computing chips, can self-train and optimize the network structure, and can quickly calculate and maintain the same superior performance as a deep neural network when faced with uncomplicated sample distributions. It achieves further breakthroughs in edge server performance without competing with computing tasks for high-computing power computing resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0051] Figure 1 Schematic diagram of an efficient task scheduling model for edge servers according to an embodiment of the present invention.

[0052] Figure 2 A schematic diagram of task and server attribute information of an efficient task scheduling method for edge servers according to an embodiment of the present invention.

[0053] Figure 3 The figure is an overall flow chart of an efficient task scheduling method for edge servers according to an embodiment of the present invention.

[0054] Figure 4 A schematic diagram of the topological structure design and weight setting of the network model of the efficient task scheduling method for edge servers according to an embodiment of the present invention.

[0055] Figure 5 A schematic diagram of the topology structure optimization of a network model of an efficient task scheduling method for edge servers according to an embodiment of the present invention.

[0056] Figure 6 The present invention is a flowchart for preparing a preliminary model of an efficient task scheduling method for edge servers according to an embodiment of the present invention.

[0057] Figure 7 The figure is a schematic diagram of the structure of an efficient task scheduling system for edge servers according to an embodiment of the present invention.

[0058] Figure 8 4 is a structural diagram of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0059] In order to make those skilled in the art better understand the present application, the technical solutions in the embodiments of the present application will be described in detail below in conjunction with the drawings in the embodiments of the present application. The step numbers in the embodiments of the present invention are only provided for the convenience of explanation and description, and no limitation is made on the order of the steps. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present application.

[0060] Reference to "embodiments" in this application means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments.

[0061] like Figure 1 As shown, Figure 3 As shown, in one embodiment of the present application, an efficient task scheduling method for edge servers is provided, comprising the following steps:

[0062] S1. When the computing task queue is transmitted to the scheduler, the attribute feature information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server are obtained in advance. The attribute feature information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period, such as Figure 2 shown.

[0063] S2. The value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information are used as the input value X of the pre-established deep multi-core learning model M, where X = {x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and the basic kernel functions are connected with weights from front to back, and there are cross-layer connections.

[0064] Furthermore, the value x1 obtained by statistically analyzing the attribute characteristic information Job of each task in the task queue includes:

[0065] The average energy consumption of all tasks in the task queue running separately on different chips Avg e , the maximum value Max e , Variance Var e ;

[0066] The average value of computing nodes required by all tasks in the task queue on different chips Avg n , the maximum value Max n , Variance Var n ;

[0067] The average value of the computational memory required by all tasks in the task queue on different chips Avg m , the maximum value Max m , Variance Var m .

[0068] Furthermore, the basic kernel function includes a linear kernel function, a Gaussian kernel function, a polynomial kernel function and a Sigmoid kernel function, and the specific formula is as follows:

[0069] Linear k(x,y)=x t y

[0070] RBF

[0071] Poly k(x,y)=(ax t y+c) d

[0072] Sigmoid k(x,y)=tanh(ax t y+c)

[0073] S3: Input the input value X to the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model .

[0074] Furthermore, the scheduling model library is established through pre-training, and various lightweight scheduling models are trained for edge server environment information Cluster and attribute feature information Job based on heuristic learning, traditional machine learning and lightweight neural networks to form a scheduling model library.

[0075] Furthermore, various scheduling models are trained for the edge server environment information Cluster and attribute feature information Job, wherein the training objectives are mainly:

[0076] Minimize the average task waiting time wait, minimize server energy consumption energy, minimize the average task response time response and maximize server resource utilization usage.

[0077] Specifically, the deep multi-core learning model M is pre-trained, and the training method is as follows:

[0078] (1) Collect the historical task queue data of the server to form training data History X ={X1,X2,X3,…,X h}, where h is the number of historical data, representing h periods;

[0079] (2) Select the most suitable X from the scheduling model library through human judgment i The scheduling model, and its serial number as the label Y i Corresponding to the data X for each period i , forming a tag History Y ={Y1,Y2,Y3,…,Y h};

[0080] (3) History X With History Y As training data for deep multi-core learning models;

[0081] (4) Parameter optimization of each basic kernel function in the network, using grid search and random search;

[0082] (5) Optimize the topological structure and network connection weights of the deep multi-core learning model through genetic algorithms;

[0083] (6) Generate model.

[0084] The task scheduling model number that best suits the current task queue information and server environment information is scored, and the scoring criteria are as follows:

[0085] Score=λ1wait+λ2energy+λ3response+λ4usage

[0086] λ1+λ2+λ3+λ4=1.0

[0087] The parameters λ1-λ4 are constrained by the hardware status of the specific server itself and the hard requirements of the computing task on the computing latency.

[0088] The optimization of the topological structure and network connection weights of the deep multi-core learning model by genetic algorithm includes the following steps:

[0089] A random m×(L-1)-bit binary number is generated to correspond to the model topology. 1 and 0 represent whether the kernel function corresponding to the corresponding layer is activated. Activation means that the kernel function participates in the calculation, and non-activation means that the layer does not have this kernel function.

[0090] According to the topological structure, p groups of weights are randomly generated, such as Figure 4 As shown;

[0091] Optimize the weights of p groups through selection, mutation, and crossover to find the optimal weights for the corresponding topological structure;

[0092] Repeatedly randomly generate n topological structures with different optimal weights.

[0093] The model is optimized again through selection, mutation, and crossover to obtain a model with optimal topology and optimal weight, such as Figure 5 shown.

[0094] S4: Input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

[0095] like Figure 6 As shown, in another embodiment of the present application, an efficient task scheduling method for edge servers is implemented on an Atlas200DK edge device, including the following steps:

[0096] S1. Deploy a script on Atlas200DK in advance to automatically obtain the attribute feature information Job generated by different computing tasks when the NPU and CPU are running, as well as the server environment information Cluster in different time periods.

[0097] S2. Randomly generate various computing tasks and run them on Atlas200DK, and obtain historical data information Trace through scripts.

[0098] S3, based on heuristic learning, traditional machine learning and lightweight neural network algorithms, uses CPU to train various scheduling models for edge server environment information Cluster and computing task attribute feature information Job in historical data information Trace to form a scheduling model library.

[0099] S4. Set up the automatic training script of the deep multi-kernel learning model M, determine the m basic kernel functions and the size of the hidden layer L, and the remaining parameters are automatically obtained by the evolutionary algorithm.

[0100] S5. Based on the statistical data information of the historical data Trace, the scheduling model library and the automatic training script train the deep multi-core learning model M through the CPU.

[0101] S6. Since there are automatic scripts for obtaining historical data information Trace and training deep multi-core learning models, and the training process does not require the support of Ai chips, the deep multi-core learning model can automatically train and update the model regularly without human intervention, without occupying limited Ai computing chips, and without interfering with other computing tasks. At this point, the preparation work for the preliminary model is completed.

[0102] S7. When the computing task queue is transmitted to the scheduler, the attribute characteristic information Job of each computing task in the current task queue and the current Atlas200DK edge device environment information Cluster are obtained in advance. The attribute characteristic information includes: the time when the computing task runs on the CPU and NPU chips respectively, the energy consumption caused by the computing task running on the CPU and NPU chips respectively, the memory size required for the computing task to run on the CPU and NPU chips respectively, and the number of computing nodes required for the computing task to run on the CPU and NPU chips respectively; the edge server environment information includes: the idle computing nodes, idle memory and energy consumption of the two NPUs and CPU on Atlas200DK in the current time period.

[0103] S8. The value x1 obtained by statistically analyzing the attribute feature matrix Job of each task in the task queue and the value x2 of the server information are used as the input value X={x1,x2} of the pre-established deep multi-core learning model M; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and the basic kernel functions are connected with weights from front to back, and there are cross-layer connections.

[0104] Furthermore, the value x1 obtained by statistically analyzing the attribute characteristic information Job of each task in the task queue includes:

[0105] The average energy consumption of all tasks in the task queue running on the CPU and NPU Avg e , the maximum value Max e , Variance Var e ;

[0106] The average value of the number of computing nodes required by all tasks in the task queue on the CPU and NPU Avg n , the maximum value Max n , Variance Var n ;

[0107] The average amount of memory required for computing on the CPU and NPU for all tasks in the task queue Avg m , the maximum value Max m , Variance Var m .

[0108] Furthermore, the basic kernel function includes a linear kernel function, a Gaussian kernel function, a polynomial kernel function and a Sigmoid kernel function, and the specific formula is as follows:

[0109] Linear k(x,y)=x t y

[0110] RBF

[0111] Poly k(x,y)=(ax t y+c) d

[0112] Sigmoid k(x,y)=tanh(ax t y+c)

[0113] S9: Input the input value X to the deep multi-core learning model M for classification. The output of the deep multi-core learning model is the task scheduling model Best in the scheduling model library that is most suitable for the current environment. model .

[0114] Furthermore, the scheduling model library is established through pre-training, and various lightweight scheduling models are trained for edge server environment information Cluster and attribute feature information Job based on heuristic learning, traditional machine learning and lightweight neural networks to form a scheduling model library.

[0115] Furthermore, various scheduling models are trained for the edge server environment information Cluster and attribute feature information Job, wherein the training objectives are mainly:

[0116] Minimize the average task waiting time wait, minimize server energy consumption energy, minimize the average task response time response and maximize server resource utilization usage.

[0117] Specifically, the deep multi-core learning model M is pre-trained, and the training method is as follows:

[0118] (1) Collect the historical task queue data of the server to form training data History X ={X1,X2,X3,…,X h}, where h is the number of historical data, representing h periods;

[0119] (2) Select the most suitable X from the scheduling model library through human judgment i The scheduling model, and its serial number as the label Y i Corresponding to the data X for each period i , forming a tag History Y ={Y1,Y2,Y3,…,Y h};

[0120] (3) History X With History Y As training data for deep multi-core learning models;

[0121] (4) Parameter optimization of each basic kernel function in the network, using grid search and random search;

[0122] (5) Optimize the topological structure and network connection weights of the deep multi-core learning model through genetic algorithms;

[0123] (6) Generate model.

[0124] The task scheduling model number that best suits the current task queue information and server environment information is scored, and the scoring criteria are as follows:

[0125] Score=λ1wait+λ2energy+λ3response+λ4usage

[0126] λ1+λ2+λ3+λ4=1.0

[0127] The parameters λ1-λ4 are constrained by the hardware status of the specific server itself and the hard requirements of the computing task on the computing latency.

[0128] The optimization of the topological structure and network connection weights of the deep multi-core learning model by genetic algorithm includes the following steps:

[0129] A random m×(L-1)-bit binary number is generated to correspond to the model topology. 1 and 0 represent whether the kernel function corresponding to the corresponding layer is activated. Activation means that the kernel function participates in the calculation, and non-activation means that the layer does not have this kernel function.

[0130] Randomly generate p groups of weights according to the topological structure;

[0131] Optimize the weights of p groups through selection, mutation, and crossover to find the optimal weights for the corresponding topological structure;

[0132] Repeatedly randomly generate models with different topological structures and optimal weights;

[0133] The model is optimized again through selection, mutation, and crossover to obtain a model with the optimal topological structure and optimal weight.

[0134] S10, input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , generate scheduling strategies, complete the scheduling of current computing tasks, improve the computing resource utilization of edge servers, reduce server energy consumption and other indicators, and reduce the feedback delay of computing tasks.

[0135] In another embodiment of the present invention, a method for performing collaborative scheduling using a high-task scheduling method for edge servers on two edge devices, Atlas200DK and Inspur edge computing server NE5260M5, is provided, including the following steps:

[0136] S1. Deploy scripts on Atlas200DK and NE5260M5 in advance to automatically obtain the attribute feature information Job generated by different computing tasks when NPU, GPU and CPU are running, as well as the server environment information Cluster in different time periods.

[0137] S2. Randomly generate various computing tasks and run them on Atlas200DK and NE5260M5, and obtain historical data information Trace through scripts.

[0138] S3, based on heuristic learning, traditional machine learning and lightweight neural network algorithms, uses CPU to train various scheduling models for edge server environment information Cluster and computing task attribute feature information Job in historical data information Trace to form a scheduling model library.

[0139] S4. Set up the automatic training script of the deep multi-kernel learning model M, determine the m basic kernel functions and the size of the hidden layer L, and the remaining parameters are automatically obtained by the evolutionary algorithm.

[0140] S5. Based on the data information of historical data Trace statistics, the scheduling model library and the automatic training script, a deep multi-core learning model M is trained through the CPU.

[0141] S6. Since there are automatic scripts for obtaining historical data information Trace and training deep multi-core learning models, and the training process does not require the support of Ai chips, the deep multi-core learning model can automatically train and update the model regularly without human intervention, without occupying limited Ai computing chips, and without interfering with other computing tasks. At this point, the preparation work for the early model is completed.

[0142] S7. When the computing task queue is transmitted to the scheduler, the attribute feature information Job of each computing task in the current task queue and the current edge device environment information Cluster of Atlas200DK and NE5260M5 are obtained in advance. The attribute feature information Job includes: the time when the computing task runs on the CPU, NPU, and GPU chips respectively, the energy consumption caused by the computing task running on the CPU, NPU, and GPU chips respectively, the memory size required for the computing task to run on the CPU, NPU, and GPU chips respectively, and the number of computing nodes required for the operation; the edge server environment information Cluster includes: the idle computing nodes, idle memory, and energy consumption of the current time period on the two NPUs on Atlas200DK, the two GPUs on NE5260M5, and the CPU.

[0143] S8. The value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information are used as the input value X of the pre-established deep multi-core learning model M, where X = {x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and the basic kernel functions are connected with weights from front to back, and there are cross-layer connections.

[0144] Furthermore, the value x1 obtained by statistically analyzing the attribute characteristic information Job of each task in the task queue includes:

[0145] The average energy consumption of all tasks in the task queue running separately on different chips Avg e , the maximum value Max e , Variance Var e ;

[0146] The average value of computing nodes required by all tasks in the task queue on different chips Avg n , the maximum value Max n , Variance Var n ;

[0147] The average value of the computational memory required by all tasks in the task queue on different chips Avg m , the maximum value Max m , Variance Var m .

[0148] Furthermore, the basic kernel function includes a linear kernel function, a Gaussian kernel function, a polynomial kernel function and a Sigmoid kernel function, and the specific formula is as follows:

[0149] Linear k(x,y)=x t y

[0150] RBF

[0151] Poly k(x,y)=(ax t y+c) d

[0152] Sigmoid k(x,y)=tanh(ax t y+c)

[0153] S9: Input X into a deep multi-core learning model M for classification, and the output of the model is the task scheduling model Best in the scheduling model library that is most suitable for the current environment. model .

[0154] Furthermore, the scheduling model library is established through pre-training, using the computing resources of two edge servers as a resource pool for training, and various lightweight scheduling models are trained for the edge server environment information Cluster and attribute feature information Job based on heuristic learning, traditional machine learning, and lightweight neural networks to form a scheduling model library.

[0155] Furthermore, various scheduling models are trained for the edge server environment information Cluster and attribute feature information Job, wherein the training objectives are mainly:

[0156] Minimize the average task waiting time wait, minimize server energy consumption energy, minimize the average task response time response and maximize server resource utilization usage.

[0157] Specifically, the deep multi-core learning model M is pre-trained, and the training method is as follows:

[0158] (1) Collect the historical task queue data of the server to form training data History X ={X1,X2,X3,…,X h}, where h is the number of historical data, representing h periods;

[0159] (2) Select the most suitable X from the scheduling model library through human judgment i The scheduling model, and its serial number as the label Y i Corresponding to the data X for each period i , forming a tag History Y ={Y1,Y2,Y3,…,Y h};

[0160] (3) History X With History Y As training data for deep multi-core learning models;

[0161] (4) Parameter optimization of each basic kernel function in the network, using grid search and random search;

[0162] (5) Optimize the topological structure and network connection weights of the deep multi-core learning model through genetic algorithms;

[0163] (6) Generate model.

[0164] The task scheduling model number that best suits the current task queue information and server environment information is scored, and the scoring criteria are as follows:

[0165] Score=λ1wait+λ2energy+λ3response+λ4usage

[0166] λ1+λ2+λ3+λ4=1.0

[0167] The parameters λ1-λ4 are constrained by the hardware status of the specific server itself and the hard requirements of the computing task on the computing latency.

[0168] The optimization of the topological structure and network connection weights of the deep multi-core learning model by genetic algorithm includes the following steps:

[0169] A random m×(L-1)-bit binary number is generated to correspond to the model topology. 1 and 0 represent whether the kernel function corresponding to the corresponding layer is activated. Activation means that the kernel function participates in the calculation, and non-activation means that the layer does not have this kernel function.

[0170] According to the topological structure, p groups of weights are randomly generated, such as Figure 4 As shown;

[0171] Optimize the weights of p groups through selection, mutation, and crossover to find the optimal weights for the corresponding topological structure;

[0172] Repeatedly randomly generate n topological structures with different optimal weights.

[0173] The model is optimized again through selection, mutation, and crossover to obtain a model with the optimal topological structure and optimal weight.

[0174] S10, input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of current computing tasks; improve the computing resource utilization of edge servers, reduce server energy consumption and other indicators while reducing the feedback delay of computing tasks.

[0175] Based on the same idea as the efficient task scheduling method for edge servers in the above embodiment, the present invention also provides an efficient task scheduling system for edge servers, which can be used to execute the above efficient task scheduling method for edge servers. For ease of explanation, the structural diagram of an efficient task scheduling system for edge servers only shows the parts related to the embodiment of the present invention. Those skilled in the art can understand that the illustrated structure does not constitute a limitation on the device, and may include more or fewer components than shown in the diagram, or combine certain components, or arrange the components differently.

[0176] like Figure 7 As shown, in one embodiment of the present application, an efficient task scheduling system 100 for edge servers is provided, the system comprising an information acquisition module 101, a deep multi-core learning module 102, an optimal scheduling module 103, and a scheduling generation module 104;

[0177] The information acquisition module 101 is used to acquire the attribute characteristic information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server in advance when the computing task queue is transmitted to the scheduler. The attribute characteristic information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period;

[0178] The deep multi-core learning module 102 is used to use the value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information as the input value X of the pre-established deep multi-core learning model M, where X={x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections;

[0179] The optimal scheduling module 103 is used to input the value X into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ;

[0180] The generation scheduling module 104 is used to input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

[0181] It should be noted that an efficient task scheduling system for edge servers of the present invention corresponds one-to-one to an efficient task scheduling method for edge servers of the present invention. The technical features and beneficial effects described in the embodiment of the above-mentioned efficient task scheduling method for edge servers are applicable to the embodiment of an efficient task scheduling system for edge servers. For specific contents, please refer to the description in the embodiment of the method of the present invention. It will not be repeated here. This is hereby declared.

[0182] In addition, in the implementation of an efficient task scheduling system for edge servers in the above-mentioned embodiment, the logical division of each program module is only an example. In actual applications, the above-mentioned functions can be assigned to different program modules as needed, for example, for the convenience of corresponding hardware configuration requirements or software implementation. That is, the internal structure of an efficient task scheduling system for edge servers is divided into different program modules to complete all or part of the functions described above.

[0183] like Figure 8 As shown, in one embodiment, an electronic device for an efficient task scheduling method for an edge server is provided, and the electronic device 200 may include a first processor 201, a first memory 202 and a bus, and may also include a computer program stored in the first memory 202 and executable on the first processor 201, such as an efficient task scheduling learning program 203.

[0184] The first memory 202 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, mobile hard disk, multimedia card, card-type memory (e.g., SD or DX memory, etc.), magnetic memory, disk, optical disk, etc. In some embodiments, the first memory 202 may be an internal storage unit of the electronic device 200, such as a mobile hard disk of the electronic device 200. In other embodiments, the first memory 202 may also be an external storage device of the electronic device 200, such as a plug-in mobile hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. equipped on the electronic device 200. Further, the first memory 202 may also include both an internal storage unit of the electronic device 200 and an external storage device. The first memory 202 may not only be used to store application software and various types of data installed in the electronic device 200, such as the code of the efficient task scheduler 203, but also be used to temporarily store data that has been output or is to be output.

[0185] In some embodiments, the first processor 201 may be composed of an integrated circuit, for example, a single packaged integrated circuit, or a plurality of packaged integrated circuits with the same or different functions, including one or more central processing units (CPUs), microprocessors, digital processing chips, graphics processors, and combinations of various control chips, etc. The first processor 201 is the control core (Control Unit) of the electronic device, and uses various interfaces and lines to connect various components of the entire electronic device, and executes various functions and processes data of the electronic device 200 by running or executing programs or modules stored in the first memory 202, and calling data stored in the first memory 202.

[0186] Figure 8 Only an electronic device with components is shown, and those skilled in the art will understand that Figure 8 The structure shown does not constitute a limitation on the electronic device 200 , and may include fewer or more components than shown in the figure, or combine certain components, or arrange the components differently.

[0187] The efficient task scheduling program 203 stored in the first memory 202 in the electronic device 200 is a combination of multiple instructions, and when executed in the first processor 201, it can achieve:

[0188] When the computing task queue is transmitted to the scheduler, the attribute feature information of each computing task in the current task queue and the environmental information Cluster of the current edge server are obtained in advance. The attribute feature information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period;

[0189] The value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information are used as the input value X of the pre-established deep multi-core learning model M, where X = {x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections;

[0190] The input value X is input into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ;

[0191] Input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

[0192] Furthermore, if the module / unit integrated in the electronic device 200 is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile computer-readable storage medium. The computer-readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a mobile hard disk, a magnetic disk, an optical disk, a computer memory, and a read-only memory (ROM).

[0193] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0194] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0195] The above is a specific description of the preferred implementation of the present invention, but the present invention is not limited to the described embodiments. Those skilled in the art may make various equivalent modifications or substitutions without violating the spirit of the present invention. These equivalent modifications or substitutions are all included in the scope defined by the claims of this application.

Claims

1. An efficient task scheduling method for edge servers, characterized in that: The method comprises the following steps: When the computing task queue is transmitted to the scheduler, the attribute characteristic information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server are obtained in advance, wherein the attribute characteristic information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period; The value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information are used as the input value X of the pre-established deep multi-core learning model M, where X = {x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections; The input value X is input into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ; Input the scheduling task attribute characteristic information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

2. The efficient task scheduling method for edge servers according to claim 1 is characterized in that: The value x1 obtained by statistically analyzing the attribute characteristic information Job of each task in the task queue includes: The average energy consumption of all tasks in the task queue running separately on different chips Avg e , the maximum value Max e , Variance Var e ; The average value of computing nodes required by all tasks in the task queue on different chips Avg n , the maximum value Max n , Variance Var n ; The average value of the computational memory required by all tasks in the task queue on different chips Avg m , the maximum value Max m , Variance Var m .

3. The efficient task scheduling method for edge servers according to claim 1 is characterized in that: The basic kernel functions include linear kernel functions, Gaussian kernel functions, polynomial kernel functions and Sigmoid kernel functions.

4. The efficient task scheduling method for edge servers according to claim 1 is characterized in that: The scheduling model library is established through pre-training, and various lightweight scheduling models are trained for edge server environment information Cluster and attribute feature information Job based on heuristic learning, traditional machine learning and lightweight neural network to form a scheduling model library.

5. The efficient task scheduling method for edge servers according to claim 1 is characterized in that: A scheduling model is trained for the edge server environment information Cluster and attribute feature information Job, wherein the training objectives are mainly: Minimize the average task waiting time wait, minimize server energy consumption energy, minimize the average task response time response and maximize server resource utilization usage.

6. The efficient task scheduling method for edge servers according to claim 1, characterized in that: The deep multi-core learning model M is pre-trained, and the training method is as follows: (1) Collect the historical task queue data of the server to form training data History X ={X1,X2,X3,…,X h }, where h is the number of historical data, representing h periods; (2) Select the most suitable X from the scheduling model library through human judgment i The scheduling model, and its serial number as the label Y i Corresponding to the data X for each period i , forming a tag History Y ={Y1,Y2,Y3,…,Y h }; (3) History X With History Y As training data for deep multi-core learning models; (4) Parameter optimization of each basic kernel function in the network, using grid search and random search; (5) Optimize the topological structure and network connection weights of the deep multi-core learning model through genetic algorithms; (6) Generate model.

7. The efficient task scheduling method for edge servers according to claim 5, characterized in that: The task scheduling model number that best suits the current task queue information and server environment information is scored. The scoring criteria are as follows: Score=λ1wait+λ2energy+λ3response+λ4usage λ1+λ2+λ3+λ4=1.0 The parameters λ1-λ4 are constrained by the hardware status of the specific server itself and the hard requirements of the computing task on the computing latency.

8. The efficient task scheduling method for edge servers according to claim 6 is characterized in that: The optimization of the topological structure and network connection weights of the deep multi-core learning model by genetic algorithm includes the following steps: A random m×(L-1)-bit binary number is generated to correspond to the model topology. 1 and 0 represent whether the kernel function corresponding to the corresponding layer is activated. Activation means that the kernel function participates in the calculation, and non-activation means that the layer does not have this kernel function. Randomly generate p groups of weights according to the topological structure; Optimize the weights of p groups through selection, mutation, and crossover to find the optimal weights for the corresponding topological structure; Repeatedly randomly generate n topological structures with different optimal weights. The model is optimized again through selection, mutation, and crossover to obtain a model with the optimal topological structure and optimal weight.

9. An efficient task scheduling system for edge servers, characterized in that: An efficient task scheduling system for edge servers applied to any one of claims 1-8, comprising an information acquisition module, a deep multi-core learning module, an optimal scheduling module, and a generation scheduling module; The information acquisition module is used to acquire the attribute characteristic information Job of each computing task in the current task queue and the environmental information Cluster of the current edge server in advance when the computing task queue is transmitted to the scheduler. The attribute characteristic information Job includes: the time when the computing task runs on different computing chips, the energy consumption caused by the computing task running on different chips, the memory size required for the computing task to run on different chips, and the number of computing nodes required for the computing task to run on different chips; the environmental information Cluster includes: the idle computing nodes of different computing chips on the server, the idle memory of different computing chips on the server, and the energy consumption of the server in the current time period; The deep multi-core learning module is used to use the value x1 obtained by statistically analyzing the attribute feature information Job of each task in the task queue and the value x2 of the server environment information as the input value X of the pre-established deep multi-core learning model M, where X={x1, x2}; the topological structure of the pre-established deep multi-core learning model M is network-like, consisting of an input layer, L hidden layers and an output layer, each hidden layer contains at most m basic kernel functions, and the basic kernel functions are used to calculate the data transmitted from the upper layer and the previous layer, and output the calculation results to the subsequent hidden layer; the output layer is an SVM classifier trained based on one of the m basic kernel functions, and from front to back, the basic kernel functions are connected with weights, and there are cross-layer connections; The optimal scheduling module is used to input the value X into the deep multi-core learning model M for classification. The output of the deep multi-core learning model M is the optimal task scheduling model Best in the scheduling model library that is most suitable for the current environment. model ; The generation scheduling module is used to input the scheduling task attribute feature information Job of the current task queue into the optimal task scheduling model Best model , complete the scheduling of the current computing task.

10. An electronic device, characterized in that: The electronic device comprises: at least one processor; and, a memory communicatively connected to the at least one processor; wherein, The memory stores computer program instructions that can be executed by the at least one processor, and the computer program instructions are executed by the at least one processor so that the at least one processor can execute an efficient task scheduling method for an edge server as described in any one of claims 1-8.

Citation Information

Patent Citations

  • Resource scheduling method, apparatus and device, and readable storage medium

    CN110413396A

  • Task scheduling method based on edge computing

    CN114546608A