Navigation

Parallele Systeme

Dozenten:

Prof. Dr.-Ing. J. Teich, Dr.-Ing. F. Hannig

Modulbeschreibung:

Parallele Systeme (VU) und
Parallele Systeme mit erweiterter Übung (VEU)

Umfang/Stunden:

V2 + Ü2 (zusammen 5 ECTS), mit erweiterter Übung (7,5 ECTS)

Ort und Zeit der Vorlesung:

Dienstag, 14:15 – 15:45, Raum 01.255-128

Anmeldung über StudOn

Ort und Zeit der Übungen:

Mittwoch, 12:15 – 13:45 Uhr, Raum 01.151-128 (Ayesha Afzal)

Donnerstag, 14:15 – 15:45 Uhr, Raum 02.133-128 (Christian Schmitt)

Ort und Zeit der erweiterten Übungen:

1. erweiterte Übung:

Montag, 14.05.2018, 9:00 – 12:45 Uhr, Raum 02.133-128

2. erweiterte Übung:

Montag, 18.06.2018, 9:00 – 12:45 Uhr, Raum 02.133-128

3. erweiterte Übung:

Montag, 02.07.2018, 9:00 – 12:45 Uhr, Raum 02.133-128

Unterlagen (Folien, Übungen, sonstige Dateien):

Alle Unterlagen zur Vorlesung, Übung und erweiterten Übung finden sich in StudOn.

Prüfung:

Die Prüfung wird schriftlich und auf deutsch abgehalten werden.

Die Einsichtnahme in die Klausur findet am Donnerstag, 26.07.2018, 14:00 bis 14:30 Uhr in Raum 02.112-128 statt.

Zielsetzung:

Schwerpunkt der Vorlesung ist die Vermittlung von Grundlagen der parallelen Datenverarbeitung.

Inhalt:

Selbst unser PC erlaubt bereits ein hohes Maß an nebenläufiger Verarbeitung von Daten. Die effiziente Ausnutzung von Parallelität bedarf allerdings mehr als nur mehrerer Prozessoren; insbesondere muss das zu lösende Problem Parallelverarbeitung erlauben. Beschrieben werden Eigenschaften unterschiedlicher paralleler Rechnerarchitekturen und Metriken zu deren Beurteilung. Weiterhin werden Modelle und Sprachen zum Programmieren paralleler Rechner eingeführt. Neben der Programmierung von allgemeinen Parallelrechnern werden Entwurfsmethoden (CAD) vorgestellt, wie man ausgehend von einer algorithmischen Problemstellung ein massiv paralleles Rechenfeld in VLSI herleiten kann, das genau dieses Problem optimal parallel berechnet. Solche Schaltungen spielen auf der Bit- bzw. Wortebene (Arithmetik) sowie bei Problemen der Signal- und Bildverarbeitung (z.B. Filter) eine dominante Rolle.Im Einzelnen werden behandelt:

  1. Theorie der Parallelität (parallele Computermodelle, parallele Spezifikationsformen und -sprachen, Performanzmodelle und -berechnung)
  2. Klassifikation paralleler und skalierbarer Rechnerarchitekturen (Multiprozessoren und Multicomputer, Vektorrechner, Datenflussmaschinen, VLSI-Rechenfelder)
  3. Programmierbare System-on-Chip (SoC) Architekturen
  4. Programmierung paralleler Rechner (Sprachen und Modelle, Entwurfsmethoden und Compiler, Optimierung)
  5. Massive Parallelität: Vom Algorithmus zur Schaltung

Theoretische und praktische Übungen mit rechnergestützten Werkzeugen vertiefen das Wissen.

Vertiefende Literatur:

  • Kai Hwang, „Advanced Computer Architecture: Parallelism, Scalability, Programmability“
  • Michael Wolfe, „High Performance Compilers for Parallel Computing“
  • Alain Darte, Yves P. Robert, Frederic Vivien, „Scheduling and Automatic Parallelization“
  • Utpal Banerjee, „Loop Parallelization (VLSI, Computer Architecture and Digital Signal Processing)“
  • S. Y Kung, „VLSI Array Processors“