Kurzusleírás

Bevezetés

  • Mi a GPU programozás?
  • Miért érdemes a CUDA-t használni Pythonnal?
  • Kulcsfogalmak: Szálak, Blokkok, Rácsok

A CUDA jellemzőinek és architektúrájának áttekintése

  • GPU vs CPU architektúra
  • A SIMT (Single Instruction, Multiple Threads) megértése
  • CUDA programozási modell

Fejlesztői környezet beállítása

  • CUDA Toolkit és illesztőprogramok telepítése
  • Python és Numba telepítése
  • A környezet beállítása és ellenőrzése

Párhuzamos programozás alapjai

  • Bevezetés a párhuzamos végrehajtásba
  • Szálak és szálhierarchiák megértése
  • Dolgozás warpokkal és szinkronizációval

A Numba fordító használata

  • Bevezetés a Numbába
  • CUDA magok írása a Numbával
  • A @cuda.jit dekorátorok megértése

Egyéni CUDA mag építése

  • Alapvető mag írása és indítása
  • Szálak használata elemenkénti műveletekhez
  • Rács és blokk dimenziók kezelése

Memóriakezelés

  • GPU memória típusai (globális, megosztott, lokális, konstans)
  • Memória átvitel hoszt és eszköz között
  • Memóriahasználat optimalizálása és szűk keresztmetszetek elkerülése

Haladó témák a GPU gyorsításban

  • Megosztott memória és szinkronizáció
  • Aszinkron végrehajtás streamek használatával
  • Több GPU-s programozás alapjai

CPU alapú alkalmazások átalakítása GPU-ra

  • CPU kód profilozása
  • Párhuzamosítható részek azonosítása
  • Logika átültetése CUDA magokba

Hibakeresés

  • CUDA alkalmazások hibakeresése
  • Gyakori hibák és megoldásuk
  • Eszközök és technikák teszteléshez és ellenőrzéshez

Összefoglalás és következő lépések

  • Kulcsfogalmak áttekintése
  • Ajánlott eljárások a GPU programozásban
  • Források a továbbtanuláshoz

Követelmények

  • Python programozási tapasztalat
  • Tapasztalat a NumPy-val (ndarrays, ufuncs, stb.)

Célközönség

  • Fejlesztők
 14 Órák

Résztvevők száma


Ár per résztvevő

Vélemények (1)

Közelgő kurzusok

Rokon kategóriák