- Parallelcomputer
-
Ein Parallelrechner ist ein Computer, in dem Operationen gleichzeitig auf mehreren CPUs ablaufen.
Es werden grob zwei Ausführungen von Parallelrechnern unterschieden:
Massiv-parallele Computer besitzen einige zehn bis einige tausend CPUs, die alle gleichzeitig die gleichen Operationen durchführen. Sie sind geeignet, regelmäßig aufgebaute Datensätze effizient zu bearbeiten. Anwendungsbeispiele finden sich in der Computational Physics oder in der Wettervorhersage.
Multithreading bietet einen anderen Zugang zum gleichzeitigen Ausführen mehrerer Anweisungen durch das Ausführen mehrerer Berechnungsfäden (Threads), die miteinander synchronisieren, etwa um Daten auszutauschen.
Parallelcomputer, auf denen mehrere Prozesse gleichzeitig laufen, verbessern ihre Arbeitsgeschwindigkeit, indem sie die Benutzerprogramme auf verschiedene CPUs verteilen.
Um die Leistungsfähigkeit eines Parallelrechners richtig ausnutzen zu können, muss die Programmierung genau auf die verteilte CPU zugeschnitten werden. Prinzipiell handelt es sich dabei um ein logistisches Problem. Es gilt die knappen Ressourcen – Rechenzeit, Speicherzugriffe, Datenbusse – effizient auszunutzen. Stets sollte der sequentielle Programm-Overhead minimal sein (Amdahlsches Gesetz).
Je größer die Anzahl der CPUs ist, desto schneller steigt der Kommunikationsaufwand in einer Parallelrechnerumgebung (egal welchen Typs) überproportional an. Der Zusammenhang ist nicht linear.
So gesehen muss das Optimum zwischen Anzahl der CPUs und Kommunikationsaufwand und Programmierung gefunden werden. Auch in der Art der Vernetzung der CPUs liegt ein Optimierungspotential. Ein sehr guter Kompromiss kann mit folgenden räumlichen Strukturen erzielt werden:
- Cube (Konfiguration aus 8 Rechnern. Vernetzung entspricht einem Quader (3-dimensionaler Quader))
- Hyper-Cube (4-dimensionaler Quader)
Siehe auch
- Amdahlsches Gesetz
- Computercluster
- Gustafsons Gesetz
- message passing
- Mehrprozessorsysteme
- Supercomputer
- Transputer
Weblinks
- Online Kurs Parallelrechner und Parallelisierungskonzepte Rechenzentrum Universität Karlsruhe 24. März 1998
- COPACOBANA (Cost-Optimized Parallel COde Breaker), ein FPGA-basierter Parallelrechner
Wikimedia Foundation.