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.

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

Course evaluation

Properties

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

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.

 First Lecture: Mo. 7.3, 10:00

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
Mon10:00 - 12:0007.03.2022 - 27.06.2022EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu11:00 - 13:0028.04.2022 - 30.06.2022EI 5 Hochenegg HS Advanced Multiprocessor Programming
Advanced Multiprocessor Programming - Single appointments
DayDateTimeLocationDescription
Mon07.03.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon14.03.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon21.03.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon28.03.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon04.04.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon25.04.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu28.04.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon02.05.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu05.05.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon09.05.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu12.05.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon16.05.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu19.05.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon23.05.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon30.05.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu02.06.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu09.06.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon13.06.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Mon20.06.202210:00 - 12:00EI 5 Hochenegg HS Advanced Multiprocessor Programming
Thu23.06.202211:00 - 13:00EI 5 Hochenegg HS Advanced Multiprocessor Programming

Examination modalities

Exercises (hand-ins), project, oral examination

Exams

DayTimeDateRoomMode of examinationApplication timeApplication modeExam
Tue09:00 - 12:0028.06.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Tue13:00 - 17:0028.06.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Wed09:00 - 12:0029.06.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Thu09:00 - 12:0030.06.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Thu13:00 - 17:0030.06.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Fri09:00 - 12:0001.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Fri13:00 - 17:0001.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Mon09:00 - 12:0004.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Mon13:00 - 17:0004.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Tue09:00 - 12:0005.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung
Tue13:00 - 17:0005.07.2022 Parallel Computing, Treitlstraße 1-3, DG, 1040 Wienassessed07.06.2022 15:00 - 23.06.2022 22:00TISSPrüfung

Course registration

Begin End Deregistration end
11.02.2022 08:00 21.03.2022 23:00 18.04.2022 23:59

Curricula

Literature

No lecture notes are available.

Previous knowledge

Introduction to Parallel Computing

Preceding courses

Accompanying courses

Continuative courses

Miscellaneous

Language

English