- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 17 章平行策略 效能改善的兩個基本技術 平行策略 和管線技術 平行電腦 多個硬體複本 可以同時運作 遍及電腦結構的各種階層內部 結構師會盡量把平行的基本技術運用在系統上,發展出完全由平行策略所控制的電腦結構,稱為平行電腦 。 平行特性 微觀 vs 巨觀 平行策略是如此地普遍,幾乎所有的電腦系統都具有某些型式的平行硬體,我們常使用微觀平行來描述:那些確實具備平行能力,但隱藏不易看見的結構。 微觀平行範例 ALU 執行整數算術 比如:32位元的互斥或閘運算 暫存器 通用暫存器可處理多重位元 實體記憶體 比如:64位元的字組記憶體系統 平行匯流排結構 典型32位元或64位元寬的匯流排 巨觀平行範例 多重相同處理器: 比如:雙處理器的PC 兩個平行CPU效能依賴作業系統 作業系統負責程式碼的最佳化控制 多重相異處理器: 特殊的協同處理器 比如,高速影像電腦可以連接四個顯示器,一個顯示器使用一個特殊的影像處理器,來進行控制。 對稱 vs 非對稱 對稱平行 多個相同元件同時存在的系統 比如,雙處理器PC 非對稱平行 多個同時運作、但功能各不相同的元件 比如,影像協同處理器和數學協同處理器都是非對稱平行。 細紋 vs 粗紋 細紋平行 以個別的指令或資料為單位 比如,影像處理器使用16個平行硬體單元,來更新16個位元組。 粗紋平行 以程式或大型區塊資料為單位 比如,雙處理器PC使用一個處理器來列印文件,另一個可能正在編輯電子郵件訊息。 顯性 vs 隱性 隱性平行 硬體會自動地處理平行策略,毋需任何程式設計師動手來啟始或控制。 顯性平行 需要程式設計師來控制每一個平行單元的執行動作,稱為顯性平行。 平行結構 系統最主要的特性就在於平行結構。 平行處理器數量應該達一定的規模 比如:具有32個或64000個處理器的電腦。 把二個處理器加入PC,雖然也是平行策略,但習慣上稱為雙處理器電腦。 加入四個處理器的PC,被稱為四處理器電腦。 平行結構分類(Flynn分類法) SISD(單一指令單一資料流) SISD描述無法支援巨集平行的結構 沒有平行的結構 又稱為順序結構、或單一處理器結構 傳統的范紐曼結構就是SISD SISD最重要的特徵: 順序執行指令,一次只執行一個指令,每個指令只能處理單一資料項目。 SIMD(單一指令多重資料流) SIMD每一個指令雖然只能指定單一運算動作(比如:整數加法),但可以要求多個資料項目同時動作。 SIMD電腦必須具有充足的硬體,才有能力同時處理多筆資料 。 向量處理器 SIMD結構對某些數值需要相同的運算,有很好的工作效率。 SIMD結構又稱為向量處理器或陣列處理器。 SIMD結構常用於某些科學應用程式,處理向量數學、陣列計算或一組數值的浮點運算。 傳統電腦的正規化 向量電腦的正規化 如果陣列大小沒有超過平行硬體的大小,則底層硬體可以同時執行陣列上所有數值的算術運算。 如下: V ← V×Q; 如果陣列大小超過平行硬體的容量,就需要多個步驟才能完成運算動作。 影像處理器 典型的影像硬體使用順序位元組,來儲存螢幕每一個像素的數值。 如果想要移動一個正方形視窗,則軟體必須拷貝某個區域位置的等效視窗位元組到另一個位置,一次一個位置,慢慢移動整個視窗。 在SIMD結構中,程式設計師可以發佈一個複製命令,讓SIMD底層硬體會平行複製多重位元組,效率更快。 MIMD(多重指令多重資料流) 描述平行結構內的每一個處理器,可以在相同的時間,各自獨立地執行計算。 MIMD電腦允許程式設計師控制處理器,讓處理器各自執行獨立程式。 SMP(對稱多重處理器) 最知名的MIMD就是SMP電腦結構。 典型的SMP設計具有N個相同的處理器,具有相同的指令集、時脈速率、記憶體、以及外部設備,但可以各自執行程式。 比如: Carnegie Mellon大學的C.mmp原型機 Sequent公司(現為IBM所有)建立的SMP Encore公司的Multimax SMP SMP架構圖 AMP(非對稱多重處理器) 另一種替代SMP設計的方法稱為AMP AMP包含N個處理器,可在同一時間運作,但是不一定採用相同處理器。 AMP設計常用於特定的任務 比如,使用處理器來管理磁碟儲存設備。 使用處理器來最佳化影像的顯示任務。 AMP結構 AMP結構遵循主僕方法 主處理器:一個(或一組)處理器控制整體執行(負責最佳化整體控制) 僕處理器:引入其它的處理器,處理其它的輔助功能,像是算術計算或I/O。 AMP結構範例 數學協同處理器 快速計算浮點數的特殊晶片 浮點數計算速度遠比CPU快速 I/O處理器: I/O使用一個專用的可程式處理器 可高速處理外部I/O(不影響CPU速度) CPU會下載程式到I/O處理器 I/O處理
原创力文档


文档评论(0)