一种基于强化学习的在线多工作流调度方法

文档序号:31649664发布日期:2022-09-27 21:06阅读:93来源:国知局
一种基于强化学习的在线多工作流调度方法

1.本发明属于移动边缘计算领域,主要涉及一种基于强化学习的在线多工作流调度方法。


背景技术:

2.移动边缘计算(mobile edge computing,mec)网络在网络的边缘处部署具有一定计算能力的边缘服务器,通过将计算任务卸载到靠近本地用户的网络边缘处的边缘服务器上,以提供更高的服务质量。该网络具有较低的延迟、较强的安全性以及减少网络拥塞等显著优势,解决了传统云计算模式算力有限以及时延较高的问题。有效且合理的卸载决策与资源分配将有助于提高mec网络的性能,为企业带来可观的利润。
3.但是,以有向无环图(directed acyclic graph,dag)表征的工作流在mec网络环境中的在线卸载决策与资源分配的联合优化问题为非凸的np-hard问题,传统数学方法解该类问题计算量大,复杂性高,这为mec网络带来巨大的负担。因此在移动边缘计算环境下如何得出较好的卸载决策与资源分配,也引起了国内外学者的广泛关注。


技术实现要素:

4.为了解决上述问题,本发明提出一种基于强化学习的在线多工作流调度方法。
5.本发明包括如下步骤:
6.s1.建立系统模型:
7.移动边缘计算网络由多个移动设备和多个边缘服务器组成,移动设备的处理器频率与核数以fn和cpun表示,边缘服务器的处理器频率与核数以fm和cpum表示,边缘服务器之间的带宽以及移动设备与边缘服务器之间的带宽以b表示。
8.每个移动设备都会在线产生相互独立的、以dag表征的任务。每个dag可以用一个二元组g=(v,e)来表示,其中v=(v1,

,vk,

,vk)表示该dag里所包含的节点,e={e
kl
|vk∈v,v
l
∈v}表示节点之间表征连接关系的边,边e
kl
表示节点之间的约束依赖关系,即只有在节点vk执行完毕后,节点v
l
才能开始执行。每一个节点都可以表征为一个三元组其中wk表示节点vk的工作负载,表示节点vk的输入数据大小,表示节点vk的输出数据大小。每个移动设备和边缘服务器都有一个自己的等待队列,用于存储即将在该移动设备或边缘服务器上执行的节点。
9.s2.建立节点卸载规则:
10.移动设备以节点为单位进行卸载,可选择将节点卸载到边缘服务器上或者留在本地执行。只有在当前节点的所有前驱节点执行完毕并且数据传输完成后,当前节点才可以开始执行。本发明所提出的调度策略在触发调度动作后,将选出一个待分配的节点并决定其所要分配的边缘服务器或移动设备。节点vk在移动设备或边缘服务器上的完成时刻可由公式(1)计算:
[0011][0012][0013][0014][0015]
其中公式(1)中avail表示移动设备或边缘服务器的可用时刻,表示取和avail的较大值。公式(2)表示当前节点vk所有前驱节点执行完成并且输出数据传输完成的时刻,其中表示节点v
l
执行完成的时刻,表示遍历节点vk的所有前驱节点v
l
,取与t
tran
(v
l
,vk)之和的最大值。公式(3)表示传输数据所需时间,若前驱节点和当前节点处在相同的移动设备或边缘服务器上执行则不需要进行数据的传输,反之则需要,公式(4)表示节点的执行所要花费的时间。
[0016]
s3.建立时间线模型:
[0017]
本发明提出了一种时间线模型,其上记录了所有dag任务的到达事件以及节点的执行完成事件。移动设备上任务的到达过程服从参数为λ的泊松分布,即任务达到率为λ。时间线上离当前时刻最近的事件会不断被抓取,并根据被抓取的事件更新当前时刻,直到满足触发调度动作的条件。调度动作触发的条件是有可调度的节点并且边缘服务器或该节点所属的移动设备空闲时,调度动作结束后,则会继续抓取时间线上的事件。
[0018]
s4.基于强化学习的在线多工作流调度策略:
[0019]
需要定义调度问题的状态空间和动作空间,并设计调度问题的奖励函数,使用梯度策略进行训练,目标是使期望奖励最大化。具体包含以下子步骤:
[0020]
s41.定义状态空间:
[0021]
在以dag表征的多工作流在线调度的环境下,与环境交互的智能体采用图卷积神经网络提取所有dag的特征。通过图卷积神经网络,每个节点会自上而下聚合自己子节点的信息,同时自身作为父节点的子节点也会被其对应的父节点所聚合。通过消息一步步传递聚合可以得到每个节点的嵌入向量,其中包含每个节点关键路径值的信息。同时基于这些节点的嵌入向量,智能体可以进一步聚合而成节点所属dag的嵌入向量,其中包括该dag的剩余工作量的信息。再基于这些dag的嵌入向量,智能体可以聚合得到全局的嵌入向量,其中包含全局的工作量的信息。
[0022]
智能体观测环境而得的环境状态分为两部分:
[0023]
在选择所要调度的节点时,智能体可观测环境状态o
node
表示为公式(5):
[0024]onode
=[e
node
,e
dag
,e
globa
,t
stay
,t
waste
,d
i,o
,w
node
,w
pre
]
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0025]
其中e
node
、e
dag
、e
globa
分别表示节点、节点所属dag、全局级别的嵌入向量;t
stay
表示节点所属dag在环境中的停留时间;t
waste
表示节点在移动设备或边缘服务器上执行会等待多长时间以及移动设备或边缘服务器会等待多长时间;d
i,o
表示节点的输入与输出数据;w
node
表示节点的工作负载;w
pre
表示节点的所有父节点的工作负载之和。
[0026]
在选择本次所要分配的服务器时,智能体可观测环境状态o
server
表示为公式(6):
[0027]oserver
=[st
pre
,st
server
,t
exec
,num
child
,w
child
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0028]
其中st
pre
表示该节点的前驱节点数据传输完成的时刻;st
server
表示各个服务器的可用时刻;t
exec
表示节点在各个服务器上的执行时间;num
child
表示节点的所有子节点总数以及所有后代节点总数;w
child
表示节点的所有子节点以及所有后代节点的工作负载之和。
[0029]
s42.定义动作空间:
[0030]
本发明提出的策略将动作分为两部分,智能体将上述观测到的状态o
node
与o
server
分别输入基于梯度策略的两个神经网络,即策略网络,以从待调度的节点里选出当次要调度的节点node,以及从可用的服务器里选出所要给该节点分配的服务器server,可由公式(7)表示:
[0031]
a=[node,server]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0032]
其中a表示定义的动作空间。
[0033]
s43.定义奖励函数:
[0034]
在多工作流在线调度过程中,每个动作会得到一个即刻奖励以评估该动作的好坏。以所有dag任务的平均完成时间作为最终的长期优化目标,根据利特尔法则,即刻奖励设定为当次动作开始到下一个动作触发的这段时间内,所有dag任务在环境内的存在时间,可由公式(8)(9)表示:
[0035]
r=-∑t
stay
(g)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0036]
t
stay
(g)=min(t
now
,t
finish
(g))-max(t
pre
,t
arrive
(g))
ꢀꢀꢀꢀꢀꢀ
(9)
[0037]
其中t
now
表示当前时刻,t
finish
(g)表示工作流g的完成时刻,t
pre
表示上一个动作执行的时刻,t
arrive
(g)表示工作流g的到达时刻,min(t
now
,t
finish
(g))表示取t
now
,t
finish
(g)的最小值,max(t
pre
,t
arrive
(g))表示取t
pre
,t
arrive
(g)的最大值。
[0038]
s44.问题形式化:
[0039]
在线多工作流调度策略可以考虑基于梯度策略的神经网络模型,它的主要目标是最大化所有动作的累积奖励,可由公式(10)表示:
[0040][0041]
其中,t表示本次策略实施共有t个动作,k表示第k个动作,rk表示第k个动作的奖励。
[0042]
由于梯度策略的目标是最大化奖励,因此对神经网络参数执行梯度上升来进行参数的学习。
[0043]
s5.策略实现:
[0044]
本发明设计了一种基于策略梯度的求解在线多工作流调度问题算法(pg-omws)用于策略实现,策略实现的详细过程为:
[0045]
(1)在策略实施阶段,首先初始化环境参数和网络参数。环境参数主要包括执行队列长度、移动设备和边缘服务器之间的带宽以及在环境内和即将到达环境的dag任务结构。网络参数主要包括两个策略网络以及图卷积神经网络中的网络参数。然后,智能体观测环境里每个节点的基本特征,送入图卷积神经网络中经过两次聚合得到e
node
,根据这些e
node
再经过聚合得到e
dag
,根据所有e
dag
再次经过聚合得到e
globa
,结合当前环境得到o
node
与o
server
,并根据这两个观测结果选择本次动作所要分配的节点和要给该节点分配的服务器。该节点
的完成事件会记录到时间线中,同时计算出该动作的奖励。每次观测到的环境状态、动作以及奖励都会被保存下来。接下来判断触发调度动作的条件是否被满足,满足则继续触发调度动作,不满足,则去抓取时间线上离当前时刻最近的事件并根据该事件更新当前时刻,直到再次满足触发调度动作的条件。持续进行调度动作与抓取时间线事件的循环,直到环境内所有dag任务执行完成。
[0046]
(2)在训练阶段,智能体根据之前保存的环境状态、动作以及奖励,使用梯度策略由公式(11)去更新网络参数,得到最终的工作流调度策略:
[0047][0048]
其中θ表示网络参数,α表示学习率,t表示本次策略实施共有t个动作,k表示第k个动作,π
θ
(ok,ak)表示以θ为参数的神经网络在环境状态ok下做出动作ak的概率,rk表示基于即刻奖励进一步经过衰减得到的综合奖励,表示对lnπ
θ
(sk,ak)rk求梯度,表示对所有动作求得的梯度进行累加。
[0049]
(3)策略执行阶段:环境中有工作流动态到达时,通过最终的工作流调度策略去选择执行该工作流中节点的边缘服务器或移动设备,作为执行该节点的服务器,依次执行完成工作流中的节点。
[0050]
本发明有益效果:采取图卷积神经网络提取工作流的结构特征,并基于提取的特征进行卸载决策与资源分配,首次在移动边缘计算的多工作流在线调度环境下提出了一种结合梯度策略的解决方案。当环境中有工作流动态到达时,本发明能够实时分析当前的工作流以及服务器的状态,并调度工作流的节点到某个服务器上去执行。本方法复杂度低,并且实现了尽可能地降低所有工作流的平均完成时间。
附图说明
[0051]
图1为本发明基于强化学习的在线多工作流调度策略的流程图;
[0052]
图2为在任务到达率λ影响下,本发明与fifo方法、sjf方法、random方法、localex方法以及edgeex方法的实验结果对比图;
[0053]
图3为在边缘服务器处理器核数影响下,本发明与fifo方法、sjf方法、random方法、localex方法以及edgeex方法的实验结果对比图;
[0054]
图4为在移动设备处理器核数影响下,本发明与fifo方法、sjf方法、random方法、localex方法以及edgeex方法的实验结果对比图;
[0055]
图5为在边缘服务器个数影响下,本发明与fifo方法、sjf方法、random方法、localex方法以及edgeex方法的实验结果对比图;
[0056]
图6为在移动设备个数影响下,本发明与fifo方法、sjf方法、random方法、localex方法以及edgeex方法的实验结果对比图。
具体实施方式
[0057]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明进行进一步详细说明。
[0058]
如图1所示,本发明提出的一种基于强化学习的在线多工作流调度方法,包括以下
步骤:
[0059]
s1.建立系统模型:
[0060]
移动边缘计算网络由多个移动设备和多个边缘服务器组成,移动设备的处理器频率与核数以fn和cpun表示,边缘服务器的处理器频率与核数以fm和cpum表示,边缘服务器之间的带宽以及移动设备与边缘服务器之间的带宽以b表示。
[0061]
每个移动设备都会在线产生相互独立的、以dag表征的任务。每个dag可以用一个二元组g=(v,e)来表示,其中v=(v1,

,vk,

,vk)表示该dag里所包含的节点,e={e
kl
|vk∈v,v
l
∈v}表示节点之间表征连接关系的边。边e
kl
表示节点之间的约束依赖关系,即只有在节点vk执行完毕后,节点v
l
才能开始执行。每一个节点都可以表征为一个三元组其中wk表示节点的工作负载,表示节点vk的输入数据大小,表示节点输出数据大小。每个移动设备和边缘服务器都有一个自己的等待队列,用于存储即将在该移动设备或边缘服务器上执行的节点。
[0062]
s2.建立节点卸载规则:
[0063]
移动设备以节点为单位进行卸载,可选择将节点卸载到边缘服务器上或者留在本地执行。只有在当前节点所有前驱节点执行完毕并且数据传输完成后当前节点才可以开始执行。本发明所提出的调度策略在触发调度动作后,将选出一个待分配的节点并决定其所要分配的边缘服务器或移动设备。节点vk在移动设备或边缘服务器上的完成时刻可由公式(1)计算:
[0064][0065][0066][0067][0068]
其中公式(1)中avail表示移动设备或边缘服务器的可用时刻,公式(2)表示当前节点vk所有前驱节点执行完成并且输出数据传输完成的时刻。公式(3)表示传输数据所需时间,若前驱节点和当前节点处在相同的移动设备或边缘服务器上执行则不需要进行数据的传输,反之则需要。公式(4)表示节点的执行所要花费的时间。
[0069]
s3.建立时间线模型:
[0070]
本发明提出了一种时间线模型,其上记录了所有dag任务的到达事件以及节点的执行完成事件。移动设备上任务的到达过程服从参数为λ的泊松分布。时间线上离当前时刻最近的事件会不断被抓取并根据被抓取的事件更新当前时刻,直到满足触发调度动作的条件。调度动作触发的条件是有可调度的节点并且边缘服务器或该节点所属的移动设备空闲时。调度动作结束后,则会继续抓取时间线上的事件。
[0071]
s4.基于强化学习的在线多工作流调度策略:需要定义调度问题的状态空间和动作空间,并设计调度问题的奖励函数,使用梯度策略进行训练,目标是使期望奖励最大化。
具体包含以下子步骤:
[0072]
s41.定义状态空间:
[0073]
在以dag形式表征的多工作流在线调度的环境下,与环境交互的智能体采用图卷积神经网络提取所有dag的特征,每个节点会自上而下聚合自己子节点的信息,同时自身作为父节点的子节点也会被自身的父节点所聚合。通过消息一步步传递聚合可以得到每个节点的嵌入向量,其包含每个节点关键路径值的信息。同时基于这些节点的嵌入向量,智能体可以进一步聚合而成节点所属dag的嵌入向量,其包括该dag的剩余工作量的信息。再基于这些dag的嵌入向量,智能体可以聚合得到全局的嵌入向量,其包含全局的工作量的信息。有了节点的嵌入向量,智能体才能判断沿着该节点向下关键路径的工作量,有了dag以及全局级别的嵌入向量,智能体才能识别作业剩余工作量的相对大小。
[0074]
智能体观测环境而得的环境状态分为两部分:
[0075]
在选择所要调度的节点时,智能体可观测环境状态o
node
表示为公式(5):
[0076]onode
=[e
node
,e
dag
,e
globa
,t
stay
,t
waste
,d
i,o
,w
node
,w
pre
]
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0077]
其中e
node
,e
dag
,e
globa
分别表示节点、节点所属dag以及全局级别的嵌入向量;t
stay
表示节点所属dag在环境中的停留时间;t
waste
表示节点在移动设备或边缘服务器上执行会等待多长时间以及移动设备或边缘服务器会等待多长时间;d
i,o
表示节点的输入与输出数据;w
node
表示节点的工作负载,w
pre
表示节点的所有父节点的工作负载之和。
[0078]
在选择本次所要分配的服务器时,智能体可观测环境状态空间o
server
可表示为公式(6):
[0079]oserver
=[st
pre
,st
server
,t
exec
,num
child
,w
child
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0080]
其中st
pre
表示该节点的前驱节点数据传输完成的时刻;st
server
表示各个服务器的可用时刻;t
exec
表示节点在各个服务器上的执行时间;num
child
表示节点的所有子节点总数以及所有后代节点总数;w
child
表示节点的所有子节点以及所有后代节点的工作负载之和。
[0081]
s42.定义动作空间:
[0082]
本发明提出的策略将动作分为两部分,智能体将上述观测到的状态o
node
与o
server
分别输入梯度策略的两个神经网络以从待调度的节点里选出当次要调度的节点node,以及从可用的服务器里选出所要给该节点分配的服务器server,可由公式(7)表示:
[0083]
a=[node,server]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0084]
其中a表示定义的动作空间。
[0085]
s43.定义奖励函数:
[0086]
在多工作流在线调度过程中,每个动作会得到一个即刻奖励以评估该动作的好坏。以所有dag任务的平均完成时间作为最终的长期优化目标,根据利特尔法则,即刻奖励设定为当次动作开始到下一个动作触发的这段时间内,所有dag任务在环境内的存在时间,可由公式(8)(9)表示:
[0087]
r=-∑t
stay
(g)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0088]
t
stay
(g)=min(t
now
,t
finish
(g))-max(t
pre
,t
arrive
(g))
ꢀꢀꢀꢀꢀꢀ
(9)
[0089]
其中t
now
表示当前时刻,t
finish
(g)表示工作流g的完成时刻,t
pre
表示上一个动作执行的时刻,t
arrive
(g)表示工作流g的到达时刻,min(t
now
,t
finish
(g))表示取t
now
,t
finish
(g)的最小值,max(t
pre
,t
arrive
(g))表示取t
pre
,t
arrive
(g)的最大值。根据利特尔法则,由于任务到
达的速率由外界决定,任务在环境中逗留时间越短,环境中平均任务数量就越少,所有任务平均完成时间就越低。因此该即刻奖励能较好地评估该动作的好坏。
[0090]
s44.问题形式化:
[0091]
在线多工作流调度策略可以考虑基于梯度策略模型,它的主要目标是最大化所有动作的累积奖励,可由公式(10)表示:
[0092][0093]
其中,t表示本次策略实施共有t个动作,k表示第k个动作,rk表示第k个动作的奖励。
[0094]
由于梯度策略的目标是最大化奖励,因此对神经网络参数执行梯度上升来进行参数的学习。
[0095]
s5.策略实现:
[0096]
本发明设计了一种基于策略梯度的求解在线多工作流调度问题算法(pg-omws)用于策略实现,策略实现的详细过程为:
[0097]
(1)在策略执行阶段,首先初始化环境参数和网络参数。环境参数主要包括执行队列长度,移动设备和边缘服务器之间的带宽,已经在环境内和即将到达环境的dag任务结构。网络参数主要包括两个策略网络以及图卷积神经网络中的网络参数。然后,智能体观测环境下每个节点的基本特征,送入图卷积神经网络中经过两次聚合得到e
node
,根据这些e
node
再经过聚合得到e
dag
,根据所有e
dag
再次经过聚合得到e
globa
,结合当前环境得到o
node
与o
server
,并根据这两个观测结果选择本次动作所要分配的节点和要给该节点分配的服务器。该节点的完成事件会记录到时间线中,同时计算出该动作的奖励r。每次观测到的环境状态、动作以及奖励都会被保存下来。接下来判断触发调度动作的条件是否被满足,满足则继续触发调度动作,不满足,则去抓取时间线上离当前时刻最近的事件并根据该事件更新当前时刻,直到再次满足触发调度动作的条件。持续进行调度动作与抓取时间线事件的循环直到环境内所有dag执行完成。
[0098]
(2)在训练阶段,智能体根据之前保存的环境状态、动作以及奖励,使用梯度策略由公式(11)去更新网络参数,得到最终的工作流调度策略:
[0099][0100]
其中θ表示网络参数,α表示学习率,t表示本次策略实施共有t个动作,k表示第k个动作,π
θ
(ok,ak)表示以θ为参数的神经网络在环境状态ok下做出动作ak的概率,rk表示基于即刻奖励进一步经过衰减得到的综合奖励,表示对lnπ
θ
(sk,ak)rk求梯度,表示对所有动作求得的梯度进行累加。
[0101]
(3)策略执行阶段:环境中有工作流动态到达时,通过最终的工作流调度策略去选择执行该工作流中节点的边缘服务器或移动设备,作为执行该节点的服务器,依次执行完成工作流中的节点。
[0102]
实施例
[0103]
本实施例步骤与具体实施方式相同,在此不再进行赘述。
[0104]
作为优选,s1所述移动设备个数为3,其处理器核数cpun=4,处理器频率fn=2.0ghz。边缘服务器的个数为6,其处理器核数cpum=6,处理器频率fm=2.5ghz。移动设备和
边缘服务器之间的带宽、边缘服务器与边缘服务器之间的带宽在[10,100]mb/s之间随机取值。dag任务初始在环境内有10个,后续由移动设备在线产生15个。dag里节点的工作负载在[10,100]ghz
·
s之间随机取值。节点的输出数据数值上设置为工作负载的0.1倍,单位为mb,输入数据为其所有父节点输出数据之和。
[0105]
作为优选,s2中所述的泊松分布参数,即任务到达率λ设置为5。
[0106]
作为优选,s5中所述的图卷积神经网络聚合所经过的神经网络隐藏层结构均相同,都有两层隐藏层,神经元个数都分别是16和8,两个策略网络隐藏层结构也相同,都有三层隐藏层,神经元个数都分别是32、16和8。本发明采用adam优化器来更新目标网络,激活函数均采用leakyrelu,学习率设置为0.0003,奖励衰减系数γ设置为1。
[0107]
下面就对比方法的实施和实施结果进行展示:
[0108]
为了评估提出的方法框架的有效性,使用了另外五种方法(sjf、fifo、random、localex、edgeex)进行对比。下面简要介绍这五种方法:
[0109]
(1)sjf:该方法根据短作业优先原则选择要执行的节点,将dag中节点工作负载之和作为该dag的工作量,工作量越少越早进行调度,并选择执行该节点完成时间最早的边缘服务器或移动设备作为执行该节点的服务器。
[0110]
(2)fifo:该方法根据先进先出的原则选择要执行的节点,并选择执行该节点完成时间最早的边缘服务器或移动设备作为执行该节点的服务器。
[0111]
(3)localex:该方法总是选择移动设备来执行节点,执行节点的顺序遵循先进先出的原则。
[0112]
(4)edgeex:此缩写表示节点总是卸载到边缘服务器,即除了开始节点和结束节点外,该方法始终选择执行该节点完成时间最早的边缘服务器,执行节点顺序遵循先到先出的原则。
[0113]
(5)random:该方法随机选择当次分配的节点与边缘服务器或移动设备作为执行该节点的服务器。
[0114]
分别就任务到达率、边缘服务器处理器核数、移动设备处理器核数、边缘服务器个数和移动设备个数这几个因素对所有任务平均完成时间的影响进行评估与分析。
[0115]
为了检验不同任务到达间隔对性能的影响,将任务到达间隔从3变到7个单位时间,增量为1。六种方法得到的平均完成时间如图2所示。从图2中观察到,与其他方法相比,本发明提出的以pg-omws实现的方法具有更低的平均完成时间,随着任务到达间隔的增加,平均完成时间也逐渐降低。这是因为随着任务到达间隔的增加,需要同时处理的节点数量减少,从而令平均完成时间减少。
[0116]
为了研究边缘服务器计算能力对性能的影响,将边缘服务器的处理器核数也就是cpu核数从4核变到8核,增量为1。实验中六种方法得到的平均完成时间如图3所示。可以看出,本发明提出的以pg-omws实现的方法可以得到最低的平均完成时间,并且平均完成时间随着cpu核数的增加而逐渐减少。这是因为cpu核数的增加使节点的处理延迟大大缩短,从而令平均完成时间缩短。
[0117]
为了研究移动设备计算能力的影响,将移动设备的cpu核数从2核变到6核,增量为1。六种方法得到的平均完成时间如图4所示。与其他方法相比,本发明提出的以pg-omws实现的方法能得到更低的平均完成时间。随着移动设备cpu核数的增加,平均完成时间逐渐降
低。这是因为随着移动设备cpu核数的增长,节点的处理速度大大加快,以使平均完成时间缩短。
[0118]
为了研究不同数量的边缘服务器对方法性能的影响,令边缘服务器的数量设置为1到5,增量为1。通过六种方法得到的平均完成时间如图5所示。图5的结果表明,在边缘服务器个数变化的情况下,本发明提出的以pg-omws实现的方法始终优于其他方法。平均完成时间随着边缘服务器数量的增加而减少。其原因是更多的边缘服务器提供了更多的计算资源,从而降低了平均完成时间。此外,localex方法的曲线是平坦的。这是因为localex方法在本地执行所有节点,与边缘服务器的数量无关。
[0119]
为了研究移动设备数量对性能的影响,基于不同数量的移动设备进行了实验。令边缘服务器的数量设置为4到8,增量为1。相关结果如图6所示。从图6可以看出,在移动设备个数变化的情况下,本发明提出的以pg-omws实现的方法始终优于其他方法。随着移动设备数量的增加,平均完成时间逐渐减少。其原因是,更多的移动设备提供了更多的计算资源,从而缩短了平均完成时间。此外,当移动设备的数量过度增加时,edgeex方法不会相应地继续减少。这是因为edgeex方法会将大部分节点卸载到边缘服务器,而移动设备的数量与此无关。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1