首页 > 试题广场 >

某指令流水线由5段组成,各段所需要的时间依次如下: t、3t

[单选题]
某指令流水线由5段组成,各段所需要的时间依次如下: t、3t、t、2t、t , 如果连续执行10条指令,则吞吐率为()
  • 0.1428/t
  • 0.2041/t
  • 0.2857/t
  • 0.3333/t
推荐
如下图所示,从第二条指令开始,每隔3t就能完成一条指令
0 000 0 00 0
   0     000  0 00 0
     0           000  0 00 0
所以总时间为(1+3+1+2+1)t + (10-1)*3t
吞吐率为10/(35t) = 0.2857/t
选c
编辑于 2015-07-11 09:27:16 回复(5)

第一条指令 -( ---)-(--)-

第二条指令      -(---)-(--)-

第三条指令                          -(---)-(--)-

因为 是流水线,所以时间为3t的指令不能重叠,所以每隔3t时间开始一条指令,当第一条指令花费8t时间后,每隔3t完成一条指令,第10条指令完成的时间是:8+3*9=35t.

吞吐率为:10条指令/花费时间35t=10/35

弄懂两个概念就好做了:流水线时间和吞吐率 流水线时间计算有个公式:一条指令所需时间+(指令条数-1)*时间最长的指令的一段 // 8t+9*3t=35t 吞吐率也有个公式:指令条数除以流水线时间 // 10/35t

发表于 2016-02-09 10:30:23 回复(1)
看图吧
发表于 2015-09-10 11:04:43 回复(2)
流水线的总耗时算法,若各段耗时分别为t1,t2,t3....tn,则执行n条指令总耗时t=max{t1,t2,...,tn}*(n-1)+一条指令执行完的总时间,此题则是
T=3t*(10-1)+(t+3t+t+2t+t)=35t,吞吐率=指令条数/总耗时=10/(35t)
编辑于 2016-06-20 10:21:19 回复(0)
发表于 2016-08-28 09:46:18 回复(0)
由于是流水线,所以执行各条指令的每个段是不能重叠的,所有第二条指令要从3t时刻开始执行,
依次类推,
 总时间为:3*9 + 8 = 35t
吞吐量为:10/35t = 0.2857/t
发表于 2016-06-16 17:28:34 回复(0)
一条指令所需时间+(指令条数-1)*时间最长的指令的一段 
发表于 2018-03-13 15:44:25 回复(0)
因为第二段耗时3t是限速步骤,一点都不休息跑完10条指令就耗时30t。最后一条指令接下去还需要(1+2+1)t跑完,此外必须第一条指令跑了1t后第二条指令才能开始跑,所以总共是35t。
一共执行了10条指令,所以吞吐率是10/35就是C
发表于 2015-09-02 04:05:34 回复(1)
吞吐率 :单位时间处理的指令数。 流水线时间计算有个公式:一条指令所需时间+(指令条数-1)*时间最长的指令的一段
编辑于 2019-10-04 23:04:19 回复(0)
吞吐率为10/(35t) = 0.2857/t
编辑于 2019-07-25 20:47:20 回复(0)
8 + 9*3 = 35   ; 10/35
发表于 2018-03-10 15:57:24 回复(0)
都在介绍概念,但是没人说为什么根据3t而不是t或者2t。因为只有3t的指令是可以连续执行的,其他指令执行时间是有间隔的
发表于 2017-05-13 10:08:19 回复(0)
要注意复习吞吐率的定义。注意理解 。
发表于 2016-06-03 19:10:41 回复(0)
找到一个解答:http://zhidao.baidu.com/question/94499734.html?qbl=relate_question_1&word=%C4%B3%D6%B8%C1%EE%C1%F7%CB%AE%CF%DF%D3%C95%B6%CE%D7%E9%B3%C9%2C%B8%F7%B6%CE%CB%F9%D0%E8%D2%AA%B5%C4%CA%B1%BC%E4%D2%C0%B4%CE%C8%E7%CF%C2:%20t%2C3t%2Ct%2C2t%2Ct%20%2C%20%C8%E7%B9%FB%C1%AC%D0%F8%D6%B4
发表于 2015-08-19 22:59:46 回复(0)
C
发表于 2015-03-28 20:00:15 回复(0)
D
发表于 2015-01-09 11:40:41 回复(0)