通用圖形處理器設計——GPGPU編程模型與架構原理( 簡體 字) | |
作者:景乃鋒、柯晶、梁曉峣 | 類別:1. -> 教材 -> 數位影像處理 |
出版社:清華大學出版社 | 3dWoo書號: 55847 詢問書籍請說出此書號! 有庫存 NT售價: 445 元 |
出版日:5/1/2022 | |
頁數:224 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302604648 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章GPGPU概述
1.1GPGPU與并行計算機 1.1.1并行體系結構 1.1.2GPU與CPU體系結構對比 1.2GPGPU發展概述 1.2.1GPU 1.2.2從GPU到GPGPU 1.3現代GPGPU產品 1.3.1NVIDIAGPGPU 1.3.2AMDGPGPU 1.3.3IntelGPGPU 1.3.4其他GPU 參考文獻 第2章GPGPU編程模型 2.1計算模型 2.1.1數據并行和線程 2.1.2主機設備端和內核函數 2.2線程模型 2.2.1線程組織與數據索引 2.2.2線程分配與執行 2.2.3線程模型小結 2.3存儲模型 2.3.1多樣的存儲器類型 2.3.2存儲資源與線程并行度 2.4線程同步與通信模型 2.4.1同步機制 2.4.2協作組 2.4.3流與事件 2.4.4原子操作 2.5CUDA指令集概述 2.5.1中間指令PTX 2.5.2機器指令SASS 參考文獻 第3章GPGPU控制核心架構 3.1GPGPU架構概述 3.1.1CPUGPGPU異構計算系統 3.1.2GPGPU架構 3.1.3擴展討論:架構特點和局限性 3.2GPGPU指令流水線 3.2.1前段:取指與譯碼 3.2.2中段:調度與發射 3.2.3后段:執行與寫回 3.2.4擴展討論:線程束指令流水線 3.3線程分支 3.3.1謂詞寄存器 3.3.2SIMT堆棧 3.3.3分支屏障 3.3.4擴展討論:更高效的線程分支執行 3.4線程束調度 3.4.1線程束并行、調度與發射 3.4.2基本的調度策略 3.4.3擴展討論:線程束調度策略優化 3.5記分牌 3.5.1數據相關性 3.5.2GPGPU中的記分牌 3.5.3擴展討論:記分牌設計優化 3.6線程塊分配與調度 3.6.1線程塊并行、分配與調度 3.6.2基本的線程塊分配與調度策略 3.6.3擴展討論:線程塊分配與調度策略優化 參考文獻 第4章GPGPU存儲架構 4.1GPGPU存儲系統概述 4.1.1CPU的層次化存儲 4.1.2GPGPU的存儲層次 4.2寄存器文件 4.2.1并行多板塊結構 4.2.2板塊沖突和操作數收集器 4.2.3操作數并行訪問時的相關性冒險 4.2.4擴展討論:寄存器文件的優化設計 4.3可編程多處理器內的存儲系統 4.3.1數據通路概述 4.3.2共享存儲器訪問 4.3.3L1高速緩存訪問 4.3.4紋理緩存 4.3.5擴展討論:片上存儲系統的優化設計 4.4可編程多處理器外的存儲系統 4.4.1存儲分區單元 4.4.2L2緩存 4.4.3幀緩存單元 4.4.4全局存儲器 4.5存儲架構的優化設計 4.5.1片上存儲資源融合 4.5.2技術對比與小結 參考文獻 第5章GPGPU運算單元架構 5.1數值的表示 5.1.1整型數據 5.1.2浮點數據 5.1.3擴展討論:多樣的浮點數據表示 5.2GPGPU的運算單元 5.2.1整型運算單元 5.2.2浮點運算單元 5.2.3特殊功能單元 5.2.4張量核心單元 5.3GPGPU的運算單元架構 5.3.1運算單元的組織和峰值算力 5.3.2實際的指令吞吐率 5.3.3擴展討論:脈動陣列結構 參考文獻 第6章GPGPU張量核心架構 6.1深度神經網絡的計算 6.1.1深度神經網絡的計算特征 6.1.2卷積運算方式 6.2張量核心架構 6.2.1張量核心架構特征概述 6.2.2Volta架構中的張量核心 6.2.3張量核心的發展 6.2.4擴展討論:張量核心對稀疏的支持 6.3神經網絡計算的軟件支持 6.4深度學習評價基準——MLPerf 參考文獻 第7章總結與展望 7.1本書內容總結 7.2GPGPU發展展望 本書是一本通用GPU芯片為基礎實現芯片設計的專業書籍。介紹了GPU的基礎理論,GPGPU的軟硬件架構,相關工具以及優化技術。以通用GPGPU芯片為基礎平臺進行展開,重點深入了芯片的架構設計原理,架構設計理念和程序優化技術,同時以結合AI應用展現性能優勢和特有價值。通過本書,使讀者能系統了解體系結構理論,促進GPGPU芯片架構設計的興趣與學習,不斷了解GPGPU芯片技術的新發展,新技術。本書是國內首部關于GPGPU芯片架構設計系統性介紹的教材,兼顧理論基礎及實現應用,廣采而精取,層層揭開GPGPU芯片原理。本書可作為高等院校、科研機構等相關單位從事理論教學或者計算機學科進行科學研究的科學家、工程師的參考書籍,也可作為高年級本科生和研究生的學習參考書籍。
隨著人工智能的飛速發展,現代信息社會中數據就是生產要素,算力就是生產力。如何構筑未來大算力的基礎設施,滿足人們對通用大算力無止境的追求,成為促進人工智能和信息產業持續健康發展的重要因素。
在當前眾多算力芯片的不同形態中,源于圖形處理器的通用圖形處理器(General Purpose Graphics Processing Unit,GPGPU)脫穎而出,在眾多行業和多個領域中得到了充分的驗證,廣泛賦能圖形/游戲、高性能計算、人工智能、數字貨幣及多種行業應用的大數據處理。得益于其大算力和高度可編程特性,GPGPU作為一種通用加速器已經成為未來算力建設的基礎性器件。正值本書撰稿之時,在人工智能、算力基建和中美博弈等多種因素的推動下,國內GPGPU行業發展和創業熱潮也正呈現出前所未有的熱度。 然而,相比于利用GPGPU進行應用開發在國內的普及程度,GPGPU的體系結構和芯片設計等核心關鍵技術仍然壟斷在國外少數芯片廠商手中,我們與國外相比仍然存在較大差距。這依然是我國高端通用處理器芯片產業發展必須突破的短板。 遺憾的是,截至目前,國內還沒有一本合適的教材能夠幫助體系結構設計人員、芯片設計人員及GPGPU編程人員深入理解GPGPU體系結構的內涵和硬件設計的奧秘。即便在國際范圍內,相關的專業書籍也并不多見。而且,GPGPU的歷史并不長。人們對GPGPU的了解并沒有像通用處理器CPU那樣深入,也沒有達到深度學習專用加速器近年來高漲的熱度。這導致無論GPGPU的產業發展還是學術研究都面臨著較高的門檻。 不積跬步,無以至千里。我們嘗試著去填補這個空白,邁出深入GPGPU體系結構的一小步。本書并不是一本GPGPU應用開發指南,也不是一本GPGPU編程語法手冊,更不是特有產品的推廣或是復雜芯片的工程實現,因為在這些方面已經有了大量很好的教材和參考書可以提供豐富翔實的案例與完整準確的說明。 我們希望的是讓讀者以架構的視角,去理解GPGPU體系結構的特點,去思考GPGPU芯片設計的方式。我們更希望通過本書能夠啟發更多的讀者去理解芯片設計的特點,思索計算的本質,進而能夠把握未來高性能通用計算架構的發展方向。我們也希望通過本書與國內同行一起探討和分享GPGPU架構和芯片設計的研究成果,推動我國高端通用處理器芯片和人工智能產業的進一步發展。 本書共分為7章,內容涵蓋GPGPU概述、編程模型、控制核心架構、存儲架構、運算單元架構、張量核心架構及總結與展望。其中,第1章GPGPU概述,著重介紹GPGPU與CPU體系結構上的差異和現代GPGPU產品的特點。第2章GPGPU編程模型,介紹GPGPU編程模型的核心概念,勾勒出GPGPU異構計算的設計要點。第3章GPGPU控制核心架構,對GPGPU指令流水線和關鍵控制部件的原理進行分析和介紹,并深入探討GPGPU架構的瓶頸問題和優化方法。第4章GPGPU存儲架構,對GPGPU多樣的層次化存儲器進行介紹,重點探討片上存儲器的設計和優化方法。第5章GPGPU運算單元架構,介紹數值表示和通用運算核心的設計。第6章GPGPU張量核心架構,對專門為人工智能加速而設計的張量核心架構展開分析與介紹,揭示GPGPU對深度學習進行硬件加速的基本原理。在上述架構原理、設計方法的探討中,本書還著重介紹國際前沿的研究成果,力圖解釋設計背后的挑戰,促使讀者更深入地思考GPGPU架構設計的核心要素問題。第7章總結與展望,對全書內容進行總結,并對GPGPU發展進行展望。 這本書的出版,凝聚了許多老師、同學和業界同行的努力和心血。 感謝上海交通大學的博士研究生李興、劉學淵、王旭航及碩士研究生官惠澤、王雅潔、王玨在本書資料搜集、整理工作中做出的巨大貢獻。 感謝上海交通大學的領導和同事在本書寫作過程中給予的支持。 感謝壁仞科技董事長張文在本書寫作過程中提供的支持,也特別感謝壁仞科技王海川、陳龍、唐衫博士等對本書內容的建議和補充。 感謝清華大學出版社盛東亮和崔彤等在本書的編校工作中所做出的貢獻。 雖然我們在本書編撰過程中精益求精,但由于時間倉促和編者水平有限,書中難免有疏漏和不足之處,懇請讀者批評指正! 編者 2022年3月 |