Kurzusleírás

Bevezetés

  • Mi az a ROCm?
  • Mi az a HIP?
  • ROCm vs CUDA kontra OpenCL
  • A ROCm és HIP funkciók és architektúra áttekintése
  • ROCm for Windows vs ROCm, Linux

Telepítés

  • A ROCm telepítése Windows rendszeren
  • A telepítés ellenőrzése és az eszköz kompatibilitás ellenőrzése
  • A ROCm frissítése vagy eltávolítása Windows rendszeren
  • Gyakori telepítési problémák hibaelhárítása

Elkezdeni

  • Új ROCm projekt létrehozása a Visual Studio kóddal Windows rendszeren
  • A projekt szerkezetének és fájljainak feltárása
  • A program lefordítása és futtatása
  • A kimenet megjelenítése a printf és fprintf használatával

ROCm API

  • ROCm API használata a gazdagép programban
  • Eszközinformációk és képességek lekérdezése
  • Eszközmemória lefoglalása és felszabadítása
  • Adatok másolása a gazdagép és az eszköz között
  • Kernelek indítása és szálak szinkronizálása
  • Hibák és kivételek kezelése

HIP nyelv

  • HIP nyelv használata a készülék programjában
  • Olyan kernelek írása, amelyek a GPU-n futnak és adatokat kezelnek
  • Adattípusok, minősítők, operátorok és kifejezések használata
  • Beépített függvények, változók és könyvtárak használata

ROCm és HIP memória modell

  • Különféle memóriaterületek használata, például globális, megosztott, állandó és helyi
  • Különféle memóriaobjektumok, például mutatók, tömbök, textúrák és felületek használata
  • Különféle memóriaelérési módok használata, például csak olvasható, csak írható, írás-olvasás stb.
  • Memóriakonzisztencia modell és szinkronizációs mechanizmusok használata

ROCm és HIP végrehajtási modell

  • Különféle végrehajtási modellek, például szálak, blokkok és rácsok használata
  • Szálfüggvények használata, például hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x stb.
  • Blokkfüggvények használata, például __syncthreads, __threadfence_block stb.
  • Rácsfüggvények használata, például hipGridDim_x, hipGridSync, együttműködő csoportok stb.

Hibakeresés

  • ROCm és HIP programok hibakeresése Windows rendszeren
  • A Visual Studio kódhibakereső használata változók, töréspontok, veremhívások stb. vizsgálatához.
  • A ROCm Debugger használata ROCm és HIP programok hibakereséséhez AMD eszközökön
  • A ROCm Profiler használata ROCm és HIP programok elemzéséhez AMD eszközökön

Optimalizálás

  • ROCm és HIP programok optimalizálása Windows rendszeren
  • Összevonási technikák használata a memória áteresztőképességének javítására
  • Gyorsítótárazási és előzetes letöltési technikák használata a memória késleltetésének csökkentése érdekében
  • Megosztott memória és helyi memória technikák használata a memóriaelérések és a sávszélesség optimalizálására
  • Profilkészítő és profilkészítő eszközök használata a végrehajtási idő és az erőforrás-kihasználás mérésére és javítására

Összegzés és a következő lépés

 21 Hours

Résztvevők száma



Ár per résztvevő

Vélemények (1)

Rokon tanfolyam

GPU Programming with OpenCL

28 Hours

GPU Programming with CUDA

28 Hours

GPU Programming - OpenCL vs CUDA vs ROCm

28 Hours

AMD GPU Programming

28 Hours

Introduction to GPU Programming

21 Hours

GPU Programming with OpenACC

28 Hours

Rokon kategóriák