首頁>Club>
10
回覆列表
  • 1 # 使用者2341681489777

    指令——流水線和吞吐率

    解析:

    (1)吞吐率有個公式:指令條數除以流水線時間

    (2)流水線時間計算有個公式:一條指令所需時間+(指令條數-1)*時間最長的指令的一段7+(8-1)*3

    流水線:流水線是指在程式執行時多條指令重疊進行操作的一種準並行處理實現技術。各種部件同時處理是針對不同指令而言的,它們可同時為多條指令的不同部分進行工作,以提高各部件的利用率和指令的平均執行速度。概念我們說那麼多,我們現在深入去理解,光有概念都是一些比較抽象的東西,我們看圖:我們有三個步驟。

    然後我們來看一下一般情況下我們的指令是一條一條的來處理,第一條指令處理完,再處理第二條,再處理第三條,這種順序來處理機器裡邊的裝置的利用情況是怎樣的呢?我們來看這圖:

    若我們每個指令的執行時間是1ms,

    那麼三條指令執行完需要9ms的時間,我們還可以看得出來的是:取值這個裝置只有在1ms,4ms,7ms的時候工作,第一條指令只有三分之一的時間進行工作,別的時間就空閒了,對於這樣子中間就產生了很多裝置的空閒。所以我們引入了流水線。用流水線所用的時間:

    取值裝置只要完成第一條指令的取值,就立即進入第二條指令的取值,第二條指令完成之後,就馬上執行第三條;分析這個操作也是一樣,我們看的出來,在5ms的時間就完成了。當然我們也能觀察的出,單個指令的執行時間都是3ms。所以流水線對單條指令的執行是無效的。流水線除了指令流水線,還有一種就是運算操作流水線,運算操作流水線就是計算機在執行各種運算操作時也可以應用流水線來提高運算速度,這是操作都是分階段執行的,所以我們用流水線來提高運算速度。---------------------

  • 中秋節和大豐收的關聯?
  • 有什麼好聽的嗨曲給介紹幾個?