Cray X1: Der Griff nach den Peta-Flops

Speicher und Kommunikation

Da jede der acht Pipelines innerhalb des MCM zwei 64-Bit-Floatingpoint-Operationen pro Takt bearbeitet, bietet der X1-Prozessor in Summe eine theoretische Rechenleistung von 12,8 GFlops/s bei lediglich 800 MHz Takt. Entscheidend für die tatsächliche Rechenleistung eines Multiprozessorsystems sind jedoch die Speicheranbindung und der Datenaustausch zwischen den CPUs. Immerhin will Cray im Maximalausbau 4096 der X1-CPUs zu einem System verschalten.

Der modulinterne Datenaustausch zwischen Cache und CPUs erfolgt mit bis zu 77 GByte/s. Hier hält etwa ein Pentium 4 mit 3GHz noch gut mit, der 25 GByte/s aus dem L2-Cache laden kann. Extern kommuniziert der Prozessor allerdings mit 38,4 GByte/s mit dem lokalen Speicher, rund dem 13fachen eines Pentium 4. Die Verbindung der Prozessoren untereinander erfolgt mit 25,6 GByte/s. Diese Datentransferraten erfordern einen immensen Schaltungsaufwand. Allein für die Kommunikation muss jeder Prozessor 3800 Signale nach außen führen.

Jeweils vier X1-Prozessoren sitzen auf einer Platine, dem so genannten Node. Über eine Crossbar sprechen die Prozessoren 16 unabhängige Memory Controller an. Jeder dieser Controller verwaltet bis zu 1 GByte Rambus-Speicher.

Zudem stellt jeder der 16 Memory Controller auf einem Node zwei Router-Verbindungen zum Speicher auf anderen Nodes bereit. Bei einer 16-Node-Konfiguration ergibt sich damit eine Interconnect-Bandbreite von 400 GByte/s. Schließlich bietet jeder Node noch vier unabhängige PCI-X-Kanäle zur I/O-Kommunikation etwa mit Massenspeichern.