Kapitel 7
Parallelverarbeitung:
sequentielle Verarbeitung:Folge von Verarbeitungsaktionen auf Daten.
sequentielle Verarbeitung durch Von - Neumann - Rechner: ( strukturiert in Datensätze: Eingabe - und Ausgabedaten )
Abb. 7-1: sequentielle Verarbeitung
![]()
Abb. 7-2: Verarbeitung im Von - Neumann Rechner
SISD -Maschine: | Single Instruction Single Data Stream |
Problemfluß = Datenfluß | Aktionsfluß aus Instruktionsfluß |
A) Freizügig einsetzbare Stationen:
Arbeit der einzelnen Stationen stark voneinander entkoppelt !
Stationen universell: aufwendig, teuer !
B) Feld gleichartiger Stationen:
gleicher Takt, Beiträge der Stationen benötigen diesselbe Zeit
C) Fließband spezialisierter Stationen:
spezialisierte Stationen: Arbeitsteilung, gleicher Takt
Grobe Sicht: Sequenz
Feine Sicht: überlagernde Teilsequenzen
D) Netz von Stationen:
Synchronisation entsprechender Problemflußabhängigkeiten
Von - Neumann - Rechner: Ebenen der Arbeit
|
|
A) logisch
- Barrieren:
Datenflußabhängigkeiten
- Geeignete Algorithmen
B) technisch
- Zentraler Speicher: Leistungsfähigkeit des Zugangs ( Datenrate )
Lösungsansätze: | |
- schneller Zwischenspeicher ( Cache ) - Speicherbänke |
Neuere Lösungsansätze:
- Aufgliederung des zentralen Speichers:
|
- Verzicht auf Variablen in Algorithmen:
|
Topologie: voll vermascht
sehr viele Stationen:
- Hardware - Aufwand
- Erweiterbarkeit
- Fehlertoleranz
Topologien: Ringe, Würfel, Bäume, ...
- Routing: Wegefindung; Weiterleitung
technische Neuerungen:
- optimierte Übertragung ( Gigabit /
sec )
- Bus ( vereinfachtes Routing )
- Bus - Hierarchie
Konzeptionell: Zwei - Punkt - Verbindung => Gruppenkommunikation
z. B. : Transputer - Netz
Connection Maschine: ( SIMD )
aber Single Makro Instruction jeder Zelle ebenfalls programmgesteuert:
- Datenverknüpfung
- Routing in vorgeprägten Mustern
|
Eingabemuster: |
|
|||||
Maske: |
|
|||||
Treffer: | ||||||
|
2 => 7 => 10 => |
|
||||
Beispiel für Treffer: |
|
Verarbeitungsfunktion je Bit im Speicher:
- einfache Funktion: Gleichheit mit Eingabebit
Verarbeitungsfunktion je Wert im Speicher:
- einfache Funktion: Gleichheit aller nicht-maskierten Bits
Verarbeitungsfunktion für Speicher insgesamt:
- Treffer - Anzahl zur Ausgabeadressierung
Ansatz: Verzicht auf Variablenkonzept, d. h. permanenter Speicher
Algorithmen funktional Operanden => Operation => Ergebnis
Synchronisation nur entsprechend Datenfluß
Problem: |
|
am Beispiel: m! - Berechnung
Realisierung: