幫助中心 | 我的帳號 | 關於我們

工程數值模擬中矩陣GPU並行計算基礎

  • 作者:周清龍|責編:劉輝
  • 出版社:中南大學
  • ISBN:9787548765820
  • 出版日期:2025/12/01
  • 裝幀:平裝
  • 頁數:183
人民幣:RMB 88 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書系統闡述了在工程數值模擬中如何利用GPU並行計算加速大規模矩陣計算的核心原理與技術。本書第1?3章主要內容為GPU並行計算的環境搭建和基礎架構,系統介紹了CPU/GPU架構差異和CUDA編程模型、GPU環境配置及Python介面PyCUDA的搭建,幫助讀者快速入門。第4?5章深入解析核函數設計、線程組織與管理(網格、線程塊、線程束),以及GPU多層次存儲體系(全局內存、常量內存、紋理內存、共享內存等)的訪問機制與優化策略。第6?8章介紹了具體的矩陣計算GPU編程實踐,涵蓋矩陣基本運算(加、乘、轉置等)的CPU(C++/Python)與GPU實現方法(CUDA核函數/cuBLAS庫),介紹了大型稀疏矩陣的壓縮存儲格式(COO/CSR/EL等)原理與編程實現。第9?11章介紹了矩陣計算的高階應用與求解GPU編程方法和應用,系統講解了矩陣分解(LU/Cholesky/QR/SVD)理論,以及基於cuSolver庫實現稠密/稀疏線性方程組的GPU並行求解方法,基於迭代法(CG法/PCG法)的GPU演算法設計與優化技術。
    本書旨在幫助讀者掌握利用GPU並行計算技術加速工程計算的核心方法,為處理現代大規模複雜工程問題提供強有力的工具。本書面向從事工程數值模擬(如土木工程、結構工程、礦業工程、機械工程、航空航天工程、環境工程等)的研究人員、工程師、高年級本科生和研究生。讀者需具備矩陣運算、線性代數和程序設計(C/C++或Python)基礎。

作者介紹
周清龍|責編:劉輝

目錄
第1章  引論
  1.1  工程數值模擬中矩陣計算的廣泛性
  1.2  工程計算中矩陣計算的應用場景
  1.3  常見工程數值模擬方法中的矩陣計算
    1.3.1  有限差分法中的矩陣計算
    1.3.2  有限元法中的矩陣計算
    1.3.3  邊界元法中的矩陣計算
  1.4  現代大規模工程數值模擬對高性能矩陣計算的要求
  1.5  矩陣並行計算髮展現狀
  1.6  本書的主要內容
第2章  CPU與GPU架構組成及工作原理
  2.1  CPU架構和工作原理
  2.2  GPU的架構
  2.3  GPU並行編程軟體實現邏輯
  2.4  基於多CPU的並行計算
    2.4.1  多核並行計算原理
    2.4.2  實現方法
  2.5  基於CPU與GPU並行計算的區別
  2.6  CPU+GPU並行計算編程框架平台
第3章  GPU編程環境搭建
  3.1  CUDA Toolkit組成
  3.2  CUDA Toolkit安裝與配置
    3.2.1  安裝前準備
    3.2.2  下載和安裝CUDA Toolkit
    3.2.3  安裝驗證
  3.3  創建CUDA新項目
  3.4  已有項目配置CUDA環境
  3.5  為GPU編程搭建Python環境
    3.5.1  為什麼要用Python語言
    3.5.2  什麼是PyCUDA
    3.5.3  安裝PyCUDA
第4章  核函數、線程與線程管理
  4.1  核函數執行配置
  4.2  線程坐標與管理
  4.3  線程配置形式及程序示例
第5章  GPU存儲體系層次結構
  5.1  全局內存(global memory)
    5.1.1  全局內存定義與特點
    5.1.2  全局內存的優化策略
  5.2  常量內存(constant memory)
    5.2.1  常量內存定義與特點
    5.2.2  常量內存應用示例
  5.3  紋理內存(texture memory)
    5.3.1  紋理內存定義與特點
    5.3.2  紋理內存應用示例
  5.4  共享內存(shared memory)
    5.4.1  共享內存定義與特點
    5.4.2  共享內存使用注意事項
    5.4.3  共享內存訪存測試
    5.4.4  共享內存應用示例

  5.5  寄存器(register)
    5.5.1  寄存器定義與特點
    5.5.2  寄存器應用示例
    5.5.3  寄存器的優化策略
  5.6  局部內存(local memory)
    5.6.1  局部內存定義與特性
    5.6.2  局部內存應用示例
