一种边缘计算场景下通过休眠降低系统功耗的调度方法

文档序号:1390737 发布日期:2020-02-28 浏览:20次 >En<

阅读说明:本技术 一种边缘计算场景下通过休眠降低系统功耗的调度方法 (Scheduling method for reducing system power consumption through dormancy in edge computing scene ) 是由 方娟 陈勇 于 2019-11-12 设计创作,主要内容包括:本发明提出了一种在边缘场景下的节省功耗的调度算法,优化了边缘场景下的设备的续航。本发明区别于其他边缘计算资源调度的特征是加入了边缘服务器的休眠机制,通过任务调度进一步降低边缘服务器的功耗。本方法将边缘计算服务器分为主服务器和从服务器,主服务器用来接收数据和处理数据,从服务器用来处理数据,当从服务器无数据处理时,进入休眠状态。方法提出了两种策略:激进的策略:用于在优先保障计算能力的情况下防止延迟增长;保守的策略,用于实现可容忍延迟状态下的最低功耗。最终,通过多个服务器的负载均衡实现了优化延迟和功耗的目标。(The invention provides a power consumption-saving scheduling algorithm in an edge scene, and the endurance of equipment in the edge scene is optimized. The method is different from other edge computing resource scheduling in that a dormancy mechanism of an edge server is added, and the power consumption of the edge server is further reduced through task scheduling. The method divides the edge computing server into a main server and a slave server, wherein the main server is used for receiving data and processing the data, the slave server is used for processing the data, and when the slave server has no data processing, the slave server enters a dormant state. The method proposes two strategies: radical strategies: for preventing delay growth in the case of priority for computing power; a conservative strategy for achieving the lowest power consumption in a tolerable delay state. Finally, the goal of optimizing latency and power consumption is achieved through load balancing of multiple servers.)

一种边缘计算场景下通过休眠降低系统功耗的调度方法

技术领域

本发明属于边缘计算领域,以在不显著增加任务延迟的情况下显著降低边缘服务器能耗为目的。

背景技术

边缘计算是目前最有前途的低延迟计算解决方案。传统云计算利用集中式大容量的集群的设备集中处理海量的信息,这种方式的优点非常明显,所有的计算过程都在云端集中处理,方便数据的收集与共享,催生出一系列的大数据应用。云计算虽然有着近乎无限的运算能力,但是为了运用云计算的算力,需要承担许多的通讯成本,不可避免的造成了延迟。集中式处理的方式必然决定了用户的数据需要上传至云端再进行处理,导致延迟很难降低。但是随着时代的发展,实时应用出现了井喷,延迟要求越来越高。边缘计算架构就是为了解决云计算延迟大的问题而提出的。具体说来,边缘计算在近用户端处理那些对延迟要求高的任务,将原本只能在云计算平台运算的服务放到了边缘服务器中。但是边缘服务器相对于云计算来说,有限的计算能力,受限的能耗是其最大的瓶颈。

在边缘计算领域主要是以优化延迟和功耗这两个数值为目标。

发明内容

本专利主要目标是降低边缘计算的功耗。本专利的区别于其他边缘计算资源调度的特征是加入了边缘服务器的休眠机制,并根据这一参数进行资源调度,通过任务调度进一步降低边缘服务器的功耗。

本专利主要面向边缘计算中的4个对象间调度。如图1所示,这是完整的边缘计算框架,包含了云端,代理服务器,边缘节点,传感器这4个对象。任务由传感器发出,可以在云端或边缘节点内的边缘服务器被处理,代理服务器用于在边缘服务器和云服务器之间传输数据。

传统的任务调度方法依次判断从用户端到云端传输链路上每一台计算设备可否处理该任务,若可以处理该任务则处理,若不可以,则将任务上传至下一计算设备,直到最终上传至云端结束。

与传统的任务调度方法不同的是我们将每一个边缘节点从一台服务器分成主从模式下的两个服务器,主服务器负责调度任务,和执行任务,从服务器负责执行任务,当不需要执行任务时进入休眠状态(这就是功耗降低的根本),且当主服务器处于空闲状态,从服务器处于繁忙状态时,则主从服务器切换角色。休眠状态是一种非常低功耗的电源状态,处于此状态的计算设备通常只保留内存及相关可供唤醒所需的设备供电,常用的唤醒设备有网卡,鼠标,键盘,电源按钮,屏幕开合器等。

综上,我们要做的事就是尽量少增加延迟的情况下降低功耗。

下面我们来具体介绍方法的实现原理。

首先介绍边缘服务器的功耗模型。如公式1所示。Pj为服务器实时的功耗,Pa为活动功耗,Ps为休眠功耗。

Figure BDA0002269285140000021

我们使用线性函数来拟合功耗与负载的关系。如公式2所示,活跃状态的功耗为一个线性函数,其中k和b由设备满载功耗和空载功耗共同决定。

