64-656 Vorlesung Parallele und verteilte Algorithmen

Veranstaltungsdetails

Lehrende: Dr. Dominik Schallmoser

Veranstaltungsart: Vorlesung + Übung

Anzeige im Stundenplan: VL+Üb PVA

Semesterwochenstunden: 2

Credits: 3,0

Unterrichtssprache: Deutsch / Englisch

Min. | Max. Teilnehmerzahl: - | 20

Kommentare/ Inhalte:
Inhalt

Verteilte Systeme sind ein Zusammenschluss von Rechnern, die miteinander kommunizieren um ein gemeinsames Problem zu lösen. Diese Definition umfasst sowohl lose gekoppelte Systeme wie beispielsweise Sensornetzwerke oder das „Internet-of-Things", als auch hochintegrierte Parallelrechner einschließlich Multiprozessorsysteme und GPUs. Da in einem verteilten System die Komponenten in der Regel keinen gemeinsamen Speicher und keinen gemeinsamen Takt besitzen, ist die Entwicklung von Algorithmen für verteilte Systeme oftmals sehr schwierig.

In diesem Kurs stellen wir zwei fundamentale Modelle für verteilte und parallele Systeme vor: Message Passing und Shared Memory. Wir betrachten jeweils zuerst grundlegende Eigenschaften der Modelle, um dann verschiedene Algorithmen in diesen Modellen zu beschreiben und zu analysieren.

Im Message-Passing-Modell betrachten wir ein System, in dem Prozessoren durch den Austausch von Nachrichten miteinander kommunizieren. In diesem Modell betrachten wir Algorithmen für einfache Kommunikationsaufgaben wie z.B.

- Broadcast,
- Leader Election oder
- Synchronisation.

Im Shared-Memory-Modell gehen wir davon aus, dass Prozesse miteinander kommunizieren, indem sie auf gemeinsame Objekte im Speicher lesend/schreibend zugreifen. In diesem Modell betrachten wir z.B. Algorithmen für

- Mutual Exclusion oder
- Wait-Free Protokolle.

Abschließend erörtern wir weitere Modelle wie z.B.

- Selbst-Stabilisierung oder
- Populationsprotokolle.

Integrierte Übungen

Zur Vertiefung der Inhalte der Vorlesung werden in integrierten Übungen ausgewählte Probleme durch Studierende entweder in Heimarbeit oder gemeinsam in der Vorlesung bearbeitet und präsentiert.
Sprache

Die Vortragssprache (Deutsch oder Englisch) wird in Absprache mit den Studierenden zu Beginn der Vorlesung festgesetzt. Sämtliche Beiträge der Studierenden können wahlweise auf Deutsch oder Englisch erfolgen.


Seminar

Das Seminar findet geblockt gegen Ende des Semesters statt. Der genaue Termin wird in Absprache mit den Studierenden vereinbart. Während des Semesters werden individuelle Themen vergeben, die von den Studierenden ausgearbeitet und präsentiert werden. Abschließend ist eine schriftliche Ausarbeitung anzufertigen. Die Präsentationen sollen pro Person ca. 35-45 Minuten dauern und die schriftliche Ausarbeitung soll ca. 10 Seiten umfassen.

 

Literatur:
James Aspnes: Notes on Theory of Distributed Systems. http://www.cs.yale.edu/homes/aspnes/classes/465/notes.pdf

Hagit Attiya and Jennifer Welch. Distributed Computing: Fundamentals, Simulations, and Advanced Topics. Wiley, second edition, 2004.

Ajay D. Kshemkalyani and Mukesh Singhal: Distributed Computing. Principles, Algorithms, and Systems. Cambridge, 2008.

Nancy A. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.

Zusätzliche Hinweise zu Prüfungen:
Die Leistungsbeurteilung erfolgt anhand einer mündlichen Prüfung.

Termine
Datum Von Bis Raum Lehrende
1 Mo, 12. Apr. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
2 Mo, 19. Apr. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
3 Mo, 26. Apr. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
4 Mo, 3. Mai 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
5 Mo, 10. Mai 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
6 Mo, 17. Mai 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
7 Mo, 31. Mai 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
8 Mo, 7. Jun. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
9 Mo, 14. Jun. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
10 Mo, 21. Jun. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
11 Mo, 28. Jun. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
12 Mo, 5. Jul. 2021 12:15 13:45 Digital Dr. Dominik Schallmoser
Prüfungen im Rahmen von Modulen
Modul (Startsemester)/ Kurs Prüfung Datum Lehrende Bestehens­pflicht
Übersicht der Kurstermine
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
Lehrende
Dr. Dominik Schallmoser