GPU Programming with CUDA and Python ( cudapython | 14 hours )

Prerequisites:
  • Python 程式設計經驗
  • 具備 NumPy 使用經驗(如 ndarrays、ufuncs 等)

觀眾

  • 開發者
Overview:

CUDA (Compute Unified Device Architecture)是由Nvidia创建的平行计算平台和API。

本課程為講師指導的培訓(線上或線下),適合中級開發者,他們希望使用CUDA來構建Python應用程式,這些應用程式可以在NVIDIA GPU上平行運行。

在本研讨会结束后,参与者将能够:

  • 使用Numba編譯器加速在NVIDIA GPU上運行的Python應用程式。
  • 創建、編譯並啟動自定義的CUDA核心。
  • 管理GPU記憶體。
  • 將基於CPU的應用程式轉換為GPU加速的應用程式。

课程格式

  • 互動式講座與討論。
  • 大量的練習與實踐。
  • 在即時實驗室環境中進行實作。

课程定制选项

  • 如需為本課程定制培訓,請聯繫我們進行安排。
Course Outline:

介紹

  • 什麼是GPU編程?
  • 為什麼要在Python中使用CUDA?
  • 關鍵概念:線程、區塊、網格

CUDA功能與架構概述

  • GPU與CPU架構的比較
  • 理解SIMT(單指令多線程)
  • CUDA編程模型

設置開發環境

  • 安裝CUDA工具包與驅動程序
  • 安裝Python與Numba
  • 設置與驗證環境

並行Programming基礎

  • 並行執行介紹
  • 理解線程與線程層次結構
  • 處理warp與同步

使用Numba編譯器

  • Numba介紹
  • 使用Numba編寫CUDA核心
  • 理解@cuda.jit裝飾器

構建自定義CUDA核心

  • 編寫與啟動基本核心
  • 使用線程進行逐元素操作
  • 管理網格與區塊維度

記憶體Management

  • GPU記憶體類型(全局、共享、本地、常量)
  • 主機與設備之間的記憶體傳輸
  • 優化記憶體使用與避免瓶頸

GPU加速的高級主題

  • 共享記憶體與同步
  • 使用流進行異步執行
  • 多GPU編程基礎

將基於CPU的應用程式轉換為GPU

  • 分析CPU代碼
  • 識別可並行化的部分
  • 將邏輯移植到CUDA核心

疑難排解

  • 調試CUDA應用程式
  • 常見錯誤與解決方法
  • 測試與驗證的工具與技巧

總結與下一步

  • 關鍵概念回顧
  • GPU編程的最佳實踐
  • 持續學習的資源
Sites Published:

United Arab Emirates - GPU Programming with CUDA and Python

Qatar - GPU Programming with CUDA and Python

Egypt - GPU Programming with CUDA and Python

Saudi Arabia - GPU Programming with CUDA and Python

South Africa - GPU Programming with CUDA and Python

Brasil - GPU Programming with CUDA and Python

Canada - GPU Programming with CUDA and Python

中国 - GPU Programming with CUDA and Python

香港 - GPU Programming with CUDA and Python

澳門 - GPU Programming with CUDA and Python

台灣 - GPU Programming with CUDA and Python

USA - GPU Programming with CUDA and Python

Österreich - GPU Programming with CUDA and Python

Schweiz - GPU Programming with CUDA and Python

Deutschland - GPU Programming with CUDA and Python

Czech Republic - GPU Programming with CUDA and Python

Denmark - GPU Programming with CUDA and Python

Estonia - GPU Programming with CUDA and Python

Finland - GPU Programming with CUDA and Python

Greece - GPU Programming with CUDA and Python

Magyarország - GPU Programming with CUDA and Python

Ireland - GPU Programming with CUDA and Python

Israel - GPU Programming with CUDA and Python

Luxembourg - GPU Programming with CUDA and Python

Latvia - GPU Programming with CUDA and Python

España - GPU Programming with CUDA and Python

Italia - GPU Programming with CUDA and Python

Lithuania - GPU Programming with CUDA and Python

Nederland - GPU Programming with CUDA and Python

Norway - GPU Programming with CUDA and Python

Portugal - GPU Programming with CUDA and Python

România - GPU Programming with CUDA and Python

Sverige - GPU Programming with CUDA and Python

Türkiye - GPU Programming with CUDA and Python

Malta - GPU Programming with CUDA and Python

Belgique - GPU Programming with CUDA and Python

France - GPU Programming with CUDA and Python

日本 - GPU Programming with CUDA and Python

Australia - GPU Programming with CUDA and Python

Malaysia - GPU Programming with CUDA and Python

New Zealand - GPU Programming with CUDA and Python

Philippines - GPU Programming with CUDA and Python

Singapore - GPU Programming with CUDA and Python

Thailand - GPU Programming with CUDA and Python

Vietnam - GPU Programming with CUDA and Python

India - GPU Programming with CUDA and Python

Argentina - GPU Programming with CUDA and Python

Chile - GPU Programming with CUDA and Python

Costa Rica - GPU Programming with CUDA and Python

Ecuador - GPU Programming with CUDA and Python

Guatemala - GPU Programming with CUDA and Python

Colombia - GPU Programming with CUDA and Python

México - GPU Programming with CUDA and Python

Panama - GPU Programming with CUDA and Python

Peru - GPU Programming with CUDA and Python

Uruguay - GPU Programming with CUDA and Python

Venezuela - GPU Programming with CUDA and Python

Polska - GPU Programming with CUDA and Python

United Kingdom - GPU Programming with CUDA and Python

South Korea - GPU Programming with CUDA and Python

Pakistan - GPU Programming with CUDA and Python

Sri Lanka - GPU Programming with CUDA and Python

Bulgaria - GPU Programming with CUDA and Python

Bolivia - GPU Programming with CUDA and Python

Indonesia - GPU Programming with CUDA and Python

Kazakhstan - GPU Programming with CUDA and Python

Moldova - GPU Programming with CUDA and Python

Morocco - GPU Programming with CUDA and Python

Tunisia - GPU Programming with CUDA and Python

Kuwait - GPU Programming with CUDA and Python

Oman - GPU Programming with CUDA and Python

Slovakia - GPU Programming with CUDA and Python

Kenya - GPU Programming with CUDA and Python

Nigeria - GPU Programming with CUDA and Python

Botswana - GPU Programming with CUDA and Python

Slovenia - GPU Programming with CUDA and Python

Croatia - GPU Programming with CUDA and Python

Serbia - GPU Programming with CUDA and Python

Bhutan - GPU Programming with CUDA and Python

Nepal - GPU Programming with CUDA and Python