Pa=kMc+b (2)

然后是延迟模型,因为延迟是另一个在边缘计算中十分看中的指标。

Ta代表一次延迟的情况,包括传输延迟Tt和计算延迟Tc。如公式3所示。

Ta=Tt+Tc (3)

其中传输延迟Tt与参与此次任务传递的节点跳数Jn成正比。单一节点的传输延迟由链路延迟T7和数据传输延迟Tm之和,链路延迟T7由传输媒介和传输距离决定,数据传输延迟与数据量成正比于链路带宽成反比。

Tt=Jn(T7+Tm) (4)

计算延迟如公式所示To为完成单个任务所需MIPS,Ds为任务所在处理节点处理能力MIPS,Tn为当前所在节点任务数量。由于节点上同时运行的任务数量是可变的,分配给每一个任务的处理资源是均分的。所以需要累加每一个Tn持续的时间,即Ts

Figure BDA0002269285140000031

我们将每一个边缘服务器都分成主从模式下的两个服务器,主服务器负责调度任务和执行任务,从服务器负责执行任务,当不需要执行任务时进入休眠状态(这就是功耗降低的根本)。我们要做的事就是尽量少增加延迟的情况下降低功耗。

我们提出了激进和保守两种策略。激进策略是为了在优先保障计算能力的情况下防止延迟增长,保守策略则是用于实现可容忍延迟状态下的最低功耗。下面我们分别来阐述这两个策略。

为了更好的利用边缘服务器的休眠状态,我们将边缘服务器拆分成两个独立的可以分别进入休眠状态的服务器,其中一个主服务器可以用做接收任务和处理任务,从服务器只可以用来处理任务,当从服务器无任务可处理时关闭服务器,进入休眠状态。

我们假设预先知道任务的计算量与主从服务器的计算能力,可以精确的将适当的计算能力匹配到任务数量,这是负载均衡的最理想状态。

激进的策略的中心思想就是尽量多的启动从服务器,来保证延迟不增加。因为系统整体的计算能力并没有增加或是减少,将从服务器启动可以维持计算性能,而保障计算性能就可以保障延迟相对于原始策略增加的少一些。

当总任务数量为0时,此时没有收到任何任务,即主服务器处于闲置功耗下,并等待接收任务,从服务器处于休眠功耗时,此时收到一个任务,首先判断优先进入主服务器进行处理是否超出了任务最大容忍延迟,如果没有超出,则进入主服务器处理,且对应的主服务器正在执行的任务数量加1;如果超出了任务最大容忍延迟,则进入从服务器处理,并进一步判断进入从服务器进行处理是否超出了任务最大容忍延迟,如果超过,则任务上传至云端处理,如果没有超出,则在从服务器进行处理;

当总任务数量为1,即主服务器处于满载功耗时,此时如果又新增了一个任务,则优先将任务迁移至从服务器,判断是否超出了任务最大容忍延迟,若不超过,则使从服务器进入运行态,从服务器的任务数量Te等于1;如果超出了任务最大容忍延迟,则进入主服务器处理,并进一步判断进入主服务器进行处理是否超出了任务最大容忍延迟,如果超过,则任务上传至云端处理,如果没有超出,则在主服务器进行处理;在此之后若新增了一个任务,则根据设备的排序结果,依次判断将任务最终留在哪里;

其中所述的设备排序过程为:根据主服务器的处理能力Mo、从服务器的处理能力Me、主服务器正在执行的任务数量To,从服务器正在执行的任务数量Te计算排序指标C,如公式(1)所示;若比值C大于1,则顺序为从服务器,主服务器,云端,否则,顺序为主服务器,从服务器,云端;

Figure BDA0002269285140000041

另一方面来说保守的策略,保守策略的目的是实现最大的功耗节省。根据任务的最大延迟,将任务尽可能少的迁移到从服务器上执行,以达到可容忍状态下的最低功耗。

不管各个服务器正在执行的任务数量,当新增任务时,始终首先计算当所有任务在主服务器并行运行时,运行任一任务是否达到最大容忍延迟,如果未达到,则将新增任务放置于主服务器中,若超过,则将新增任务放置于从服务器,并进一步判断当所有任务在从服务器并行运行时,运行任一任务是否达到最大容忍延迟,如果未达到,则将新增任务放置于从服务器中,否则,新增任务放置于云服务器中。

若主服务器先于从服务器执行完任务时,此时主服务器处于空闲状态,从服务器处于繁忙状态。主从服务器应当切换角色,由原先的从服务器充当新的主服务器接收任务,原先的主服务器进入休眠状态。

有益效果

本发明通过设计的两种策略,实现了优化延迟和功耗的目标。

附图说明

为使本发明的目的,方案更加通俗易懂,下面将结合附图对本发明进一步说明。

图1为本发明边缘计算架构图;

图2为调度策略方法步骤图;

图3为仿真时使用的参数;

