NVIDIA 認證課程

CUDA C/C++ 加速運算的基本原理
Fundamentals of Accelerated Computing with CUDA C/C++

此實作坊將教導你基本工具和技術,以運用 CUDA® 來加速 C/C++ 應用程式在大規模平行 GPU 上的執行效能。你將學習如何編寫程式碼、使用 CUDA 設定平行程式碼、最佳化 CPU 和 GPU 加速器之間的記憶體移轉,以及實作在新工作上學到的工作流程,即運用加速功能完整但僅使用 CPU 的粒子模擬器,來大幅提升效能。在實作坊結束時,你將可以使用其他資源,自行創造 GPU 加速的應用程式。

學習目標

參加本實作坊可學會:

  • 編寫 GPU 加速器要執行的程式碼
  • 運用 CUDA 在 C/C++ 應用程式中提供並呈現資料與指令級平行處理
  • 運用 CUDA 管理記憶體,並使用非同步預先擷取來最佳化記憶體移轉
  • 運用命令列和視覺分析工具來指引你的作品
  • 運用並行串流進行指令級平行處理
  • 使用分析導向法編寫 GPU 加速的 CUDA C/C++ 應用程式,或重構現有僅使用 CPU 的應用程式

實作坊大綱

時程 程序項目
15 分鐘   概覽
  • 認識講師
  • 在 learn.nvidia.com/join 建立帳號
120 分鐘   運用 CUDA C/C++ 加速應用程式
   瞭解基本語法和概念,以運用 CUDA 編寫支援 GPU 的 C/C++ 應用程式:
  • 編寫、編譯與執行 GPU 程式碼。
  • 控制平行執行緒階層。
  • 分配和釋放 GPU 的記憶體。
60 分鐘 休息時間
120 分鐘   運用 CUDA C/C++ 管理加速應用程式記憶體
   瞭解命令列分析工具與 CUDA 管理記憶體,將重點放在觀察驅動的應用程式改良,並深入瞭解管理記憶體的行為:
  • 使用命令列分析工具來分析 CUDA 程式碼。
  • 深入瞭解整合記憶體。
  • 最佳化整合記憶體管理。
15 分鐘 休息時間
120 分鐘   運用 CUDA C/C++ 加速應用程式的非同步串流和視覺分析
   找出改善記憶體管理和指令級平行處理的機會:
  • 使用 NVIDIA Nsight 系統分析 CUDA 程式碼。
  • 使用並行 CUDA 串流。
15 分鐘   最後回顧
  • 回顧主要學習內容並總結問題。
  • 完成測驗並取得認證。
  • 填寫實作坊調查問卷。

實作坊詳情

時間: 8 小時

必備基礎能力:

  • 基礎 C/C++ 專長能力並熟悉變數類型、迴圈、條件陳述式、函數和陣列操作
  • 我們預設學員未具備 CUDA 程式編寫的預備知識

技術: nvprof、nvpp

認證證書: 完成測驗後,參與者將會收到 NVIDIA DLI 認證證書,證明他們具有相關主題的能力,支援其專業職涯成長。