Dominik Göddeke -- Teaching

Conference Tutorials

I have developed and presented a range of tutorials on GPU Computing at various conferences. Please refer to my GPGPU page for details.

Summer Term 2011, Winter Term 2011/2012: High-Performance Computing und Parallele Numerik (High Performance Computing and Parallel Numerics)

Lecture, Faculty of Mathematics, TU Dortmund, aiming at students in applied mathematics (BSc and MSc). This lecture covers modern hardware architectures, hardware-aware programming techniques, and the numerical background of parallel solvers for PDE problems. Some of the (hardware-related) topics include the memory wall problem, cache blocking for locality, the efficient implementation of dense and sparse numerical linear algebra, and parallel programming with OpenMP, CUDA and MPI for multicores, GPUs and clusters. On the numerical side, linear solvers of Krylov subspace type are presented, analysed and compared. A special focus is placed on the efficient (shared memory) parallelisation of strong preconditioners. In the last quarter, fundamentals and essential convergence results of domain decomposition methods are presented, including overlapping Schwarz, non-overlapping substructuring and Schur complement, a quick glance at their multilevel variants, and some of the peculiarities of parallel block-smoothed approaches. Slides and additional material are available via TU Dortmund's EWS system (a password-protected e-teaching platform) and upon special request.

Summer Term 2011, Winter Term 2011/2012: Studienprojekt Modellbildung und Simulation (Project Course Modeling and Simulation)

Project course supervised by S. Turek and myself, Faculty of Mathematics, TU Dortmund. Aiming at 4th semester Bachelor Technomathematik students, the goal is to develop a parallel 3D finite difference Krylov-type solver for linearised elasticity on heterogeneous hardware (i.e., MPI clusters of mixed OpenMP/CUDA nodes). The concept of a project course emphasises all stages in the development of numerical simulation software, from an inaugural seminar, over modeling, selection of numerical approaches, software design, project management, implementation, testing, and numerical and performance benchmarking to a final presentation in front of a larger audience. Slides and additional material are available via TU Dortmund's EWS system (a password-protected e-teaching platform).

Summer Term 2010: Wissenschaftliches Rechnen (Scientific Computing)

Lecture by S. Turek, with support from H. Wobker and myself, Faculty of Mathematics, TU Dortmund.