軟考一個流水線的典型例題

某指令流水線由5段組成,各段所需要的時間如下圖所示。

--> t --> 3t --> t --> 2t --> t -->

連續輸入10條指令時的吞吐率爲( )。

A.10/70t B.10/49t C.10/35t D.10/30t

 

解答:

第一條指令 -( ---)-(--)-

第二條指令      -(---)-(--)-

第三條指令                          -(---)-(--)-

因爲 是流水線,所以時間爲3t的指令不能重疊,所以每隔3t時間開始一條指令,當第一條指令花費8t時間後,每隔3t完成一條指令,第10條指令完成的時間是:8+3*9=35t.

吞吐率爲:10條指令/花費時間35t=10/35

 

弄懂兩個概念就好做了:流水線時間和吞吐率
流水線時間計算有個公式:一條指令所需時間+(指令條數-1)*時間最長的指令的一段 // 8t+9*3t=35t
吞吐率也有個公式:指令條數除以流水線時間 // 10/35t

 

 

發佈了51 篇原創文章 · 獲贊 10 · 訪問量 42萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章