Lecturers
Teaching Assistants
Class Times & Rooms
- >Class-room lectures suspended<
- Find recorded lectures below.
Exam Time & Room
- TBA
Computer Rooms
- HG E26.1 (The environment provided by these computers is similar to the exam environment.)
Course Moodle (For Homework Submission)
- 151-0116-10L – HPCSE for Engineers II
- 151-0116-00L – HPCSE for CSE II
Discussion Board / Questions
Schedule and Lecture Slides
Date | Lecture |
17.02.2020 | Introduction |
24.02.2020 | UQ |
02.03.2020 | Lecture notes (pp. 1 – 25) on UQ Week 1 – 3, Draft Script Week 1 – 3 , List of References Week 1 – 3 |
09.03.2020 | Lecture on HPC and Advanced MPI Concepts |
16.03.2020 | Communication Tolerant Programing (Slides) , Video |
23.03.2020 | Lecture notes (pp. 26 – 68) Sampling & Monte Carlo Methods , Lecture on Sampling & Monte Carlo Methods |
30.03.2020 | High Throughput Computing (Video) |
06.04.2020 | Particle Methods (Slides), Part 1, Part 2 |
27.04.2020 | GPU Programming Basics (video, slides) |
04.05.2020 | GPU Memory Hierarchy and Optimizations (video, slides) |
11.05.2020 | Parallel Reduction on GPU (video, slides) |
18.05.2020 | CUDA Streams & Warp-Level Primitives (video, slides) |
25.05.2020 |
Exercise Sessions
Date | Session |
17.02.2020 | No Session |
24.02.2020 | Introduction Probability Theory & Statistics |
02.03.2020 | Recap Bayesian UQ, Prediscussion HW 1 |
09.03.2020 | Postdiscussion HW 1, Prediscussion HW 2 (Task 1) |
16.03.2020 | MPI Struct, Discussion HW 2 & Paraview |
23.03.2020 | Communication-Tolerant Programming Discussion and Q&A |
30.03.2020 | Sampling & Monte Carlo Methods, TMCMC |
06.04.2020 | SSA & Optimization, SSA, CMA-ES |
20.04.2020 | The PGAS Model – UPC Tutorial |
27.04.2020 | CUDA basics |
04.05.2020 | CUDA Tutorial |
11.05.2020 | CUDA Tutorial |
18.05.2020 | CUDA Tutorial |
25.05.2020 | Mock Exam |
Grading Scheme
Textbooks & Recommended Reads
- Kowarschik, M. and Weiß, C., An overview of cache optimization techniques and cache-aware numerical algorithms.
- G. Strang – Multigrid Tutorial: http://math.mit.edu/classes/18.086/2006/am63.pdf
-
Parallel Programming in MPI and OpenMP, V. Eijkhout.
- CUDA C Programming Guide, NVIDIA
-
CUDA by example, J. Sanders and E. Kandrot
-
Data Analysis: A Bayesian Tutorial, Devinderjit Sivia
-
A Multigrid Tutorial, 2nd Edition. Briggs, Henson, McCormick.
-
Iterative methods for linear systems. Chris H. Rycroft, 2007.
-
Introduction to High Performance Computing for Scientists and Engineers, G. Hager and G. Wellein, CRC Press, 2011
-
Computer Organization and Design, D.H. Patterson and J.L. Hennessy
Additional Material
- Bash tutorial
- Command Reference
- Getting Started With Euler
- Euler wiki
- CSCS users page
- CSCS Piz Daint Tutorial
- www.hpc-ch.org
Tutorials
- HPC tutorial at LLNL – Blaise Barney
- SC15 Tutorial Preview Videos
- Argonne Training Program on Extreme-Scale Computing
C++
- C++ lecture notes: Basics, Templates, Classes
- cppreference.com
- cplusplus.com
OpenMP
MPI
MATE – Runtime system for hybrid approach to overdecomposition
CUDA
SIMD
For Windows users
- PuTTY: a simple free SSH client for Windows
- WinSCP: for copying files between Windows and Euler
- Cygwin: Linux-like environment on Windows (Installation hints)
Others
- The Parallel Dwarfs project
- The Landscape of Parallel Computing Research: A View from Berkeley
- KAUST Live: Thomas Schulthess, Swiss National Supercomputing Center
- Parallel Program Design – Ian Foster
- How the Computer Works – The CPU and Memory
- A Multiprecision World – SIAM News
- Should We Trust Algorithms – MIT Press