MCC建模

负载卸载策略研究

Posted by AskFqb on October 6, 2021

2013.09 “Energy-Optimal Mobile Cloud Computing under Stochastic Wireless Channel” IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS 之所以看这篇文章主要是因为这篇文章是关于MCC中的负载卸载策略的高引论文,且论文研究的问题非常经典,在MEC中也是适用的。研究这篇文章可以基本了解MEC和MCC的负载卸载策略。

1. 动机

  1. 移动设备的电池能量限制。
  2. 云计算为扩展移动设备的能力以满足能源需求提供了机会。
  3. 一般负载的卸载主要有两个研究点,一个是实现负载卸载的机制,另一个是确定何时卸载负载的策略。前者已经有很多架构和机制被提出来了,后者中对负载卸载的最优能量策略的研究是相当不足的。

2. 基本介绍

  1. 任务(应用程序)可以在移动设备的本地运行(移动执行),也可以卸载到云端进行计算(云执行)。在移动执行中,通过DVS,即动态电压调节技术来控制CPU的时钟频率以最小化计算能量;对于云执行,通过在随机无线信道中优化调度数据传输速率来最小化传输能量。
  2. 约束:在截止时间内完成。目标:开发最优的任务执行策略,最大限度地降低移动设备的能耗。将其描述为凸优化问题,作者解析地解决了优化问题。

3. related work

  1. 前人的工作研究了计算卸载以延长移动设备的电池寿命的方案。
  2. 对于云计算中的能源问题,也有文献考虑了一个能量模型来分析是否将应用卸载到云上,主要考虑了移动设备的计算能耗和负载卸载的通信能耗。但是主要考虑固定计算调度和无线信道的固定数据速率模型,因此需要考虑更现实的模型来权衡云执行和移动执行。
  3. 相比于前人的工作,作者采用Gilbert-Elliott模型,在移动执行中考虑随机无线信道而不是确定性信道,并结合现实的计算模型。

4. 系统建模

4.1 移动应用模型

$A(L, T)$,$L$ 表示应用程序输入的数据位数,$T$ 表示截止时间。

4.2 移动执行能耗模型

工作负载由应用程序所需的 CPU 周期数来衡量,表示为 $W$,取决于应用程序中的数据大小和算法复杂度。

\[\tag{1} \mathcal{E}_{w}(f)=\kappa f^{2}\]

移动执行的总计算能耗:

\[\sum_{w=1}^{W} \mathcal{E}_{w}\left(f_{w}\right)\]

DVS技术可以动态调整时钟频率(例如降低时钟频率可以节能),但是必须满足截止时间的约束。

最优调度:

\[\tag{2} \mathcal{E}_{m}^{*}=\min _{\psi \in \Psi}\left\{\mathcal{E}_{m}(L, T, \psi)\right\}\]

其中,$\psi={f _ {1}, f _ {2}, \ldots f _ {W}}$ 是满足延迟要求的CPU频率向量。$\Psi$ 是所有可行的CPU频率向量的集合。$\mathcal{E} _ {m}(L, T, \psi)$ 是移动设备消耗的总能量。

4.3 云执行能耗模型

假设:

  1. 首先,我们假设应用程序的二进制可执行文件最初已经复制到云克隆上。因此,它不会产生额外的能源成本。
  2. 信道具有随机衰落模型。
  3. 接收功率是常数,因此不需要考虑云输出结果的调度,只需要考虑输入给云执行的数据的传输优化调度,以实现移动设备上的最低能耗。
  4. 不考虑云平台上的任何安全问题,因此不会有安全操作带来的额外开销。

由于无线网络中时延与功率之间不存在闭合表达式,一般使用经验传输能量模型:

对于增益为 $g$ 的无线衰落信道,在时隙内传输 $s$ 比特数据所消耗的能量由凸单项函数确定:

\[\tag{3} \mathcal{E}_{t}(s, g, n)=\lambda \frac{s^{n}}{g}\]

其中 $n$ 表示单项式阶数,$\lambda$ 表示能量系数。这篇文章中作者设置了 $\lambda=1.5$。

因此,对于一个移动应用,$A(L,T)$,总传输能量消耗为

