Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 第 18 章 管線技術 2 管線觀念 最佳化效能的技術之一 管線:經過一序列台階程序的資訊結構 管線並沒有侷限在硬體結構: – 管線觀念是一種基本觀念 – 適用於各種不同的層面 – 視野寬廣.

Similar presentations


Presentation on theme: "1 第 18 章 管線技術 2 管線觀念 最佳化效能的技術之一 管線:經過一序列台階程序的資訊結構 管線並沒有侷限在硬體結構: – 管線觀念是一種基本觀念 – 適用於各種不同的層面 – 視野寬廣."— Presentation transcript:

1

2 1 第 18 章 管線技術

3 2 管線觀念 最佳化效能的技術之一 管線:經過一序列台階程序的資訊結構 管線並沒有侷限在硬體結構: – 管線觀念是一種基本觀念 – 適用於各種不同的層面 – 視野寬廣

4 3 四階管線圖

5 4 管線特性

6 5 軟硬體實現方式 管線可以使用硬體,也可以使用軟體, 來加以建構。 軟體管線 – 基於程式設計師的方便設計。 – 比如, Unix 作業系統提供一個 pipe 機制。 軟體管線和硬體管線可以彼此毫不相 干、互相獨立。

7 6 大型或小型 管線長度就是組成台階的數目 管線台階長短不一 最短的管線可以只由兩個台階所組 成,而最長的管線甚至內含數百個 台階過程。

8 7 同步或非同步串流 同步管線作業方式: – 每一個台階的處理時間都受到時鐘 控制 – 所有台階都同時遞送其資料處理結 果,轉交給下一個台階。 非同步管線: – 各個台階處理的時間可能不同 – 讓台階可在任何時間進行資訊轉送

9 8 緩衝串流或非緩衝串流 緩衝串流 – 把緩衝建構在兩個台階之間,接收資料。 – 可應用於非同步管線 – 適合資料的猝發傳輸 非緩衝串流 – 一個台階直接傳送資料給另一個台階 – 假如每個台階處理時間都一樣,則可以發 揮最佳效能。

10 9 有限區塊資料或連續位元流 有限區塊資料 – 各種不同長度的資料 – 一序列的小型資料 – 比如:網路封包 連續位元流 – 任意長度的位元流 – 比如:連續視訊資料

11 10 自動資料饋入或人工資料饋入 管線常使用各種不同的機制來移動資訊 自動資料饋入 – 建立管線機制 – 把一個台階的資訊移到另一個台階上 人工資料饋入 – 分開硬體來移動資料 – 參與指揮每個台階動作,才能移動資訊。

12 11 串列或並列路徑 串列路徑 – 一次一個位元 並列路徑 – 一次 N 個位元

13 12 同質台階或異質台階 同質台階 – 管線台階具有相同的大小和外形 異質台階 – 管線台階具有不同的大小和外形

14 13 軟體管線 軟體管線是一種相當吸引人的技術 以 Unix 命令直譯器 shell 的軟體管線為例: – 輸入程式名稱,再以 ”|” 符號分開程式 –”|” 符號意指從一個程式的輸出,連接到另一 個程式的輸入。 下列範例: cat x | sed s/friend/partner/g’ | more

15 14 軟體管線效能和額外負荷 考慮軟體管線程式: cat x | sed s/friend/partner/g’ | sed ‘/W/d’ | more – 把 friend 全部取代為 partner – 刪除內含 W 字元的行資料 – 可以把刪除的管線,移到前面一點的台 階上,來最佳化執行。

16 15 硬體管線 指令管線 資料管線

17 16 指令管線 – 描述管線如何容納機器指令的資訊 – 描述管線如何地執行這些機器指令 指令集和運算元型態在不同的處理器 之間會有所變動,並非固定。 指令管線並沒有硬性規定台階的數量, 以及台階的動作數量。

18 17 資料管線 另一種硬體管線就是資料管線。 資料管線不是用來傳輸指令,而是把 資料從一個台階傳輸到另一個台階。 比如,電腦網路封包順序地通過資料 管線。

19 18 硬體管線如何增加效能 管線可以明顯地改善效能。 管線可以改善資料傳輸量。 以資料管線為例 – 路由器可以用來轉送封包,把封包傳送 到正確的目的地。

20 19 路由器轉送封包的演算法

21 20 路由器的處理器和所執行的演算法

22 21 建構路由器的管線處理器

23 22 重要觀念 正常的情況下,資料管線所傳輸的資料 必須通過一序列的台階,每一個台階會 負責演算法的一部份動作,比如:檢視 或修改資料,想要以多個相同速度的處 理器來建構管線結構,來取代單一處理 器,並不會改善資料處理所耗費的總體 時間。

24 23 管線優點 如果管線結構和非管線結構都使用相同 速度的處理器,則管線結構會有較高的 傳輸量( throughput )(意即:每秒處 理的資料量)。

25 24 管線條件 台階必須具備獨立的處理程序。 從一個台階傳輸給另一個台階的過程, 不能造成太大的額外負荷。 盡量保持每一個台階的執行時間一致。

26 25 管線速度 假設四個台階分別耗費 50 、 100 、 200 、 150 個指令,來處理封包。 – 最慢的台階需要 200 個指令 – 最慢台階處理時間 = = 20μs

27 26 管線速度( Cont. ) 管線的總體傳輸量 Tp 為: 非管線結構的總體傳輸量 Tnp 為:

28 27 程序的觀念性分割

29 28 管線結構 整體設計都環繞在管線策略,稱為管 線結構。 大部分的管線結構常用在特殊功能的 硬體系統。 對於一般的通用電腦而言,管線結構 比較沒有關連。

30 29 管線安裝、遲滯、和清空時間 安裝時間 – 重新啟動管線所需要的時間 台階遲滯 – 無法完成處理程序所導致的延遲 清空時間 – 結束餘留在管線內部的資料 在高速硬體管線下,太高的清空(或安 裝)時間將會降低整體效能表現。

31 30 超管線結構 超管線 – 結構師把管線台階分割成更多個子台階 – 常見於指令管線 傳統的指令管線有五個台階:指令擷取、指 令解碼、運算元擷取、 ALU 運算、記憶體寫 入,超管線會進一步把每個台階,一個一個 地分割成更多的子台階。 超管線的傳輸量會高於標準管線的傳輸量。

32 31 結論 管線觀念應用廣泛,通常分成硬體管線 和軟體管線。 軟體管線會安排一組程式,讓資料串列 地通過這些程式。 即使缺乏硬體管線,還是可以使用軟體 管線; 硬體管線,如果不是指令管線(處理器 執行的機器指令),就是資料管線(資 料傳輸通過的管線)。

33 32 結論( Cont. ) 超管線技術會把台階,再進一步地分 割成多個子台階,常見於指令管線。 資料通過管線所需要的時間,並沒有 改變。 管線增加整體的資料傳輸量(每秒處 理的資料量)。


Download ppt "1 第 18 章 管線技術 2 管線觀念 最佳化效能的技術之一 管線:經過一序列台階程序的資訊結構 管線並沒有侷限在硬體結構: – 管線觀念是一種基本觀念 – 適用於各種不同的層面 – 視野寬廣."

Similar presentations


Ads by Google