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
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
- Dataflow approaches
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.
Lecture slides will be made available chapter-by-chapter through this
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
and/or after the
lecture and lab exercises.