Parallel and High Performance Computing
(ehem. "Parallel Computing: Grundlagen und Anwendungen")
Vorlesung mit Übung im Wintersemester 2018/19
Prof. Dr. D. Kranzlmüller,
Dr. K. Fürlinger
This course will be held in English!
Welcome to the course webpage for Parallel and High Performance
for winter-term 2018/19 at LMU Munich. Here you will be
able to find details on the lecture and the accompanying practical lab
- Aug 8, 2018: Webpage is online and registration in UniWorX is enabled.
- Aug 8, 2018: First lecture: Friday, October 19, 2018, starting at 9:15 in Room B001, Oettingenstr. 67
Parallel computing is concerned with using multiple compute units
to solve a problem faster or with higher accuracy. Historically, the
main application area for parallel machines is found in engineering
and scientific computing, where high performance computing (HPC)
systems today employ tens- or even hundreds of thousand compute
The application area for parallel computing has, however,
expanded recently to essentially include all areas of information
technology. Virtually all servers, desktop, and notebook systems, and
even smartphones and tables are today equipped with CPUs that contain
multiple compute cores. In each case, the potential for these systems
can only be fully realized by explicit parallel programming. As such
understanding the benefits, challenges, and limits of parallel
computing is increasingly becoming a "must have" qualification for IT
This course addresses the increasing importance of parallel and high
performance computing and is covering three interwoven areas:
Parallel hardware architectures, parallel algorithm
design, and parallel programming. The successful student
will be able to identify potentials for parallel computing in various
application areas, judge the suitability of contemporary hardware
architectures for a parallel computing problem and understand
efficient implementation strategies using modern parallel programming
The lecture is partially based on material that has been developed at
UC Berkeley and which has been funded by the US National Science
Foundation. The course slides will be made available for download by
the date of the lecture and will be in English.
The course is intended for both bachelor and master students of
computer science and related fields. More formally, in German: Die
Vorlesung richtet sich an Studenten der Informatik
bzw. Medieninformatik (Diplom) nach dem Vordiplom sowie an Studenten
der Informatik, Bioinformatik bzw. Medieninformatik (Bachelor, Master)
im Rahmen der vertiefenden Themen der Informatik. Für Vorlesung und
Übung werden 6 ECTS-Punkte vergeben.
Please note that the dates and locations for
lecture and lab exercises listed below are provisional and may change
prior to the start of the course!
- Lecture: Friday 9:30 - 12:00, Oettingenstr. 67, Room B001. First
lecture: Friday, October 19, 2018, starting at 9:15 in Room B001
- Lab exercise: Thursday 14:30 - 16:00, Geschw.-Scholl-Pl. 1 (F),
F 007. First lab: October 25, 2018, starting at 14:15 in Room 112
- Please keep an eye on News for any short-term
changes and announcements.
The lecture is accompanied by a lab exercises to deepen the
understanding of topics covered in the lecture. High performance
computing systems hosted at the Leibniz Supercomputing Center will be
made available to the students. Worksheets for the lab exercises will
be made available on UniWorX.
Lecture slides will be made available chapter-by-chapter through this
Please register for the course on UniWorX.
Via email and/or after the
lecture and lab exercises.
Paul E. McKenney (Ed.): Is Parallel Programming Hard, And, If So, What Can You Do About It?(online) (link)
Ananth Grama et al.:Introduction to Parallel Computing (2nd Ed.) (link)
David Culler and Jaswinder Pal Singh: Parallel Computer Architecture, A Hardware / Software Approach (link)
John Hennessy and David Patterson: Computer Architecture a Quantitative Approach (5th Ed.) (link)
Georg Hager and Gerhard Wellein: Introduction to High Performance Computing for Scientists and Engineers (link)
Barbara Chapman et al.: Using OpenMP (link)
Ruud van der Pas, Eric Stotzer and Christian Terboven Using OpenMP - The next Step (link)
William Gropp, Ewing Lusk, Anthony Skjellum: Using MPI (link)
William Gropp, Torsten Hoefler, Ewing Lusk: Using Advanced MPI (link)