第6章  矩陣計算相關基礎知識與編程基礎
  6.1  矩陣基本記號
    6.1.1  矩陣記號
    6.1.2  向量記號
    6.1.3  矩陣的行劃分和列劃分
    6.1.4  矩陣方程記號
  6.2  矩陣基本計算理論基礎
    6.2.1  向量基本運算
    6.2.2  矩陣基本運算
  6.3  基於CPU的矩陣基本計算編程方法(C++語言)
    6.3.1  向量加法與點積編程方法
    6.3.2  矩陣與向量相乘編程方法
    6.3.3  矩陣與矩陣相乘編程方法
  6.4  基於CPU的矩陣計算編程方法(Python語言)
    6.4.1  矩陣的創建
    6.4.2  矩陣的基本運算
    6.4.3  矩陣的線性運算
    6.4.4  矩陣方程求解
第7章  矩陣基本運算GPU編程基礎
  7.1  GPU編程基礎知識
    7.1.1  獲取設備信息
    7.1.2  分配內存
    7.1.3  數據傳輸
    7.1.4  調用核函數
    7.1.5  同步與錯誤處理
    7.1.6  釋放資源
  7.2  向量加法GPU編程實踐
  7.3  矩陣加法GPU編程實踐
  7.4  矩陣與向量乘法GPU編程實踐
  7.5  矩陣乘法GPU編程實踐
  7.6  矩陣轉置GPU編程實踐
  7.7  基於第三方庫(cuBLAS庫)的矩陣GPU並行計算
    7.7.1  Level 1 cuBLAS函數
    7.7.2  Level 2 cuBLAS函數
    7.7.3  Level 3 cuBLAS函數
  7.8  基於PyCUDA的矩陣並行計算
第8章  大型稀疏矩陣壓縮存儲原理和編程基礎
  8.1  大型稀疏矩陣的電腦存儲格式
    8.1.1  ELL存儲格式
    8.1.2  COO存儲格式
    8.1.3  CSR與CSC存儲格式
    8.1.4  DIA存儲格式
    8.1.5  HYB存儲格式

    8.1.6  BSR存儲格式
    8.1.7  DOK存儲格式
    8.1.8  LIL存儲格式
  8.2  稀疏矩陣存儲格式編程基礎
    8.2.1  ELL存儲格式程序示例
    8.2.2  COO存儲格式程序示例
    8.2.3  CSR存儲格式程序示例
    8.2.4  CSC存儲格式程序示例
    8.2.5  DIA存儲格式程序示例
    8.2.6  HYB存儲格式程序示例
    8.2.7  BSR存儲格式程序示例
    8.2.8  DOK存儲格式程序示例
    8.2.9  LIL存儲格式程序示例
  8.3  存儲格式轉換
第9章  矩陣分解與矩陣方程求解
  9.1  直接求解法與矩陣變換
  9.2  LU分解
  9.3  Cholesky分解
  9.4  QR分解
  9.5  SVD分解
第10章  基於矩陣分解的線性方程組求解GPU編程
  10.1  cuSolver庫介紹
    10.1.1  什麼是cuSolver庫
    10.1.2  cuSolver庫的使用方法
  10.2  基於cuSolver庫的方程組GPU求解
  10.3  基於skcuda的方程組GPU求解
    10.3.1  什麼是skcuda
    10.3.2  skcuda的安裝與使用
    10.3.3  使用skcuda庫解矩陣方程
第11章  稀疏矩陣GPU並行迭代法求解技術
  11.1  方程組等價的變分問題
  11.2  最速下降法
  11.3  共軛梯度法
    11.3.1  一般共軛梯度法(CG法)
    11.3.2  預條件共軛梯度法(PCG法)
  11.4  基於共軛梯度法的GPU編程演算法設計
  11.5  數值實驗
    11.5.1  數值實驗平台及模型
    11.5.2  數值實驗與結果分析
參考文獻

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032