22.12.2013 Aufrufe

Verbindungsnetzwerke für parallel und verteilte Systeme.pdf

Verbindungsnetzwerke für parallel und verteilte Systeme.pdf

Verbindungsnetzwerke für parallel und verteilte Systeme.pdf

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Latenzzeit<br />

pro Speicherzugriff<br />

x<br />

x<br />

o<br />

o<br />

Band=<br />

breite=<br />

limits<br />

Durchsatz<br />

o o o o<br />

o<br />

x x x x x x<br />

o<br />

x o<br />

x x x x o x<br />

x<br />

1 x x x xx x<br />

x<br />

o o o o o o oo o<br />

o<br />

o<br />

o<br />

1<br />

Zahl der<br />

Zahl der<br />

1<br />

Prozessoren<br />

Prozessoren<br />

Bild 1.9: Speichersättigung mit (o) <strong>und</strong> ohne (x) Maßnahmen 1 - 4.<br />

zu bearbeiten, ohne daß die Prozessoren durch die im Vergleich zum Bus relativ<br />

lange Speicherzykluszeit blockiert werden (asynchrones Schreiben <strong>und</strong><br />

Lesen). Dies ist insbesondere zusammen mit einer mehrfädigen Programmausführung<br />

(Multi Threading), bei der extrem schnell von einem Prozeßfaden<br />

zum nächsten umgeschaltet wird, von großem Vorteil, da die Zugriffszeit auf<br />

Variable im Speicher <strong>für</strong> andere Prozeßfäden genutzt wird (Latency Hiding).<br />

Diese Methode bietet bei Parallelrechnern ein großes Anwendungspotential<br />

<strong>und</strong> ist relativ preisgünstig zu realisieren.<br />

• Pipelining: Gemeinsame Speichermodule mit Pipelining bedeutet, daß der<br />

Speicherzugriff in atomare Einheiten, wie 'Adresse anlegen', 'Buspuffer umschalten'<br />

etc., zerlegt wird, die dann in einer Pipeline verkettet werden können.<br />

Die Speicherzugriffszeiten <strong>für</strong> voneinander unabhängige Zugriffe reduzieren<br />

sich in diesem Fall auf die Bearbeitungszeit der langsamsten<br />

Pipelinestufe. Speicher-Pipelining wird seit 2 Jahrzehnten bei den Vektor-<br />

Supercomputern angewandt <strong>und</strong> ist auch bei Parallelrechnern sinnvoll.<br />

Zwei kommerzielle Beispiele der Bus/Speicherkopplung mit multiplen Kommunikationsspeichern<br />

sind der Sequent <strong>und</strong> der ELXSI Rechner, die in Bild<br />

1.10 <strong>und</strong> Bild 1.11 dargestellt sind.<br />

Eine weitere wesentliche Verbesserung von Durchsatz <strong>und</strong> Latenzzeit des<br />

Kommunikationssystems kann durch zusätzliche Lokalspeicher erzielt werden,<br />

die den Zugriff auf gemeinsame Module M 1 - M m nur <strong>für</strong> das Lesen <strong>und</strong> Schreiben<br />

auch gemeinsam genutzter Variablen erforderlich machen (Bild 1.12). Alle<br />

nicht gemeinsamen Daten werden in den Lokalspeichern L 1 - L n gehalten. Diese<br />

sind nicht über den Systembus zugänglich, sondern über lokale Speicherbusse,<br />

<strong>und</strong> können deshalb <strong>parallel</strong> adressiert werden, so daß die Sequentialisierung<br />

der Kommunikation aufgehoben wird, die einen prinzipiellen<br />

Engpaß der Bus/Speicherkopplung darstellt. Der zweite Vorteil dieser Archi-<br />

13

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!