Exploring the impact of pipeline on energy consumption

Exploring the impact of pipeline on energy consumption

Summary


Analysis: Single Module


Background

引入k级pipeline以后(使用k-1个Reg.):

Some Symbol

Symbol Description Notes
$P_{M,Static}$ M的静态功率
$W_{M,Dynamic}$ M的动态功耗 完成一次运算消耗的能量,暂不考虑随着频率变化而改变
$T_{M}$ M的时延
$P_{R,Static}$ Reg.的静态功率 引入一级Pipeline所需的Reg
$W_{R,Dynamic}$ Reg.的动态功耗 完成一次运算消耗的能量,暂不考虑随着频率变化而改变
$T_{R}$ Reg.的时延
$PPW$ 能耗比(Performance Per Watt) 完成一次运算所需能量


时延

$
T_{k} = \frac{T_{M}}{k} +T_{R}
$


静态功率

$ \begin{aligned} P_{k,Static} & = (k-1) \cdot P_{R,Static} + P_{M1,Static} + P_{M2,Static} +... + P_{Mk,Static} \\\\ & = (k-1) \cdot P_{R,Static} + P_{M,Static} \end{aligned} $

动态功率

$ \begin{aligned} W_{k,Dynamic} & = (k-1) \cdot W_{R,Dynamic} + W_{M1,Dynamic} + W_{M2,Dynamic} +... + W_{Mk,Dynamic} \\\\ & = (k-1) \cdot W_{R,Dynamic} + W_{M,Dynamic} \end{aligned} $

能耗比

$ \begin{aligned} PPW &= \frac{1}{P_{k,Static} \cdot T_{k} + W_{k,Dynamic} } \\\\ & = \frac{1}{[(k-1) \cdot P_{R,Static} + P_{M,Static}]\cdot(\frac{T_{M}}{k} +T_{R})+ (k-1) \cdot W_{R,Dynamic} + W_{M,Dynamic}} \\\\ & = \frac{1}{k \cdot (P_{R,Static}T_{R}+W_{R,Dynamic}) + \frac{1}{k} \cdot (P_{M,Static}T_{M}-P_{R,Static}T_{M}) - P_{R,Static}T_{R} +P_{R,Static}T_{M} +P_{M,Static}T_{R} - W_{R,Dynamic} + W_{M,Dynamic}} \\\\ & \le \frac{1}{ 2\sqrt{(P_{R,Static}T_{R}+W_{R,Dynamic}) \cdot (P_{M,Static}T_{M}-P_{R,Static}T_{M})} - P_{R,Static}T_{R} +P_{R,Static}T_{M} +P_{M,Static}T_{R} - W_{R,Dynamic} + W_{M,Dynamic}} \\\\ & when \ and \ only \ when \ \ k= \sqrt{\frac{P_{M,Static}T_{M}-P_{R,Static}T_{M}}{P_{R,Static}T_{R}+W_{R,Dynamic}}} , \ we \ have \ PPW_{max} \end{aligned} $

Analysis: Multi-States Module

Some Symbol

Symbol Description Notes
$P_{C_{mn},Static}$ $C_{mn}$的静态功率
$W_{C_{mn},Dynamic}$ $C_{mn}$的动态功耗 单个Cell完成一次运算消耗的能量,暂不考虑随着频率变化而改变
$T_{C_{mn}}$ $C_{mn}$的时延
$P_{R,Static}$ Reg.的静态功率 引入一级Pipeline所需的Reg
$W_{R,Dynamic}$ Reg.的动态功耗 完成一次运算消耗的能量,暂不考虑随着频率变化而改变
$T_{R}$ Reg.的时延
$PPW$ 整个模块的能耗比(Performance Per Watt) 整个模块的完成一次运算所需能量

时延

整个网络共享最大时延
$
T_{k} = \frac{T_{M}}{k} +T_{R}
$


静态功率

$ \begin{aligned} P_{k,Static} & = (k-1) \cdot P_{R,Static} + P_{M1,Static} + P_{M2,Static} +... + P_{Mk,Static} \\\\ & = (k-1) \cdot P_{R,Static} + P_{M,Static} \end{aligned} $

动态功率

$ \begin{aligned} W_{k,Dynamic} & = (k-1) \cdot W_{R,Dynamic} + W_{M1,Dynamic} + W_{M2,Dynamic} +... + W_{Mk,Dynamic} \\\\ & = (k-1) \cdot W_{R,Dynamic} + W_{M,Dynamic} \end{aligned} $

能耗比

$
\begin{aligned}
PPW &= \frac{1}{\sum_{m=1}^{M} \sum_{n=1}^{N} (P_{m,n,k,Static} \cdot T_{m,n,k} + W_{m,n,k,Dynamic}) }
\end{aligned}
$


Outcome

To be continue..

Junzhuo Zhou

HaoYu lab, SUSTech