Funktionen

Print[PRINT]
.  Home  .  Lehre  .  Vorlesungen  .  Wintersemester 2014/15  .  Parallel Computing

Parallel Computing: Grundlagen und Anwendungen

Vorlesung im Wintersemester 2014/2015
Prof. Dr. D. Kranzlmüller, Dr. K. Fürlinger,

Willkommen auf der Webseite zur Vorlesung Parallel Computing im Wintersemester 2014. Auf dieser Seite finden Sie sämtliche Informationen zur Vorlesung und zu den begleitenden Übungen.

Aktuelles

Nachholklausur

Die Nachholklausur zur Vorlesung Parallel Computing findet in der Form von mündlichen Prüfungen (etwa 30 Minuten) im Raum EU102 in der Oettingenstr. 67 statt. Eine Überbersicht über die verfügbaren Termine finden Sie hier:
14. April, 15:00: L. H.
16. April, 10:00: frei 16. April, 10:30: frei 16. April, 11:00: S. D. C. 16. April, 11:30: frei
16. April, 13:00: frei 16. April, 13:30: frei 16. April, 14:00: frei 16. April, 14:30: frei
17. April, 10:30: P. P. 17. April, 11:00: A. B. 17. April, 11:30: J. G.
17. April, 13:00: A. W. 17. April, 13:30: Q. C. 17. April, 14:00: Ch. B. 17. April, 14:30: K. Z.
28. April, 14:00: M. S.

Inhalt der Vorlesung


SuperMUC am LRZ.
Parallel Computing - Parallelrechnen - befasst sich mit der gleichzeitige Verwendung von mehreren Rechenkernen zur Lösung eines Problems. Das historische Einsatzgebiet von Parallelrechnern ist das technisch-wissenschaftliche Hoch- und Höchstleistungsrechnen (High Performance Computing, HPC) wo heute in Supercomputern häufig mehrere Zehntausend Rechenkerne zum Einsatz kommen.

Der Einsatzbereich von Parallelrechnern hat sich jedoch in den letzten Jahren in alle Bereiche der IT ausgedehnt. Alle Server, Desktop und Notebook CPUs sind heute mit Multicore CPUs ausgestattet und seit kurzem folgen auch Smartphones und Tablets diesem Trend. In jedem Fall kann nur durch explizite parallele Programmierung das volle Potential einer solchen Platform ausgenutz werden und Parallelrechnen wird zusehends zur "must have" Qualifikation für IT Fachleute.

Die Vorlesung umfasst drei große thematisch verwobene Felder: Parallele Architekturen, Algorithmen und Programmierung. Ziel ist die Vermittlung von fundamentalen Grundlagen des Erkennens von parallelen Abläufen in Anwendungsproblemen und deren effiziente Umsetzung. Die behandelten Platformen werden in Kooperation mit dem Leibniz Rechenzentrum von Smartphone über GPU bis zum Supercomputer reichen und die effizeinte Realisierung von wichtigen Algorithmen wird beispielhaft dargestellt werden.

Die Vorlesung basiert teilweise auf Material das an der UC Berkeley entstanden ist und das von der US-amerikanischen National Science Foundation (NSF) als Grundlage für die bie Entwicklung von Unterrichtsmaterial für Parallel Computing ausgewählt und gefördert wurde. Die Vorlesungsunterlagen werden deshalb überweigend in englischer Sprache vorliegen, die Vorlesung selbst wird aber auf Deutsch gehalten.

Im Rahmen der Vorlesung werden wir uns bemühen, der Relevanz des Themas durch Gastbeiträge externer Experten Rechnung zu tragen. Diese Vorträge können teilweise in englischer Sprache gehalten werden.

Teilnahme

Die Vorlesung richtet sich an Studenten der Informatik bzw. Medieninformatik (Diplom) nach dem Vordiplom sowie an Studenten der Informatik, Bioinformatik bzw. Medieninformatik (Bachelor, Master) im Rahmen der vertiefenden Themen der Informatik. Für Vorlesung und Übung werden 6 ECTS-Punkte vergeben.

Termine

Bitte beachten Sie, dass die Zeit- und Ortsangaben vorläufig sind und sich bis zum Beginn des Wintersemesters noch ändern können!
  • Vorlesung: Freitag 9 Uhr bis 12 Uhr, im Raum BU101 in der Oettingenstr. 67. Die Vorlesung findet zum ersten Mal am Freitag 10. Oktober 2014 statt.
  • Übungen: Donnerstag 14 Uhr bis 16 Uhr, im Raum 123 in der Oettingenstr. 67. Die Übungen finden zum ersten Mal am Donnerstag 23. Oktober 2014 statt.
  • Aktuelle Terminänderungen oder neue Termine werden unter Aktuelles angekündigt .
  • Gastvortrag: Am Freitag 23.01.2015 um 10:30 Uhr hält Herr Dr. Tobias Schüle (Siemens) einen Gastvortrag in der Vorlesung.

    Dr. Tobias Schüle (Siemens): Nebenläufigkeitsfehler -- Vorbeugen ist besser als heilen

    Zusammenfassung: Um die Leistung moderner Multicore-Prozessoren ausschöpfen zu können, müssen die auszuführenden Anwendungen parallelisiert werden. Dies führt zu neuen Herausforderungen, unter anderem weil klassische Testverfahren nicht ausreichen, um die Korrektheit paralleler Programme sicherzustellen. Im ersten Teil des Vortrags werden typische Fallstricke bei der parallelen Programmierung anhand von Beispielen aus der Praxis aufgezeigt. Außerdem wird erläutert, welche Architektur- und Implementierungsentscheidungen Nebenläufigkeitsfehler provozieren. Der zweite Teil des Vortrags widmet sich der Fehlererkennung. Dabei werden verschieden Ansätze vorgestellt, von einfachen Testverfahren bis hin zu speziellen Analysemethoden. Im dritten Teil wird gezeigt, wie durch Einhaltung gewisser Regeln die Fehlerwahrscheinlichkeit reduziert werden kann. Dazu gehören neben Best Practices grundlegende Entwurfsmuster und Richtlinien für den Schnittstellentwurf.

Übungsbetrieb

Die Übungsblatter finden sie auf UniworX.

Skript

Das Vorlesungsskriptum wird kapitelweise auf dieser Seite veröffentlicht.

Literatur

Ananth Grama et al. Introduction to Parallel Computing (2nd Ed.)
David Culler and Jaswinder Pal Singh Parallel Computer Architecture, A Hardware/Software Approach
John Hennessy and David Patterson Computer Architecture a Quantitative Approach (5th Ed.)
G. Hager et al. Introduction to High Performance Computing for Scientist and Engineers
Barbara Chapman et al. Using OpenMP

Anmeldung

Die Anmeldung zur Vorlesung erfolgt über UniWorX. Weiter zur Anmeldung...

Kontakt/Sprechstunde

Per E-Mail bzw. nach den Übungen und Vorlesungen oder nach Vereinbarung.