In this module, you will study the architecture and programming of GPUs. Please find below a brief outline of the lectures:
- Review of computer architecture basics - measuring performance, benchmarks, five-stage RISC pipeline, caches
- GPU basics - the evolution of GPU computing, a high-level overview of a GPU architecture
- GPU programming with CUDA - program structure, CUDA threads organization, warp/thread-block scheduling
- GPU (micro) architecture - streaming multiprocessors, single instruction multiple threads (SIMT) core design, tensor cores for deep learning, RT cores for ray tracing, mixed-precision support
- GPU memory hierarchy - banked register file and operand collectors, shared memory, GPU caches (differences w.r.t. CPU caches), global memory
- Branch and memory divergence - branch handling, stack-based reconvergence, memory coalescing, coalescer design
- Barriers and synchronization
- Temporal and spatial locality exploitation challenges in GPU caches
- Global memory- high throughput requirements, GDDR/HBM, memory bandwidth optimization techniques
- GPU research issues - performance bottlenecks, GPU power modeling, high-power consumption/energy efficiency, GPU security
- Application case study - deep learning
- Cycle-accurate simulators for GPUs
In addition to lectures, a semester-long problem-based project will augment the learning in the lectures. Several topics related to GPUs will be proposed. You are required to choose a topic and work on it. It is possible to work in groups. There will be (bi-) weekly meetings to discuss progress and problems.
In addition to the semester-long project, there will be assignments to teach CUDA programming.
Course Evaluation: Oral examination
Duration: 30 minutes
Voraussetzungen:
- Basic course on computer architecture and C/C++ programming
Lernorganisation:
- Weekly lecture
- Weekly lab
Leistungsnachweis:
Oral exam + Lab assignments
Bereichseinordnung:
Studiendekanat Elektrotechnik, Informatik und Mathematik
ECTS-Kreditpunkte:
6
Weitere Informationen aus Stud.IP zu dieser Veranstaltung
Heimatinstitut: Institut für Massively Parallel Systems (E-EXK5)
In Stud.IP angemeldete Teilnehmer: 82
Anzahl der Postings im Stud.IP-Forum: 2
Anzahl der Dokumente im Stud.IP-Downloadbereich: 1
Betreute Abschlussarbeiten
laufende
2024
Bahe, B. (2024). Nichtlineare Stabilitätsuntersuchungen in einem leistungselektronisch dominierten elektrischen Energiesystem.
Boehm, E. (2024). Einfluss des Netzäquivalents auf die Stabilität eines Netzes mit netzbildenden und netzfolgenden Umrichtern.
beendete
2024
Helmich, L. M. (2024). Entwicklung und Simulation eines Effektivwertmodells für STATCOM-Anlagen mit neuartigen Regelstrategien für Pendeldämpfungen in PowerFactory.
Rüter, C. (2024). Einfluss der Netzstärke auf die Kleinsignalstabilität netzbildender Umrichter mit virtueller Oszillator-Regelung.
Schultheiß, J. (2024). Impedanzbasierte Stabilitätsanalyse zur Bewertung der Stabilitätsgrenzen von DC- und AC-Netzen.
2023
Chouiter, B. (2023). Dynamic Phasor Modelling and Comparison to Classical EMT Models.
Helmich, L. M. (2023). Entwicklung und Simulation einer Regelstrategie für die Pendeldämpfung durch STATCOM-Geräte.
Kamma, J. (2023). Umrichtermodellierung zur Repräsentation von Interaktionen im Sinne der Converter-Driven Stability.
Mißfeldt, C. (2023). Einfluss von Zeitverzögerungen auf die Converter-Driven Stability.
Rosenau, Y. (2023). Einfluss netzbildender Umrichter-Regelungsstrukturen auf die "Converter-Driven Stability".
2022
Kumar, M. (2022). Modellierung und Vergleich des Frequenzverhaltens dezentraler Anlagen mit netzbildenden Eigenschaften oder beigestellter Schwungmasse.
Lim, I. (2022). Modelling and Integration of a Hydrogen Storage Power Plant in the 10-Machine New-England Power System.
Rieckborn, N. (2022). Modellierung des Umwandlungsprozesses eines Wasserstoffspeicherkraftwerks.