Děkujeme za vaši dotaz! Jeden z našich pracovníků vás brzy kontaktuje.
Děkujeme za rezervaci! Jeden z našich pracovníků vás brzy kontaktuje.
Návrh Školení
Úvod
- Co je ROCm?
- Co je HIP?
- ROCm vs CUDA vs OpenCL
- Přehled funkcí a architektury ROCm a HIP
- ROCm for Windows vs ROCm pro Linux
Instalace
- Instalace ROCm na Windows
- Ověřte instalaci a zkontrolujte kompatibilitu zařízení
- Aktualizace nebo odinstalace ROCm v systému Windows
- Odstraňování běžných problémů s instalací
Začínáme
- Vytvoření nového projektu ROCm pomocí kódu Visual Studio v systému Windows
- Prozkoumání struktury projektu a souborů
- Kompilace a spuštění programu
- Zobrazení výstupu pomocí printf a fprintf
ROCm API
- Použití ROCm API v hostitelském programu
- Dotazování na informace a možnosti zařízení
- Alokace a uvolnění paměti zařízení
- Kopírování dat mezi hostitelem a zařízením
- Spouštění jader a synchronizace vláken
- Ošetření chyb a výjimek
Jazyk HIP
- Použití jazyka HIP v programu zařízení
- Psaní jader, která se spouštějí na GPU a manipulují s daty
- Použití datových typů, kvalifikátorů, operátorů a výrazů
- Použití vestavěných funkcí, proměnných a knihoven
ROCm a HIP paměťový model
- Použití různých paměťových prostorů, jako je globální, sdílený, konstantní a místní
- Použití různých paměťových objektů, jako jsou ukazatele, pole, textury a povrchy
- Použití různých režimů přístupu do paměti, jako je pouze pro čtení, pouze pro zápis, pro čtení a zápis atd.
- Použití modelu konzistence paměti a synchronizačních mechanismů
ROCm a model provedení HIP
- Použití různých modelů provádění, jako jsou vlákna, bloky a mřížky
- Použití funkcí vláken, jako je hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x atd.
- Použití blokových funkcí, jako jsou __syncthreads, __threadfence_block atd.
- Používání funkcí mřížky, jako je hipGridDim_x, hipGridSync, kooperativní skupiny atd.
Ladění
- Ladění programů ROCm a HIP ve Windows
- Použití Visual Studio Code debugger ke kontrole proměnných, zarážek, zásobníku volání atd.
- Použití ROCm Debugger k ladění ROCm a HIP programů na zařízeních AMD
- Použití ROCm Profiler k analýze programů ROCm a HIP na zařízeních AMD
Optimalizace
- Optimalizace programů ROCm a HIP v systému Windows
- Použití slučovacích technik ke zlepšení propustnosti paměti
- Použití technik ukládání do mezipaměti a předběžného načítání ke snížení latence paměti
- Použití sdílené paměti a technik místní paměti k optimalizaci přístupu k paměti a šířky pásma
- Používání profilovacích a profilovacích nástrojů k měření a zlepšování doby provádění a využití zdrojů
Shrnutí a další krok
Požadavky
- Pochopení jazyka C/C++ a konceptů paralelního programování
- Základní znalosti architektury počítačů a hierarchie paměti
- Zkušenosti s nástroji příkazového řádku a editory kódu
- Znalost operačního systému Windows a prostředí PowerShell
Publikum
- Vývojáři, kteří se chtějí naučit, jak nainstalovat a používat ROCm ve Windows k programování AMD GPU a využívat jejich paralelismus
- Vývojáři, kteří chtějí psát vysoce výkonný a škálovatelný kód, který lze spustit na různých zařízeních AMD
- Programátoři, kteří chtějí prozkoumat nízkoúrovňové aspekty GPU programování a optimalizovat výkon svého kódu
21 hodiny