Logo ČVUT
Loading...
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2011/2012

Obecné výpočty na grafických procesorech

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
A4M39GPU KZ 4 1+2c česky
Přednášející:
Jaroslav Sloup (gar.)
Cvičící:
Jaroslav Sloup (gar.)
Předmět zajišťuje:
katedra počítačové grafiky a interakce
Anotace:

Cílem předmětu je seznámení studentů se základními principy obecných výpočtů na grafických procesorech (GPGPU) a získání praktických zkušeností s návrhem a implementací aplikací využívajících pro urychlení výpočtů GPU. Výklad zahrnuje seznámení s architekturou současných grafických procesorů a jejími omezeními, základní koncepty paralelního programovaní GPU, jakyky pro programování GPU, technologii CUDA a metody optimalizace kódu. Cvičení jsou zaměřena na řešení typových úloh a semestrálních projektů. Důraz je kladen na získání praktických zkušeností s konkrétní technologií - CUDA.

Požadavky:

Programování v C/C++, lineární algebra.

Osnova přednášek:

1. Úvod do počítání na GPU (architektury, jazyky, GPU versus CPU).

2. Vicevláknové programování.

3. Popis architektury nVidia CUDA a základy jejího programování (Compute Unified Device Architecture).

4. Práce s vlákny a přístup do paměti (CUDA).

5. Metody optimalizace kódu (CUDA).

6. Ukázky návrhu a implementace aplikací v prostředí CUDA.

7. Ostatní jazyky pro GPGPU I - OpenCL (Open Computing Language).

8. Ostatní jazyky pro GPGPU II - GLSL (OpenGL Shading Language).

Osnova cvičení:

1. Úvod - požadavky, bodové hodnocení. Programování pomoci SSE instrukcí.

2. Ukázky konkrétních příkladů vicevláknových aplikací.

3. CUDA - překlad programu, ladění, jednoduché příklady. Zadání projektu.

4. CUDA - řešení jednoduché úlohy I (doplňování kódu do předpřipravené kostry

aplikace).

5. CUDA - řešení jednoduché úlohy II (doplňování kódu do předpřipravené kostry

aplikace).

6. Samostatná práce na projektu - konzultace I.

7. Samostatná práce na projektu - konzultace I.

8. Průběžná kontrola první části projektu.

9. OpenCL - překlad programu, ladění, jednoduché příklady.

10. OpenCL - řešení jednoduché úlohy (doplňování kódu do předpřipravené kostry

aplikace).

11. Samostatná práce na projektu - konzultace II.

12. Samostatná práce na projektu - konzultace II.

13. Odezvdáváni projektu + dokumentace.

14. Zápočty.

Cíle studia:
Studijní materiály:

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

2. Jason Sanders, Edward Kandrot: CUDA by Example: An Introduction to General-Purpose GPU Programming. Addison-Wesley Professional, 1st edition, 2010, ISBN-13: 978-0131387683.

3. Ryoji Tsuchiyama, Takashi Nakamura, Takuro Iizuka, Akihiro Asahara, Satoshi Miki: The OpenCL Programming Book. Fixstars Corporation, 2010.

Poznámka:

Další podrobnější informace o předmětu (včetně podmínek pro udělení klasifikovaného zápočtu) najdete na webové stránce http://service.felk.cvut.cz/courses/A4M39GPU .

Rozvrh na zimní semestr 2011/2012:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po
Út
St
místnost KN:E-128
Sloup J.
14:30–16:00
(přednášková par. 1)
Karlovo nám.
Cvičebna K3
Čt
místnost KN:E-311
Sloup J.
11:00–12:30
(přednášková par. 1
paralelka 101)

Karlovo nám.
Lab K311
místnost KN:E-311
Sloup J.
12:45–14:15
(přednášková par. 1
paralelka 102)

Karlovo nám.
Lab K311

Rozvrh na letní semestr 2011/2012:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 9. 7. 2012
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet1576606.html