流水线性能吞吐率、加速比、效率计算

吞吐率

	吞吐率:单位时间内流水线所完成指令或输出结果的数量

时间单位换算:
1秒(s)=1000毫秒(ms)
=1000000微秒微秒(μs)
=1000000000纳秒(ns)

时钟周期与时钟频率: 时 钟 周 期 = 1 C P U 时 钟 频 率 ( 主 频 ) 时钟周期=\frac{1}{CPU时钟频率(主频)} =CPU()1

1.最大吞吐率

最大吞吐率:是指流水线在达到稳定状态后所得到的吞吐率。

CPU时钟周期为△t,最大吞吐率为Tpmax:

T p m a x = 1 △ t Tpmax=\frac{1}{△t} Tpmax=t1

2.实际吞吐率

实际吞吐率:指m段流水线完成n个任务所达到的吞吐率。

CPU时钟周期为△t,m阶指令流水线,连续处理n条指令的吞吐率为Tp:

T p = n ( m + ( n − 1 ) ) ∗ △ t Tp=\frac{n}{(m+(n-1))*△t} Tp=(m+(n1))tn
  1. 执行n条指令需要 m + ( n − 1 ) m+(n-1) m+(n1)个时钟周期
  2. 一个时钟周期是 △ t △t t
  3. 执行n条指令需要的时间是 ( m + ( n − 1 ) ) ∗ △ t (m+(n-1))*△t (m+(n1))t
  4. 得出实际吞吐率Tp为: n ( m + ( n − 1 ) ) ∗ △ t \frac{n}{(m+(n-1))*△t} (m+(n1))tn

例题:

某CPU的时钟周期100ns,采用4级指令流水线,每个流水段的执行需要1个时钟周期,假设CPU执行了100条指令,在其执行过程中,没有发生任何流水线阻塞,此时流水线的实际吞吐率为?

分析:

时钟周期 △ t △t t为100ns需要单位转换,换成秒(s),因为最后得出的结果是每秒,所以 △ t = 1 ∗ 1 0 − 7 s △t=1*10^{-7}s t=1107s

T p = n ( m + ( n − 1 ) ) ∗ △ t = 100 ( 4 + ( 100 − 1 ) ) ∗ ( 1 ∗ 1 0 − 7 ) = 1 103 ∗ 1 0 9 ≈ 0.97 ∗ 1 0 7 条 指 令 / 秒 Tp=\frac{n}{(m+(n-1))*△t}=\frac{100}{(4+(100-1))*(1*10^{-7})}=\frac{1}{103}*10^9≈0.97*10^7条指令/秒 Tp=(m+(n1))tn=(4+(1001))(1107)100=10311090.97107/
提示:

有的问题给的是CPU时钟频率是多少GHz(例:CPU主频为1.03GHz),
如果这样的话只需要根据文章开头给出的公式变换成时钟周期代入计算即可即可。

C P U 时 钟 频 率 ( 主 频 ) = 1 时 钟 周 期 CPU时钟频率(主频)=\frac{1}{时钟周期} CPU()=1

加速比

加速比:m段的流水线的速度与功能的非流水线的速度之比

设每个流水线的执行需要 △ t △t t
完成n条指令在m段流水线上共需 T T T
T = m ∗ △ t + ( n − 1 ) ∗ △ t T=m*△t+(n-1)*△t T=mt+(n1)t
完成n条指令在等效的非流水线上共需 T ′ T' T
T ′ = n ∗ m ∗ △ t T'=n*m*△t T=nmt
则加速比Sp:

S p = T T ′ = n ∗ m ∗ △ t m ∗ △ t + ( n − 1 ) ∗ △ t = n ∗ m m + n − 1 Sp=\frac{T}{T'}=\frac{n*m*△t}{m*△t+(n-1)*△t}=\frac{n*m}{m+n-1} Sp=TT=mt+(n1)tnmt=m+n1nm

效率

效率:流水线中各功能段的利用率
效 率 = 流 水 线 各 段 处 于 工 作 时 间 的 时 空 区 流 水 线 中 各 段 总 的 时 空 区 = n ∗ m ∗ △ t m ( m + n − 1 ) △ t 效率=\frac{流水线各段处于工作时间的时空区}{流水线中各段总的时空区}=\frac{n*m*△t}{m(m+n-1)△t} =线线=m(m+n1)tnmt
  • 63
    点赞
  • 261
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海绵泡泡~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值