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
Bevezetés
- Mi az a ROCm?
- Mi az a HIP?
- ROCm vs CUDA vs OpenCL
- A ROCm és HIP funkciók és architektúra áttekintése
- A Fejlesztési Környezet kialakítása
Elkezdeni
- Új ROCm projekt létrehozása Visual Studio kóddal
- A projekt szerkezetének és fájljainak feltárása
- A program összeállítása és futtatása
- A kimenet megjelenítése a printf és fprintf használatával
ROCm API
- A ROCm API szerepének megértése a gazdagép programban
- ROCm API használata az eszközinformációk és képességek lekérdezésére
- ROCm API használata az eszközmemória lefoglalására és felszabadítására
- ROCm API használata adatok másolására a gazdagép és az eszköz között
- ROCm API használata kernelek indításához és szálak szinkronizálásához
- ROCm API használata a hibák és kivételek kezelésére
HIP nyelv
- A HIP nyelv szerepének megértése az eszközprogramban
- HIP nyelv használata olyan kernelek írásához, amelyek a GPU-on futnak és adatokat kezelnek
- HIP adattípusok, minősítők, operátorok és kifejezések használata
- HIP beépített függvények, változók és könyvtárak használata általános feladatok és műveletek végrehajtására
ROCm és HIP memória modell
- A gazdagép és az eszközmemória modellek közötti különbség megértése
- ROCm és HIP memóriaterületek használata, például globális, megosztott, állandó és helyi
- ROCm és HIP memóriaobjektumok, például mutatók, tömbök, textúrák és felületek használata
- ROCm és HIP memória hozzáférési módok használata, például csak olvasható, csak írható, írás-olvasás stb.
- ROCm és HIP memória konzisztencia modell és szinkronizálási mechanizmusok használata
ROCm és HIP végrehajtási modell
- A gazdagép és az eszköz végrehajtási modelljei közötti különbség megértése
- ROCm és HIP szálak, blokkok és rácsok használata a párhuzamosság meghatározásához
- ROCm és HIP szálfüggvények használata, például hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x stb.
- ROCm és HIP blokkfüggvények használata, például __syncthreads, __threadfence_block stb.
- ROCm és HIP grid funkciók használata, például hipGridDim_x, hipGridSync, együttműködő csoportok stb.
Hibakeresés
- A ROCm és HIP programok gyakori hibáinak és hibáinak megértése
- A Visual Studio kódhibakereső használata változók, töréspontok, veremhívás 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
- A ROCm és HIP programok teljesítményét befolyásoló tényezők megértése
- ROCm és HIP összevonási technikák használata a memória átviteli sebességének javítására
- ROCm és HIP 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
- ROCm és HIP 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
- ROCm és HIP 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
Követelmények
- A C/C++ nyelv és a párhuzamos programozási fogalmak megértése
- Számítógép-architektúra és memóriahierarchia alapismeretei
- Parancssori eszközökben és kódszerkesztőkben szerzett tapasztalat
Közönség
- Fejlesztők, akik szeretnék megtanulni a ROCm és a HIP használatát az AMD GPU programozására és a párhuzamosságuk kihasználására
- Fejlesztők, akik nagy teljesítményű és méretezhető kódot szeretnének írni, amely különböző AMD eszközökön futhat
- Programozók, akik szeretnék felfedezni a GPU programozás alacsony szintű aspektusait, és optimalizálni szeretnék kódteljesítményüket
28 Órák
Vélemények (2)
Nagyon interaktív különféle példákkal, a képzés kezdete és vége között jó összetettséggel.
Jenny - Andheo
Kurzus - GPU Programming with CUDA and Python
Gépi fordítás
Edzők energia és humor.
Tadeusz Kaluba - Nokia Solutions and Networks Sp. z o.o.
Kurzus - NVIDIA GPU Programming - Extended
Gépi fordítás