多核架构建模与运行时管理
1. 模型计算
在架构建模中,功率模型相较于其他模型更易于实现,因为其所有变量都可从性能模型中复用。具体而言:
- 时间相关项 :在α模型中已获取时间相关项,如串行时间$T_{serial}$、并行时间$T_{parallel}$、惩罚时间$T_{penalty}$和总时间$T$。
- IPC计算 :由于在计算β模型的$\eta$时使用了CPI(每指令周期数),比例因子所需的IPC(每秒指令数)可通过$1/(CPI_{base} + CPI_{mem})$计算得出。
- 最大功率获取 :通过功率病毒基准测试可离线获得最大功率$P_{W,R}$。
功率效率由性能模型和功率模型共同构成,是线程数$n$、发射宽度$W$和重排序缓冲区(ROB)大小$R$的函数。各系数易于实时获取,具体细节如下表所示:
| 系数 | 获取方式 |
| ---- | ---- |
| $T_{serial}, T_{parallel}, T_{penalty}, T$ | α模型计算 |
| IPC | $1/(CPI_{base} + CPI_{mem})$ |
| $P_{W,R}$ | 功率病毒基准测试离线获取 |
2. 运行时管理
为提升多核架构的功率效率,可采用运行时管理策略,利用纵向扩展(scale - up)和横向扩展(scale - out)两种方式。通用的异构多核运行时管理可分为以下三个步骤:
1. 预测性能加速和功率效率