.  Home  .  Lehre  .  Vorlesungen  .  Sommersemester 2020  .  Advanced Topics in Parallel Computing

Advanced Topics in Parallel Computing

Vorlesung mit Übung im Sommersemester 2020
Prof. Dr. D. Kranzlmüller, Dr. K. Fürlinger

This course will be held in English!

Welcome to the course page for Advanced Topics in Parallel Computing for summer term 2020 at LMU Munich. Here you will find details on the lecture and the accompanying practical lab exercises.

While presence lectures are not possible, the plan for remote teaching/learning for "Advanced Topics in Parallel Computing" in SS2020 is as follows:

  • Instead of presence lectures I'll provide pre-recorded videos for the lecture material. The videos will for the most part just contain slides and narration/explanation.
  • For the labs the plan is to hold them in the form of interactive video conferences. Thus the labs would also be venue for interaction regarding the contents of the lecture (i.e, questions, comments, etc.). The plan is to hold these video conferences at the originally scheduled time for the lab, i.e., Fr 14-16 Uhr.


  • Announcement: On Wed May 20, at 4:00 pm, Felix Mössbauer (Siemens CT) will give an invited online lecture on Dynamic Datarace Analysis with DRace.

    Abstract: The talk gives an overview of both theoretical aspects regarding data-race detection and the practical implementation of a data-race detection tool. After presenting common algorithm classes like "lockset" and "happened-before", practical aspects of dynamic (runtime) instrumentation are discussed. This includes techniques to modify the instruction stream of an application, as well as the interception of function calls. The covered aspects are then demonstrated by analyzing a non-trivial application with the OSS Data-Race detection tool DRace. Finally, a bunch of performance optimization techniques is shown along with benchmark results on two real world applications.

    Bio: Felix Moessbauer studied computer science ("Mathematik + Informatik") at LMU from 2012 on and finished in 2019 with a master's degree. His main interests are in high-performance and distributed computing, where he worked for the DASH project. For his master's thesis, he moved to SIEMENS CT and implemented a data-race detection tool (DRace), which focuses on modularity and extendibility. Currently, he works as a software engineer in the multicore expert center at SIEMENS CT, where he improves DRace and optimizes low-latency communication.


The lecture will cover the following topics:
  • Memory consistency models
  • C++ atomic types and operations
  • Synchronization algorithms (barriers, locks)
  • Concurrent objects
  • Lock-freedom and wait-freedom
  • Collective communication algorithms
  • Co-routines
  • Dataflow approaches
  • FPGAs


The course is intended for master students of computer science. Successful prior participation in the introductory course Parallel and High Performance Computing or a similar lecture is required.

Important Dates


Lecture slides will be made available chapter-by-chapter through this webpage.

Further Reading

Michael L. Scott "Shared-memory synchronization" Synthesis Lectures on Computer Architecture (2013). (Publisher's website)
Vijay Nagarajan, Daniel J. Sorin, Mark D. Hill, David A. Wood "A Primer on Memory Consistency and Cache Coherence, Second Edition" Synthesis Lectures on Computer Architecture (2020). (Publisher's website)
Anthony Williams "C++ Concurrency in Action", 2nd Edition (2017). (Publisher's website)
Maurice Herlihy, Nir Shavit "The Art of Multiprocessor Programming", Revised Reprint (2012). (Publisher's website)


Please register for the course on Uni2Work.


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