Description |
Parallele Systeme dominieren zunehmend die Rechnerlandschaft: Die Beispiele reichen von 2-Prozessor PCs, über Cluster von PCs und Workstations, bis Höchstleistungsrechner (Supercomputer) und dem gesamten Internet. Die Anwendungsfelder sind: Klima- und Genforschung, Flug- und Kraftfahrzeugbau, verteilte Datenbanken, etc. Das Programmieren derartiger Systeme stellt jedoch eine große Herausforderung dar, weil eine Reihe spezifischer Aspekte im Prozeß der Softwareentwicklung berücksichtigt werden: Kommunikation, Synchronisation, Skalierbarkeit, etc.
Die Vorlesung bietet eine grundlegende Einführung in das Gebiet der Softwareentwicklung für parallele Systeme: Parallele Rechnerarchitekturen, Programmierparadigmen und -modelle, moderne Programmierumgebungen, sowie Methoden zur Analyse und Optimierung paralleler Algorithmen und Software. |