184.726 Advanced Multiprocessor Programming
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2020S, VU, 3.0h, 4.5EC
Lecture TubeTUWEL

Properties

  • Semester hours: 3.0
  • Credits: 4.5
  • Type: VU Lecture and Exercise
  • LectureTube course

Learning outcomes

After successful completion of the course, students are able to

  • Appreciate fundamental synchronization and coordination problems for shared-memory multiprocessors, including fundamental limitations
  • Understand, exploit and cope with memory models and behavior
  • Understand and apply basic concepts for lock-based, lock- and wait-free algorithms
  • Apply fundamental lock-free algorithms and data structures (lists, stacks, queues...)
  • Understand concepts and implementations of work-stealing schedulers

Subject of course

Memory models, synchronization problems, operations and primitives, atomic operations, consensus, impossibility and universality results, locks, lock- and wait-free data structures (lists, stacks, queues,
hashtables, search structures, ...), work-stealing. Practical implementation project (C/C++ with pthreads, Java, ...)

Book: Herlihy, Shavit: The Art of Multiprocessor Programming. Morgan Kaufmann, Revised First Edition, 2012.

Lecture slides, additional papers.

Teaching methods

Lectures and discussion, active participation, blackboard exercises, project work

Mode of examination

Immanent

Additional information

ECTS Breakdown

  • Overview, seminar room 384, planning: 2h
  • Lectures: 15x2h = 30h
  • Lecture preparation and digestion: 15x1.5h = 22.5h
  • Projects and Exercises: 50h
  • Oral exam/project presentation, including preparation: 8h

Total: 112.5h = 4.5 ECTS

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Mon09:00 - 11:0002.03.2020 - 09.03.2020EI 1 Petritsch HS Advanced Multiprocessor Programming
Thu08:00 - 11:0005.03.2020 - 12.03.2020EI 6 Eckert HS Advanced Multiprocessor Programming
Tue10:00 - 12:0021.04.2020 - 26.05.2020EI 8 Pötzl HS Vorlesung
Advanced Multiprocessor Programming - Single appointments
DayDateTimeLocationDescription
Mon02.03.202009:00 - 11:00EI 1 Petritsch HS Advanced Multiprocessor Programming
Thu05.03.202008:00 - 11:00EI 6 Eckert HS Advanced Multiprocessor Programming
Mon09.03.202009:00 - 11:00EI 1 Petritsch HS Advanced Multiprocessor Programming
Thu12.03.202008:00 - 11:00EI 6 Eckert HS Advanced Multiprocessor Programming
Tue21.04.202010:00 - 12:00EI 8 Pötzl HS Vorlesung
Tue28.04.202010:00 - 12:00EI 8 Pötzl HS Vorlesung
Tue05.05.202010:00 - 12:00EI 8 Pötzl HS Vorlesung
Tue12.05.202010:00 - 12:00EI 8 Pötzl HS Vorlesung
Tue19.05.202010:00 - 12:00EI 8 Pötzl HS Vorlesung
Tue26.05.202010:00 - 12:00EI 8 Pötzl HS Vorlesung

Examination modalities

Exercises (hand-ins), project, oral examination

 

Course registration

Begin End Deregistration end
14.02.2020 08:00 30.03.2020 23:00 01.06.2020 23:59

Curricula

Literature

No lecture notes are available.

Previous knowledge

Introduction to Parallel Computing

Preceding courses

Accompanying courses

Continuative courses

Miscellaneous

Language

English