Inhalt

[ 201SYMBIPDV23 ] VL Introduction to parallel and distributed computing

Versionsauswahl
(*) Leider ist diese Information in Deutsch nicht verfügbar.
Workload Ausbildungslevel Studienfachbereich VerantwortlicheR Semesterstunden Anbietende Uni
3 ECTS B3 - Bachelor 3. Jahr Mathematik Wolfgang Schreiner 2 SSt Johannes Kepler Universität Linz
Detailinformationen
Quellcurriculum Bachelorstudium Technische Mathematik 2023W
Ziele Die Studierenden sind in der Lage, Programme für parallele Systeme (Multi-Core-Prozessoren und Multi-Prozessor-Architekturen) mit Hilfe verschiedener weit verbreiteter anwendungs-orientierter paralleler Programmier-Modelle auf höherer Ebene zu entwickeln. Sie verstehen die grundlegenden Probleme der Nebenläufigkeit, wie Data Races und Leistungsengpässe, und sind in der Lage, sie zu lösen, um korrekte und skalierbare Programme zu schreiben, die die Ressourcen moderner Hochleistungs-Rechensysteme effektiv nutzen. Weiters sind die Studierenden imstande, die Leistung ihrer Programme auf systematische Weise experimentell zu evaluieren.
Lehrinhalte Parallele Programmiermodelle höherer Abstraktionsstufe:

  • Automatische Parallelisierung.
  • OpenMP.
  • Java Concurrency API.
  • MPI.

Grundlagen der parallelen Software-Entwicklung:

  • Parallele Architekturen.
  • Leistungsauswertung.
  • Paralleler Programmentwurf.
  • Parallele Algorithmen.
Beurteilungskriterien Programmieraufgaben, die auf einem Hochleistungsrechner der JKU durchgeführt werden.
Lehrmethoden Folien-basierte Präsentationen mit Fallstudien auf der Tafel und Live-Demonstrationen auf einem lokalen Computer beziehungsweise Server in einem Rechenzentrum.
Abhaltungssprache English
Literatur Vorlesungsfolien und freie Materialien über parallele Programmier-APIs (Java, OpenMP, MPI, POSIX Threads, C++), die über die Kurs-Seite verfügbar sind.

Zusätzliche Literatur:

  • Peter Pacheco and Matthew Malensek: An Introduction to Parallel Programming, 2nd edition. Morgan Kaufmann, 2021.
  • Roman Trobec et al: Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms, Springer, 2018.
  • Bertil Schmidt et al.: Parallel Computing - Concepts and Practice, Morgan Kaufmann, 2017.
  • Thomas Rauber and Gudula Rünger: Parallel Programming for Multicore and Cluster Systems, Springer, 2013.
  • Michael J. Quinn: Parallel Programming in C with with MPI and OpenMP, McGraw-Hill, 2003.
  • Ian Foster: Designing and Building Parallel Programs, Addison-Wesley, 1995.
Lehrinhalte wechselnd? Nein
Sonstige Informationen https://risc.jku.at/courses/
Frühere Varianten Decken ebenfalls die Anforderungen des Curriculums ab (von - bis)
201LOSDIPDV20: VL Introduction to parallel and distributed computing (2020W-2023S)
TM1WIVOPVRE: VL Einführung in paralleles und verteiltes Rechnen (2003S-2020S)
Präsenzlehrveranstaltung
Teilungsziffer -
Zuteilungsverfahren Direktzuteilung