Dieses Lehrbuch gibt eine Einführung in das Gebiet der parallelen Programmierung und richtet sich vor allem an Studenten der Informatik im Hauptstudium. Nach den Grundlagen folgen die Gebiete der "konventionellen" asynchronen parallelen Programmierung und der synchronen "massiv parallelen" oder daten-parallelen Programmierung mit tausend oder mehr Prozessoren. Den Abschluß bilden weitere parallele Modelle, die nicht einem dieser beiden Gebiete zugeordnet werden können, die automatische Parallelisierung und Vektorisierung sowie Leistungsbetrachtungen. Das Buch entstand aus dem Skript zur gleichnamigen Vorlesung, die vom Autor an der Universität Stuttgart gehalten wurde. Begleitende Praktika und Seminar ergänzten den Themenbereich, an denen sich die Übungen zu den jeweiligen Kapiteln orientieren.
Inhaltsverzeichnis
Grundlagen.- Klassifikationen.- Petri-Netze.- Konzepte der Parallelverarbeitung.- Verbindungsstrukturen.- Asynchrone Parallelität.- Aufbau eines MIMD-Rechners.- Synchronisation und Kommunikation in MIMD-Systemen.- Probleme bei asynchroner Parallelität.- MIMD-Programmiersprachen.- Grobkörnig parallele Algorithmen.- Synchrone Parallelität.- Aufbau eines SIMD-Rechners.- Kommunikation in SIMD-Systemen.- Probleme bei synchroner Parallelität.- SIMD-Programmiersprachen.- Massiv parallele Algorithmen.- Weitere Modelle der Parallelität.- Automatische Parallelisierung und Vektorisierung.- Nicht-prozedurale parallele Programmiersprachen.- Neuronale Netze.- Leistung von Parallelrechnern.