Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
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
Reference (2)
Velmi interaktivní s různými příklady, s dobrým postupem ve složitosti mezi začátkem a koncem školení.
Jenny - Andheo
Kurz - GPU Programming with CUDA and Python
Machine Translated
Trenéři energii a humor.
Tadeusz Kaluba - Nokia Solutions and Networks Sp. z o.o.
Kurz - NVIDIA GPU Programming - Extended
Machine Translated