吞吐率有关问题
吞吐率问题
某指令流水线由5段组成,各段所需要的时间如下图所示。
——> Δt ——>3Δt——>Δt——> 2Δt——>Δ t——>
连续输入10条指令时的吞吐率为( )。
A.10/70Δt
B.10/49Δt
C.10/35Δt
D.10/30Δt
分析:
要解此题,必须首先了解吞吐率的概念。教程上的解释是:吞吐率是指单位时间里流水线处理机流出的结果数。对指令而言,就是单位时间里执行的指令数。如果流水线的子过程所用的时间不一样,则吞吐率p应为最长子过程的倒数,即:
p=1/max{Δt1,Δt2,……,Δtm}
本题说问的是连续输入10条指令时的吞吐率为多少?用如下图示解答此问题。
第一条指令:-( ---)-(--)-
第二条指令: -( ---)-(--)-
第三条指令: -( ---)-(--)-
因为是流水线,所以时间为3Δt的指令不能重叠,所以每隔3Δt时间开始一条指令,当第一条指令花费8Δt时间后,每隔3Δt完成一条指令,则第10条指令完成的时间是:8Δt+3Δt×9=35Δt。
流水线时间计算公式:一条指令所需时间+(指令条数-1)×时间最长的指令的一段。即8Δt+3Δt×9=35Δt。
吞吐率:指令条数除以流水线时间。即35Δt。
- 8楼u010121883昨天 22:05
- 很详细的讲解!
- 7楼successA昨天 21:49
- 飞虎威武。
- 6楼xdd19910505昨天 21:30
- 点点滴滴的积累
- 5楼zhangzijiejiayou昨天 20:59
- 飞虎,大赞。。。
- 4楼u010540106昨天 20:58
- 我们往往就是忽略了原理,表面上貌似是学习算法,实际上是原理!
- 3楼u010375663昨天 20:41
- 软考题中的详细讲解!以后可以不用再书上看答案了!
- 2楼u010539352昨天 19:20
- 多多总结啊飞虎。
- 1楼u010073895昨天 19:15
- 多多总结啊飞虎。