Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025

Programování a architektury grafických procesorů

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
NI-GPU Z,ZK 5 2P+1C česky
Garant předmětu:
Ivan Šimeček
Přednášející:
Ivan Šimeček
Cvičící:
Ivan Šimeček
Předmět zajišťuje:
katedra počítačových systémů
Anotace:

Studenti získají znalost vnitřní architektury moderních masivně paralelních GPU procesorů. Naučí se je programovat zejména v programovém prostředí jazyka CUDA, což je už dnes široce rozšířená programovací technologie GPU procesorů. Jako nedílnou součást efektivního výpočetního využití těchto hierarchických výpočetních struktur se studenti naučí i optimalizační programovací techniky a způsoby programování víceprocesorových GPU systémů.

Požadavky:

Základy programování v C a C++ (na úrovni předmětů BI-PA1 a BI-PA2), doporučuje se absolvování předmětu Paralelní a distribuované programování (MI-PDP).

Osnova přednášek:

1. GPU microarchitecture.

2.-4. (3) CUDA programming language.

5. Basic parallel operations (reduction and prefix sum).

6. Methods of synchronization of fibers and fiber blocks.

7. Optimization I: general optimization of massively parallel codes

8. Optimization II: SIMT architecture, combined memory access.

9. Optimization III: Memory subsystem architecture.

10. Collaboration multiple GPUs.

11. Asynchronous GPU calculations.

12. Case studies of GPU programs, development, debugging of GPU applications

13. HPC libraries and other APIs for GPGPU.

Osnova cvičení:

1) Seznámení s prostředím, zadání semestrálních prací

2) Odevzdání sekvenční implementace

3) Kompilace GPU kódu, zapojení knihoven

4) Práce s nástroji pro ladění kódu a profilační nástroje

5) konzultace ke GPU implementaci

6) odevzdaní GPU implementace, zápočet

Cíle studia:
Studijní materiály:

Brian Tuomanen „Hands-On GPU Programming with Python and CUDA: Explore high-performance parallel computing with CUDA“ , Packt Publishing, 2018

Sudhakar Yalamanchili „GPU Architectures“ https://ece8823-sy.ece.gatech.edu/

J. Sanders, E. Kandrot ''CUDA by Example: An Introduction to General-Purpose GPU Programming''

David B. Kirk, Wen-mei W. Hwu: Programming Massively Parallel Processors: A Hands-on Approach. 1st ed., Morgan Kaufmann, 2010.

Poznámka:
Další informace:
https://courses.fit.cvut.cz/NI-GPU/
Rozvrh na zimní semestr 2024/2025:
Rozvrh není připraven
Rozvrh na letní semestr 2024/2025:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 3. 12. 2024
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet6072006.html