NVIDIA CUDA GPU高速平行運算程式開發

日期 2025/07/30(三)-2025/07/31(四)
時間 ■13:00~16:30 ■17:30~20:00
地點 計中 206 教室(電腦教室)
費用 臺灣大學及國立臺灣大學系統教職員生1000元,其他2000元。
主辦單位 國立臺灣大學計算機及資訊網路中心(臺大計中)
協辦單位 兌全有限公司
對象 本課程需具備 C 語言基礎。
備注 本課程不供餐,不提供上課證明或證書。

課程簡介

NVIDIA 在 2007 年推出圖形處理器 (GPU: Graphics Processing Unit) 程式開發工具 CUDA (Compute Unified Device Architecture),讓開發者可以在通用圖形處理器 (GPGPU: General Purpose GPU) 上開發各類的科學運算 (Scientific Computing),促成許多 HPC (High Performance Computing) 應用領域的進步;具有高度運算需求的科學領域包括:人工智慧 (Artificial Intelligence)、機器學習 (Machine Learning)、深度學習 (Deep Learning)、影音 3D 多媒體、生物醫學、國防科學、石油探勘、財務工程、土木建築、電腦輔助製造(CAM: Computer Aided Manufacturing)、計算機輔助工程(CAE: Computer Aided Engineering)、電腦輔助設計(CAD:Computer Aided Design)、氣體煙霧模擬、火焰模擬、模流水流模擬等。 隨著半導體技術的迅速成長,至今在單一個 GPU 中,處理器核心(processor core)的個數已增加到數萬核以上,使得 GPU 的計算能力也跟著快速成長;至今 CUDA 開發環境已經相當成熟,超高速運算時代已經來臨。

本 GPU 平行運算課程特色:

本 GPU 平行運算課程聚焦於「基礎 ➜ 實作 ➜ HPC 應用 ➜ 產業趨勢」四大主軸,每個單元搭配「實務案例及應用場景」,最大目標是引導 CUDA 初學者能夠快速瞭解 CUDA 的平行理念。 首先從 CUDA 的基礎平行計算模式開始介紹,針對在撰寫 CUDA 平行程式時,使用特殊記憶體該注意的事項、大量資料在平行處理時的各種切割方式、從多執行緒(multiple threads)到多 GPU 處理核心的分配方法、進而跨越多 GPU 晶片(multiple GPUs)的多串流(multiple streams)處理等議題,都是本課程要探討的內容。 同時,基於新版 CUDA SDK、新款 GPU 及 NVIDIA AI Supercomputer 架構等新功能,本課程也將介紹其發表的新架構及新技術。 首重加強學習效果,本課程的安排特別著重於由淺而深,逐步引導從理解進而以最快的速度上手 CUDA 平行程式開發;只要具備 C 程式語言的設計基礎就可參加此課程,快速瞭解 CUDA 平行處理程式的設計技巧及 GPU 的平行概念。

課程内容
Part 1:基礎概念與 CUDA 入門
第一日上午

1. GPU 與 CUDA 平行運算概念入門

  • NVIDIA GPU 架構介紹
  • CUDA SDK、運算能力與產業應用範例

2. 平行計算的核心概念:Thread, Block, Grid, Warp

  • GPU 如何「分工合作」
  • 各式各樣的數據如何「平行分割」
  • 數據與運算的平行分配

3. 基礎 CUDA 平行程式設計實作

  • 編寫簡單 CUDA 程式,感受 GPU 的加速魅力

Part 2:CUDA 記憶體管理與效能分析
第一日下午

4. GPU 記憶體階層與優化策略

  • Global, Constant, Shared 記憶體介紹
  • 實作:使用 Shared Memory 加速小範例

5. 效能分析與優化工具

  • Nsight System 與 Nsight Compute
  • 透過效能分析找出 CUDA 程式的瓶頸

6. 基礎 CUDA 平行程式設計實作

  • 在平行程式中加入計時器評估效能

Part 3:科學運算應用專題
第二日上午

7. 應用專題:影像處理加速實作

  • Image Sobel Filtering, De-noising, and Rotation
  • CUDA Texture 及 Surface 記憶體的輔助加速方式

8. 科學模擬與金融應用專題

  • N Body 物理模擬與 Monte Carlo 選擇權平行運算
  • Reduction Optimization 平行計算
  • 如何使用 GPU 平行化解決不同領域的計算問題

Part 4:進階技術與未來趨勢
第二日下午

9. 多 GPU 與 Streams 並行技術

  • Multiple Streams 與 Multiple GPUs 基本操作
  • GPUDirect Peer-to-peer Transfers 及 Unified Virtual Addressing

10. NVIDIA AI 超級運算與最新技術分享

  • NVIDIA AI Supercomputer 架構與未來趨勢
  • NVLink 高速互聯如何提升 AI 大語言模型 (LLM) 的訓練
  • CUDA 在生成式 AI(例如 ChatGPT、LLM)背後所扮演的角色