.  Home  .  Lehre  .  Vorlesungen  .  Wintersemester 2018/19  .  Parallel and High Performance Computing

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 Computing for winter-term 2018/19 at LMU Munich. Here you will be able to find details on the lecture and the accompanying practical lab exercises.


  • There will be no tutorial on 17.01.19. The next tutorial will be held on 24.01.19.
  • On Friday, Jan. 11 2019 at 11:00am, Andrey Semin from Intel will give a guest lecture on Application driven architecture design of SuperMUC-NG.
  • The written exam will take place on Tuesday, Feb. 12, 2019, at 12:30 pm, in Room M 218, Geschwister-Scholl-Platz 1. Please register via UniWorX!


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 cores.

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 professionals.

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 approaches.

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.

Important Dates

  • 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:00 - 16:00 (ct), Geschw.-Scholl-Pl. 1 (F), Room F 007. First lab: October 25, 2018, starting at 14:15 in Room F 007
  • Please keep an eye on News for any short-term changes and announcements.
  • Friday January 11, 2019, 11:00am:

    Guest lecture by Andrey Semin, Intel
    Title: Application driven architecture design of SuperMUC-NG

    Abstract: The presentation will provide details about SuperMUC-NG - a new supercomputer deployed at Leibniz-Rechenzentrum in Garching: the fastest supercomputer in Germany and among 91 from in the EU countries (according to Top500 listing in November 2018) and occupying 8th position in Top500 worldwide. However, the Linpack benchmark was not the main workload that determined features of SuperMUC-NG! SuperMUC-NG was designed to deliver the best performance on wide range of practically useful scientific applications: there were over 40 different workloads that drove the architecture decisions and selection of main components. In the presentation we will describe in detail some of the tools and methods used to optimize system architecture to deliver high application performance. We will cover the approaches to performance estimations, modelling and extrapolations, as well as discuss design choices and the compromises considered during design work.

    Bio: Andrey Semin is a Principal Engineer in Intel Architecture, Graphics and Software Group at Intel Corporation, specializing in power and performance optimization and modelling of high-performance computing (HPC) applications. He supports the leading European high-performance computing users, helping them to deploy new and innovative HPC solutions to grand-challenge problems. Andrey's background includes extensive experience working with leading HPC software and hardware vendors. Andrey has been instrumental in developing HPC industry innovations improving energy efficiency from data center to applications. Andrey graduated from Moscow State University in 2000, specializing in possibility theory and its applications for physical experiment analysis. He is the author of over a dozen papers and patents in the area of application tuning and energy efficiency analysis, and co-authored a book "Optimizing HPC Applications with Intel Cluster Tools". He was honored with an Intel Achievement Award (IAA) in 2018: highest award given to an individual by Intel.
  • The written exam (duration: 90 min.) for the lecture will take place on Tuesday, Feb. 12, 2019, at 12:30 pm, in Room M 218, Geschwister-Scholl-Platz 1.

Lab Exercises

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 webpage.

Further Reading

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)


Please register for the course on UniWorX.


Via email and/or after the lecture and lab exercises.