- 降低能耗的方法:关掉一些能源利用率低的处理器(
DPM:dynamic power management
);DVFS
。- 实时工作流:即时性、可靠性
Energy-Minimized Scheduling of Real-Time Parallel Workflows on Heterogeneous Distributed Computing Systems
- 降低能耗的方法:关掉一些能源利用率低的处理器(
DPM:dynamic power management
);DVFS
。 - 实时工作流:即时性、可靠性
Related Models
System model
- M个处理器
- 工作流
- 任务集合
- 任务之间的依赖关系: E = N x N 的矩阵
- 计算开销:W = N x M 的矩阵,
表示任务 在处理器 上执行,且处理器 处于频率最大时 的执行时间
- 任务集合
Power Model
是静态能耗,由电流泄露引起 是动态能耗,取决于处理器的频率
若任务
在处理频率为 的处理器 上执行,则其能耗为: 工作流 G 的总能耗
和 分别表示分配给任务 的处理器和处理器的处理频率
Reliability Model
对于任务
,被调度在频率为 的处理器 上时,其可靠性为 (假设遵循泊松分布) - 工作流
的可靠性为 (当处理器都处于最大频率时)
- 工作流
更一般的,对于被调度在频率为
的处理器 上的任务 , 因此,任务的可靠性就为:
Problem Formulation
调度过程分为三部分:
a task placement plan
:确定将任务调度给哪个虚拟机a start time plan
:任务开始执行的时间的确定a frequency assignment plan
:确定虚拟机的运行频率
用元组
reliability transfer scheme
找到一个任务应该满足的最低的可靠性,以最终满足
如上图所示,将任务根据其优先级进行调度,从 T
o(1)到 To(N)连续调度,{To(1),…,To(i-1)} 是已经调度的任务,To(i)是正在调度的任务,{To(i+1),…,To(N)} 是还未调度的任务。{T
o(1),…,To(i-1)} 的可靠性是已知的,为了得到 To(i)应该满足的最低的可靠性,假设未调度的任务 {To(i+1),…,To(N)} 的可靠性都是最大的,则,这就是 T o(i)应该满足的最低的可靠性。
MSL algorithm
- 由 “
reliability transfer scheme
,我们已经得到了每个任务应该满足的最低的可靠性,由此我们找出那些可以满足该任务可靠性需求的处理器,然后选择完成时间最短的那个处理器。
processor-merging algorithm
- 用来降低静态能耗
- 首先打开所有处理器,并应用 MSL 算法,判断 R
req和 Dreq是否满足,若满足则进一步,否则 break:- 对所有开着的处理器,应用 MSL 算法,判断 R
req和 Dreq是否满足,若满足则计算总能耗; - 然后关闭其中开着的处理器,继续前面的步骤,直到没有处理器能被关闭为止。
- 对所有开着的处理器,应用 MSL 算法,判断 R
DVFS on task level
- 用来降低动态能耗
- 在满足可靠性和即时性的前提下,调低处理器的频率,以降低动态能耗。
response time requirement
基于 MSL 算法生成的调度结果,依次地从 T
o(N)到 To(1)进行任务执行频率的调整是任务 T j在处理器 pk上执行时的响应时间需求。任务在调度执行时,应该满足这个要求。
最终,对于在处理器 p
k上执行的任务 Tj来说,其可行执行时间区间为
reliability requirement
定义可靠性比
,R(G) 是基于 MSL 调度结果计算的工作流的可靠性,由 MSL 算法可知,若能生成调度解,则 R(G) >= R req,所以 βr<= 1当任务 T
o(i)的执行频率重新调整时,其所要求的可靠性为:
scaling down processor frequency
由调整的可靠性需求式子,可以得到任务的最大可执行时间:
$w^{‘}{o(i),k} = w{o(i),k}/f_{o(i)}$
再根据任务的可执行区间 Δ
j,k,可以得到调整任务频率的方法:f
o(i)就是降低后的频率。