流水线
最大吞吐率计算 #card
- 每一级的执行时间分别是:取指令 2Δt、分析指令 1Δt、取操作数 3Δt、运算 1Δt、写回结果 2Δt
流水线周期 取决于耗时最长的一级,即取操作数(3Δt)。
最大吞吐率 = 1 / 流水线周期 = 1 / 3Δt
加速比计算 #card
不使用流水线的执行时间(顺序执行10条指令):
- 每条指令耗时 = 2Δt + 1Δt + 3Δt + 1Δt + 2Δt = 9Δt
总时间 = 10 × 9Δt = 90Δt
使用流水线的执行时间(n条指令公式):
- T = 第一条指令的总时间 + (n - 1) × 流水线周期
= 9Δt + (10 - 1) × 3Δt
= 9Δt + 27Δt
= 36Δt
- 加速比 = 90Δt / 36Δt = 5 : 2