Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

21.03.1997 - 

Serie: Multiprozessor-Architekturen(Teil 3)

Das Multi-CPU-System als alternativer Mainframe

Die COMPUTERWOCHE berichtet in loser Folge über Multiprozessor-Architekturen. Diese Rechnerentwürfe sollen, glaubt man deren Protagonisten, als alternative Mainframe-Konzepte herkömmliche Großrechner auf lange Sicht ablösen. Praktisch kein Hersteller, der nicht ein symmetrisches Multiprozessor-System (SMP-System) anbieten würde.

Bisher sind in der CW Artikel zu Sequents "Numa-Q"-Rechnern und zu Data Generals "Numaline"-Systemen erschienen. Der vorliegende Text erläutert grundlegende Architekturen von Parallelsystemen. Die Fortsetzung in der kommenden Ausgabe geht intensiv auf SGIs Numa-Umsetzung bei den "Origin"-Systemen ein (siehe auch Grafik auf Seite 38).

Es gibt im Prinzip vier Klassen von Parallelsystemen, die heutzutage am Markt erhältlich sind:

-Massiv-parallele Systeme (MPP = Massively Parallel Processing), die auch Message-Passing-Systeme oder Distributed-Memory-Systeme genannt werden;

-Cluster-Systeme sind MPP-Systemen ähnlich, basieren aber auf SMP-Knoten;

-daneben gibt es SMP-Architekturen, die auch als Shared-Memory-Multiprocessor-Systeme bezeichnet werden; und schließlich

-Parallel-Vector-Processor- (PVP-)Systeme.

Bei MPP-Maschinen stellen die einzelnen Prozessoren je einen Rechenknoten dar. Diese sind über Hochgeschwindigkeitsverbindungen zu einer CPU-Vernetzung verkettet. Die einzelnen Prozessoren sind dabei in der Regel nicht mit I/O-Subsystemen verbunden. Beispiele für solche Maschinen wären Intels "Paragon" oder Crays "T3E".

Vorteil dieser Rechnerarchitektur ist, daß sie sich vergleichsweise extrem leicht auf Hunderte, ja Tausende Prozessorknoten skalieren läßt. Der wesentliche Nachteil von MPP-Systemen besteht darin, daß Software-Anwendungen, die diese Maschinen voll ausnutzen können sollen, an deren Message-Passing-Architektur angepaßt beziehungsweise neu geschrieben werden müssen. Darüber hinaus generieren solche MPP-Architekturen durch ihr Message-Passing-Verfahren einen erheblichen Overhead, was sich wiederum auf die Gesamtleistung des Systems auswirkt.

Bei Cluster-Parallel-Architekturen werden die einzelnen Prozessor- durch SMP-Knoten ersetzt. Beispiele sind IBMs SP2-Maschinen aus der RS/6000-Familie, Digital Equipments (DECs) "Trucluster"-Systeme oder SGIs "Powerchallenge"- Arrays.

Die Cluster-Entwürfe unterscheiden sich von MPP-Architekturen dadurch, daß bei ih- nen die Netzverbindung zwischen den Rechnerknoten nicht direkt an den Speicherbus andockt, sondern an I/O-Subsysteme. Cluster-Knoten besitzen je eigene I/O-Controller, Festplatten etc. Das heißt auch, daß Cluster keine so enge Kopplung der Prozessoren kennen wie MPP-Maschinen.

Das hat Nachteile: Da die Prozessoren und die Speicher nicht so eng miteinander verbunden sind wie bei MPP-Systemen, fällt zwischen den Knoten in Cluster-Anlagen noch mehr Kommunikation an als bei MPP-Systemen. Wie MPP-Maschinen haben darüber hinaus auch Cluster den Nachteil der Message-Passing-Programmierung.

Die Systemleistung leidet zudem auch an dem durch die Datenkommunikation entstehenden Overhead.

SMP-Rechner unterscheiden sich von MPP- und Cluster-Konzepten relativ stark. Generell werden in diesen Systemen mit verteilten Arbeitsspeichern (shared memory) eine gewisse Anzahl von Prozessoren über einen Hochgeschwindigkeitsbus miteinander verbunden, der sich zum einen durch hohe Bandbreiten, zum anderen durch niedrige Latenzzeiten zum Arbeitsspeicher wie auch den I/O-Systemen auszeichnet. SMP-Systeme nutzen ein sogenanntes Snoopy-Cache-Kohärenzverfahren, um die Auslastung der Prozessoren hoch, die Busbelastung hingegen gering zu halten.

Beispiele für solche Architekturen sind SGIs "Powerchallenge", Suns "Ultraserver" oder DECs "Alphaserver" sowie PC-Server unterschiedlicher Provenienz mit zwei und vier Prozessoren.

Der wesentliche Vorteil dieser SMP-Maschinen ist das Shared-Memory-Programmier-Modell, weil dieses dem Uni-Prozessor-Modell viel anverwandter ist als das Message-Passing-Verfahren. Shared-Memory-Architekturen erlauben auch eine niedrigere Latenzzeit bei der Kommunikation zwischen Prozessoren. Schließlich können der große gemeinsame Arbeitsspeicher sowie die I/O-Ressourcen in einer SMP-Architektur von allen Prozessen, die auf dem System laufen, angesprochen werden. Dies ist bei verteilten Ressourcen, wie sie bei MPP- und Cluster-Systemen zu finden sind, grundsätzlich anders.

Geringe Latenzzeiten mit Vektorprozessoren

PVP-Systeme unterscheiden sich von MPP-, SMP- und Cluster-Architekturen unter anderem durch die Tatsache, daß sie spezialisierte, eben Vektor-Prozessoren nutzen, anstelle von Mikroprozessoren von der Stange. Die Vektorprozessoren greifen zudem direkt über Hochgeschwindigkeitsverbindungen auf Hauptspeicher des PVP-Systems zu. Sie besitzen keinen zwischengeschalteten Cache-Speicher. Solche Systeme erzielen einen hohen Datendurchsatz, weil sie die Latenzzeit vom Prozessor zum Hauptspeicher durch Vektoroperationen kaschieren, anstatt individuelle Datenworte zu benutzen.

Beispiele für PVP-Architekturen sind insbesondere die Vektormaschinen "J90", "C90" und die "T90" von Cray Research. Silicon Graphics hatte Cray 1996 aufgekauft. Die Topsysteme aus dieser Reihe basieren auf Bipolar-Technologie. Sie benutzen Verbindungstechnologien zu SRAM-Hauptspeichern, die sich durch sehr hohe Bandbreiten auszeichnen.

Insbesondere bei Anwendungen, die Cache-Speicher nicht explizit benötigen, sind PVP-Systeme sehr leistungsfähig. PVP-Maschinen sind aber extrem teuer und nur für Nischenanwendungen geeignet. Insbesondere in technisch-wissenschaftlichen Bereichen zeichnen sie sich jedoch durch ihre hohe Leistung aus.

Das ideale Multiprozessor-System würde nun die Vorteile aller vorgenannten Architekturvarianten kombinieren: Die Skalierbarkeit von MPP-Systemen; die niedrigen Kosten der Cluster-Maschinen; das vergleichsweise unkomplizierte Programmiermodell von SMP-Rechnern sowie die extrem hohe Fließkomma-Rechenleistung und die hohen Bandbreiten zum Hauptspeicher von PVP-Computern.