聯繫我們

課程簡介

GPU 運算與 CUDA 架構

  • CPU 與 GPU 架構差異
  • NVIDIA GPU 串流多處理器模型
  • CUDA 程式設計模型概述
  • 異構運算與主機-裝置範式

設定 CUDA 開發環境

  • 安裝 CUDA Toolkit 13.x
  • NVCC 編譯器與建構工作流程
  • 透過裝置查詢驗證環境
  • IDE 整合與開發工具

編寫與啟動 CUDA Kernel

  • Kernel 函式語法與限定詞
  • 啟動配置與執行
  • 向量加法與基本資料平行模式
  • CUDA 錯誤檢查巨集

CUDA 執行緒階層與執行模型

  • Grid、Block 與執行緒組織
  • 執行緒索引與全域 ID 計算
  • Warp 執行與 SIMT 模型
  • 佔用率與資源利用

GPU 記憶體架構與管理

  • 記憶體類型:全域、共用、常數、暫存器
  • 配置與釋放裝置記憶體
  • 主機到裝置及裝置到主機的傳輸
  • 透過共用記憶體進行 Block 內協作

統一記憶體與資料遷移

  • 統一記憶體模型與受控配置
  • 頁面遷移與按需分頁
  • 使用 cudaMemPrefetchAsync 進行異步預取
  • 存取模式的記憶體建議提示

使用 Nsight Systems 進行系統級分析

  • Nsight Systems 時間軸分析
  • 識別 CPU-GPU 同步點
  • 可視化 Kernel 執行與記憶體傳輸
  • 解讀系統層級的效能資料

使用 Nsight Compute 進行 Kernel 最佳化

  • Nsight Compute 互動式 Kernel 分析
  • 記憶體吞吐量與頻寬分析
  • 運算利用率與 Warp 狀態統計
  • 引導式分析與最佳化規則

並行 Stream 與異步作業

  • CUDA Stream 與預設 Stream
  • 透過重疊 Kernel 執行與資料傳輸提升效率
  • Stream 同步與 CUDA Events
  • 多 Stream 管線設計模式

錯誤處理與除錯工具

  • CUDA API 錯誤碼與恢復策略
  • Compute-sanitizer 用於記憶體存取檢查
  • cuda-gdb 用於 Kernel 除錯
  • 斷言與同步錯誤檢測

基於分析的優化工作流程

  • 迭代分析方法
  • 瓶頸識別與優先級排序
  • 效能回歸測試
  • 記錄最佳化決策

端到端加速應用程式專案

  • 設計完整的 GPU 加速解決方案
  • 在開發全程整合分析
  • 效能基準測試與報告
  • 生產環境的部署考量

最低要求

  • 具備基本的 C/C++ 編程能力,包括變數類型、迴圈、條件語句、函式及陣列操作
  • 熟悉從指令列編譯和執行程式
  • 無需先前的 GPU 或 CUDA 編程經驗

受眾

  • 尋求使用 GPU 加速 C/C++ 應用程式的軟體開發人員和工程師
  • 從純 CPU 轉向異構運算的科學研究人員與 HPC 實踐者
  • 評估生產環境 GPU 加速的技術主管
 8 小時

人數


每位參與者的報價

即將到來的課程

課程分類