課程簡介

介紹

  • 什麼是 GPU 程式設計?
  • 為什麼要使用 GPU 程式設計?
  • GPU 程式設計的挑戰和權衡是什麼?
  • GPU 程式設計的框架和工具是什麼?
  • 為您的應用程式選擇正確的框架和工具

OpenCL

  • 什麼是OpenCL?
  • OpenCL的優點和缺點是什麼?
  • 為 OpenCL 設置開發環境
  • 創建一個執行向量加法的基本 OpenCL 程式
  • 使用 OpenCL API 查詢設備資訊、分配和釋放設備記憶體、在主機和設備之間複製數據、啟動內核和同步線程
  • 使用 OpenCL C 語言編寫在設備上執行的內核並操作數據
  • 使用 OpenCL 內置函數、變數和庫執行常見任務和操作
  • 使用 OpenCL 記憶體空間(例如全域、本地、常量和專用)來優化數據傳輸和記憶體訪問
  • 使用 OpenCL 執行模型來控制定義並行度的工作項、工作組和 ND 範圍
  • 使用 CodeXL 等工具調試和測試 OpenCL 個程式
  • 使用合併、緩存、預取和分析等技術優化 OpenCL 個程式

CUDA的

  • 什麼是CUDA?
  • CUDA的優缺點是什麼?
  • 設置 CUDA 的開發環境
  • 創建一個執行向量加法的基本 CUDA 程式
  • 使用 CUDA API 查詢設備資訊、分配和釋放設備記憶體、在主機和設備之間複製數據、啟動內核和同步線程
  • 使用 CUDA C/C++ 語言編寫在設備上執行的內核並操作數據
  • 使用 CUDA 內建函數、變數和庫執行常見任務和操作
  • 使用 CUDA 記憶體空間(例如全域、共用、常量和本地)來優化數據傳輸和記憶體訪問
  • 使用 CUDA 執行模型來控制定義並行度的線程、塊和網格
  • 使用 CUDA-GDB、CUDA-MEMCHECK 和 NVIDIA Nsight 等工具調試和測試 CUDA 程式
  • 使用合併、緩存、預取和分析等技術優化 CUDA 程式

中華民國

  • 什麼是ROCm?
  • ROCm的優缺點是什麼?
  • 為 ROCm 設定開發環境
  • 創建執行向量加法的基本 ROCm 程式
  • 使用 ROCm API 查詢設備資訊、分配和釋放裝置記憶體、在主機和設備之間複製數據、啟動內核和同步線程
  • 使用 ROCm C/C++ 語言編寫在設備上執行的內核並操作數據
  • 使用 ROCm 內建函數、變數和庫執行常見任務和操作
  • 使用 ROCm 記憶體空間(如全域、本地、常量和專用)來優化數據傳輸和記憶體訪問
  • 使用 ROCm 執行模型來控制定義並行度的線程、塊和網格
  • 使用 ROCm Debugger 和 ROCm Profiler 等工具調試和測試 ROCm 程式
  • 使用合併、緩存、預取和分析等技術優化 ROCm 程式

臀部

  • 什麼是HIP?
  • HIP的優點和缺點是什麼?
  • 設置 HIP 的開發環境
  • 創建執行向量加法的基本 HIP 程式
  • 使用 HIP 語言編寫在設備上執行的內核並操作數據
  • 使用 HIP 內置函數、變數和庫執行常見任務和操作
  • 使用 HIP 記憶體空間(如全域、共用、常量和本地)來優化數據傳輸和記憶體訪問
  • 使用 HIP 執行模型來控制定義並行度的線程、塊和網格
  • 使用 ROCm Debugger 和 ROCm Profiler 等工具調試和測試 HIP 程式
  • 使用合併、緩存、預取和分析等技術優化 HIP 程式

比較

  • 比較 OpenCL、CUDA、ROCm 和 HIP 的功能、性能和相容性
  • 使用基準和指標評估 GPU 個程式
  • 學習 GPU 程式設計的最佳實踐和技巧
  • 探索 GPU 程式設計的當前和未來趨勢和挑戰

總結和下一步

最低要求

  • 瞭解 C/C++ 語言和並行程式設計概念
  • 計算機體系結構和記憶體層次結構的基礎知識
  • 具有命令行工具和代碼編輯器的經驗

觀眾

  • 希望學習 GPU 程式設計基礎知識以及開發GPU應用程式的主要框架和工具的開發人員
  • 希望編寫可在不同平臺和設備上運行的可移植和可擴展代碼的開發人員
  • 希望探索 GPU 程式設計和優化的好處和挑戰的程式師
 21 時間:

人數



每位參與者的報價

客戶評論 (1)

相關課程

課程分類