图4为单一节点的功耗对比;

图5为系统总功耗对比;

图6为系统平均延迟对比;

具体实施方式

以下以激进策略为例进行描述

步骤1,启动主服务器,休眠从服务器,主服务器开始接收任务。

步骤2,当主服务器接收到任务时,按方法的计算结果放置任务执行的位置。

步骤3,收集当前主从服务器正在执行的任务数量和最大容忍延迟和处理能力。主服务器正在执行的任务数量To,从服务器正在执行的任务数量Te,主服务器的处理能力Mo与从服务器的处理能力Me

步骤4,当总任务数量为0时,此时没有收到任何任务,主服务器处于闲置功耗下,并等待接收任务,从服务器处于休眠功耗下。

当总任务数量为0时,此时没有收到任何任务,即主服务器处于闲置功耗下,并等待接收任务,从服务器处于休眠功耗时,此时收到一个任务,首先判断优先进入主服务器进行处理是否超出了任务最大容忍延迟,如果没有超出,则进入主服务器处理,且对应的主服务器正在执行的任务数量加1;如果超出了任务最大容忍延迟,则进入从服务器处理,并进一步判断进入从服务器进行处理是否超出了任务最大容忍延迟,如果超过,则任务上传至云端处理,如果没有超出,则在从服务器进行处理;

当总任务数量为1,即主服务器处于满载功耗时,此时如果又新增了一个任务,则优先将任务迁移至从服务器,判断是否超出了任务最大容忍延迟,若不超过,则使从服务器进入运行态,从服务器的任务数量Te等于1;如果超出了任务最大容忍延迟,则进入主服务器处理,并进一步判断进入主服务器进行处理是否超出了任务最大容忍延迟,如果超过,则任务上传至云端处理,如果没有超出,则在主服务器进行处理;在此之后若新增了一个任务,则根据设备的排序结果,依次判断将任务最终留在哪里;

其中所述的设备排序过程为:根据主服务器的处理能力Mo、从服务器的处理能力Me、主服务器正在执行的任务数量To,从服务器正在执行的任务数量Te计算排序指标C,如公式(1)所示;若比值C大于1,则顺序为从服务器,主服务器,云端,否则,顺序为主服务器,从服务器,云端;

Figure BDA0002269285140000061

特别的,有可能发生的情况是若任务优先分配给了从服务器,则此时主服务器处于空闲状态,从服务器处于繁忙状态。主从服务器应当切换角色,由原先的从服务器充当新的主服务器接收任务,原先的主服务器进入休眠状态。

下面我们使用IFOGSIM来仿真该方法的有效性。

如图3所示,我们使用了三种不同边缘处理服务器。为了降低边缘节点的功耗,我们将原始使用Config 1的服务器分拆成Config 2和Config 3这样两个服务器为一组。为了保证公平性,我们保证Config 2和Config 3的算力和等于Config 1。

我们将只有一台Config 1配置的服务器组合称为single device,分别拥有一台Config 2和Config 3的组合称为multiple devices。我们将主服务器设置为Config 2,从服务器设置为Config 3。主服务器将用于参与任务调度与执行,从服务器将只执行任务,在空闲时将进入休眠状态。因为休眠功耗与处理器无关,所以三个平台下休眠功耗相同。通常来说,休眠状态的功耗极低,以普通PC来说,这个功耗为大约4.5w。后续的实验部分,将基于这个配置。

实验结果是基于激进策略的结果,如图4、5、6所示。

如图4所示,对于每个独立的服务器而言,本说明书所述的方法对功耗都有一定的优化。

如图5所示,我们在不同的任务产生密度下进行了试验,其中,mean表示任务发出的间隔时间的均值,纵轴是这次实验系统内边缘节点的总功耗。mean越大表示间隔时间越大,任务总量越小,实验结果表明,在mean为5的实验中,multiple devices的功耗比singledevice的功耗相比下降3.3%。在mean为6的实验中,功耗下降了18.5%。在mean为7的实验中,功耗下降了26.3%。在mean为8的实验中,功耗下降了27.9%。可以得出,随着产生任务的密集,multiple devices方案的优势越来越小。说明本论文提出的方法在任务密度较小的情况下,对功耗有明显的优化,在任务密度大的情况下,对功耗有较小的优化。故由图可看出,本方法功耗有所降低,进一步,任务量越小,功效下降越大。

如图6所示,实验结果表明,在mean为5的实验中,multiple devices的延迟比single device的延迟相比上升0.04%。在mean为6的实验中,延迟上升了5.25%。在mean为7的实验中,延迟上升了16.69%。在mean为8的实验中,延迟上升了17.07%。说明本方法在对延迟有一定副作用,但是在不同组的实验中,功耗的节省比例分别都大于延迟增加的比例,在一些功耗要求明显的场合,该方法还是有一定参考价值。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于小凹模拟的系统和设备及计算机可读存储设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!