Köszönjük, hogy elküldte érdeklődését! Csapatunk egyik tagja hamarosan felveszi Önnel a kapcsolatot.
Köszönjük, hogy elküldte foglalását! Csapatunk egyik tagja hamarosan felveszi Önnel a kapcsolatot.
Kurzusleírás
GPU-számítás és CUDA architektúra
- CPU és GPU architektúrális különbségei
- NVIDIA GPU streaming multiprocesszor modell
- A CUDA programozási modell áttekintése
- Heterogén számítástechnika és a host-eszköz paradigmája
A CUDA fejlesztői környezet beállítása
- A CUDA Toolkit 13.x telepítése
- NVCC fordító és build munkafolyamat
- Az eszközlekérdezésekkel történő környezet ellenőrzése
- IDE integráció és fejlesztési eszközök
CUDA kernel-ek írása és indítása
- Kernel függvény szintaxisa és minősítői
- Indítási konfiguráció és végrehajtás
- Vektorösszeadás és alapvető adat-párhuzamos minták
- CUDA hibakezelő makrók
CUDA szárhierarchia és végrehajtási modell
- Grid, block és thread szervezés
- Számozás és globális azonosító számítása
- Warp végrehajtás és SIMT modell
- Foglaltság és erőforrás-hasznosítás
GPU-memória architektúra és kezelése
- Memóriatípusok: globális, megosztott, állandó, regiszterek
- Eszközmemória lefoglalása és felszabadítása
- Hostról eszközre és eszközről hostra történő adatátvitel
- Megosztott memória a blockon belüli együttműködéshez
Egységes memória és adatkövetkezmények
- Egységes memóriamodell és kezelt lefoglalások
- Oldalvándorlás és igény szerinti paging
- Aszinkron előtöltés a cudaMemPrefetchAsync segítségével
- Memóriabeszúrási tippek az access mintákhoz
Rendszer-szintű profilozás Nsight Systems-szel
- Nsight Systems idővonal elemzés
- CPU-GPU szinkronizációs pontok azonosítása
- Kernel végrehajtás és memóriaátvitel vizualizálása
- Rendszerszintű teljesítményadatok értelmezése
Kernel-optimalizálás Nsight Compute segítségével
- Nsight Compute interaktív kernel profilozás
- Memórián keresztüláramlási és sávszélesség elemzés
- Számítási kihasználtság és warp állapot statisztikák
- Irányított elemzés és optimalizálási szabályok
Párhuzamos stream-ek és aszinkron műveletek
- CUDA stream-ek és az alapértelmezett stream
- Kernel végrehajtás átfedése adatátvitellel
- Stream szinkronizáció és CUDA események
- Többstream-es munkafolyamat tervezési minták
Hibakezelés és hibakereső eszközök
- CUDA API hiba kódok és helyreállítási stratégiák
- Compute-sanitizer memóriahozzáférés-ellenőrzésre
- cuda-gdb kernel hibakereséshez
- Assertiók és szinkron hibajelzés
Profil-alapú optimalizálási munkafolyamat
- Iteratív profilozási módszertan
- Palacktorok azonosítása és prioritizálása
- Teljesítmény regressziós tesztelés
- Optimalizálási döntések dokumentálása
Végéről-végéig terjedő gyorsított alkalmazás projekt
- Teljes GPU-gyorsított megoldás tervezése
- Profilozás integrálása a fejlesztés során
- Teljesítmény benchmark és jelentések
- Gyártási üzemeltetés szempontjai
Követelmények
- Alapvető C/C++ programozási kompetencia, változótípusok, hurkok, feltételes utasítások, függvények és tömbkezelés beleértve
- Bizonyos jártasság a parancssorból történő fordításban és programok futtatásában
- Nincs szükség előzetes GPU- vagy CUDA-programozási tapasztalatra
Célközönség
- Szoftverfejlesztők és mérnökök, akik GPU-k segítségével szeretnék gyorsítani a C/C++ alkalmazásaikat
- Tudományos kutatók és HPC szakemberek, akik csak CPU-alapú rendszerekről váltanak heterogén számítási megoldásokra
- Műszaki vezetők, akik GPU-gyorsítást értékelnek gyártási munkaterhelésekhez
8 Órák