Grundlegende Einheit des SPP-Rechners ist der Hypernode. Wesentliche Komponenten eines Hypernodes sind:
Im Bild:
Technische Daten:
Prozessor | HP-PA 7100 / 100 MHz |
Prozessor-Cache | 1 MB Daten / 1 MB Instruktionen |
5x5-Crossbar | 5 x 250 MB/s |
4fach CTI-Ring | 4 x 600 MB/s |
I/O-System | 250 MB/s, 4xSBus |
Konfiguration des SPP-Systems am RZ (hydra):
2 Hypernodes / 16 CPUs |
2 GB Hauptspeicher |
24 GB Plattenspeicher |
DAT-Tape |
FDDI |
Teststation HP 9000/715 |
Der Prozessor HP-PA 7100 kann in einem Takt eine Addition und eine Multiplikation gleichzeitig durchführen, die theoretische Peak-Performance ist daher 200 MFLOPS.
Instruktions- und Daten-Cache sind jeweils 1MB groß. Die Caches sind ``direct mapped'', d.h. eine Speicher-Adresse wird einer Cache-Adresse zugeordnet, indem einfach die höheren Adressbits weggelassen werden. Dies kann bei ungünstigem Daten-Layout dazu führen, daß sich zwei benötigte Arrays jeweils gegenseitig aus dem Cache verdrängen (``Cache-Thrashing''), was zu einem drastischen Geschwindigkeitsverlust führen kann. Abhilfe schafft das Einführen eines Hilfsfelds, das den Abstand zwischen beiden Arrays vergrößert, wie etwa in folgendem Beispiel:
Der Speicher in einem SPP-System ist mehrstufig hierarchisch organisiert, mit verschiedenen Zugriffsmöglichkeiten und -Geschwindigkeiten auf den verschiedenen Ebenen:
Speichertyp | Zugriff | Latenzzeit |
prozessor cache | CPU | 10 ns |
node private | Hypernode | 500 ns |
CTI cache | Hypernode | 500 ns |
global | alle | 2000 ns |