Parallele Algorithmen

  • Type: lecture
  • Chair: Prof. Dr. Peter Sanders
  • Location: SR 236, Geb. 50.34
  • Time: Dienstag 15.45-17.15 Uhr
  • Start: 12.04.2011
  • Lecturer: P. Sanders
  • Lv-No.: 24602
  • Exam: Ja

Hinweise zur Programmieraufgabe

Der entgültige Abgabetermin für die Programmieraufgabe ist Sonntag der 21. Oktober 2012. Die Abgabe besteht aus ihrem Quellcode und einer oder zwei A4 Seiten, die ihre Aufgabe, ihre Implementierung (z.B. Pseudocode) und ihre Experimente beschreiben. Bitte senden Sie die Abgabe ca. 2 Wochen vor dem Abgabetermin an ihren Betreuer und vereinbaren Sie dann einen Termin mit ihrem Betreuer zur Erläuterung des Programms.

 

Hinweise zur Prüfung

Sie müssen sich vor der Prüfung am Studierendenportal für diese Veranstaltung anmelden; falls zwei Einträge "Parallele Algorithmen" bei Ihnen vorhanden sind, wählen Sie bitte die Nummer 13331. Termine für die mündliche Prüfung vereinbaren Sie bitte mit Herrn Prof. Sanders direkt per E-Mail.

Einführung

    Von billigen Mikroprozessoren, die Multithreading unterstützen bis zu Peer-to-Peer-Netzwerken mit Millionen beteiligter Computer wird Parallelverarbeitung von einer Spezialanwendung für wissenschaftliches Rechnen zunehmend zur Conditio sine qua non, wenn es um effektive Ausnutzung moderner Computertechnik geht.

                                


    Diese Vorlesung erklärt grundlegende algorithmische Techniken zur Beherrschung paralleler Rechner.

  • Einfache Programmiermodelle, die den Entwurf portabler und skalierbarer paralleler Algorithmen erlauben.
  • Grundlegende Kommunikationsmuster zwischen Prozessoren und ihre effektive Implementierung.
  • Lastverteilung: wie kann man komplizierte Berechnungen so verteilen, dass alle Prozessoren gleich viel zu tun haben?
  • Wie parallelisiert man grundlegende sequentielle Algorithmen: Sortieren, Datenstrukturen, Graphenalgorithmen, ...

    Die Vorlesung ist so angelegt, dass sie mit Vorlesungen aus den Vertiefungsgebieten Parallelverarbeitung und Algorithmik gleichermaßen gut kombinierbar ist, d. h. geringe Überlappungen und keine Vorraussetzungen jenseits der Algorithmentechnik.