\[\sum_{t=1}^{T} \mathcal{E}_{t}\left(s_{t}, g_{t}, n\right)\]

其中,$s _ t$ 和 $g _ t$ 是 $t$ 时隙传输的比特数和信道状态。

最优调度:存在一个在满足延迟要求的同时最小化总传输能量的最优传输数据速率调度。(每个时隙的能量成本是传输比特的凸函数,因此理想的是传输尽可能少的比特,但是必须满足延迟要求)

\[\tag{4} \mathcal{E}_{c}^{*}=\min _{\phi \in \Phi} \mathbb{E}\left\{\mathcal{E}_{c}(L, T, \phi)\right\}\]

其中,$\phi={s _ {1}, s _ {2}, \ldots s _ {T}}$ 是满足延迟约束的数据传输方案,$\mathcal{E} _ {c}(L, T, \phi)$ 表示传输能量。

4.4 最优应用程序执行策略

因为作者考虑的是二进制负载卸载策略,所以应用程序任务不是移动执行就是云执行,取决于哪边的能量更低。

\[\tag{5} \left\{\begin{array}{lll} \text { Mobile Execution } & \text { if } & \mathcal{E}_{m}^{*} \leq \mathcal{E}_{c}^{*} \\ \text { Cloud Execution } & \text { if } & \mathcal{E}_{m}^{*}>\mathcal{E}_{c}^{*} \end{array}\right.\]

可以看出,能量系数 $\kappa / \lambda$ 之间的比率可能会影响最佳执行策略的确定

5. 移动执行下的最优计算能量

$f(w)$ 表示完成 $w$ 个CPU周期后,为下一个周期规划的时钟频率。CPU周期的时间为 $\frac{1}{f(w)}$,且能量消耗是 $\kappa F _ {W} ^ {c}(w)[f(w)] ^ {2}$,其中,$F _{W} ^ {c}(w)$ 是 $w$ 个CPU周期后应用程序还未执行完的概率。所以总的计算能量消耗为

\[\mathcal{E}_{m}=\kappa \sum_{w=1}^{W_{\rho}} F_{W}^{c}(w)[f(w)]^{2}\]

4.2 中的移动执行的最优规划问题可以具体化:

\[\begin{array}{cl} \min _{\{f(w)\}} & \kappa \sum_{w=1}^{W_{\rho}} F_{W}^{c}(w)[f(w)]^{2} \\ \text { s.t. } & \sum_{w=1}^{W_{\rho}} \frac{1}{f(w)} \leq T \\ & f(w)>0 \end{array}\]

6. 云执行下的最优传输能量

6.1 信道模型

Gilbert-Elliott(GE)信道模型

有两种状态:“好”和“坏”信道条件,分别表示为 $G$ 和 $B$。这两个状态对应于信道增益的两级量化。如果测量的信道增益高于某个值,则该通道被标记为“好”。否则,该信道被标记为“坏”。设“好”状态和“坏”状态的(平均)信道增益分别为 $g _ G$ 和 $g _ B$。 在该模型中,状态转移矩阵完全由 $p _ {GG}$ 和 $p _ {BB}$ 确定。$p _ {GG}$ 表示当前状态为“好”的情况下,下一个状态也是“好”的概率。同理,$p _{BB}$ 表示当前状态是“坏”的情况下,下一个状态也是“坏”的概率。对应的,$p _ {GB}=1-p _ {GG}$ 表示当前状态为“好”,转移到下一个状态为“坏”的概率。状态停留时间呈几何分布,因此处于“好”或“坏”的状态的时隙数量衡量的平均状态停留时间为 $T _ {G}=\frac{1}{1-p _ {G G}}$ 和 $T _ {B}=\frac{1}{1-p _ {B B}}$。

6.2 数据传输调度问题

4.3 中的调度问题 $(4)$ 可以具体化:

\[\begin{array}{cl} \min _{s_{t}}: & \mathbb{E}\left[\sum_{t=1}^{T} \mathcal{E}_{t}\left(s_{t}, g_{t}\right)\right] \\ \text { s.t.: } & \sum_{t=1}^{T} s_{t}=L \\ & s_{t} \geq 0, \forall t \end{array}\]