Heisser Server mit kaltem Herzen

Suns neuer Prozessor UltraSPARC T1 soll dank exzessiver Anwendung des Multi-Core-Konzeptes nicht nur schneller, sondern auch effizienter rechnen. Wir haben Suns Server-Flagschiff mit der neuen CPU auf Herz und Nieren getestet.

Artikel erschienen in Swiss IT Magazine 2006/12

     

Die Entwicklung von Mikroprozessoren gelangt langsam an einen kritischen Punkt. Sie werden immer komplexer, und der Leistungshunger steigt dermassen, dass die Kühlung immer problematischer wird. Lange Zeit wurden Prozessoren immer schneller getaktet, aber seit einiger Zeit steht die Taktfrequenz nicht mehr im Vordergrund. Man versucht statt dessen, neue Wege zu gehen. Ein vielversprechender Weg ist der Einsatz mehrerer Prozessorkerne in einem physikalischen Gehäuse. Durch kürzere Schaltwege und gemeinsamer Nutzung unterschiedlicher Komponenten wie Recheneinheiten oder Cache kann man einiges an Komplexität und Verlustleistung sparen.


Wunderprozessor

Besonders zu Herzen genommen hat sich dieses Konzept SPARC-Erfinderin (Scalable Processor Architecture) Sun Microsystems, die mit dem UltraSPARC T1, der unter dem Code-Namen «Niagara» entwickelt wurde, eine komplett neue Prozessor-Architektur auf den Markt gebracht hat. Der Prozessor verfügt über bis zu 8 Kerne, welche wiederum bis zu 4 Threads nahezu parallel abarbeiten können. Insofern ist das Design dieses Prozessors sehr modern und innovativ, zumal herkömmliche Prozessoren zur Zeit nur bis zu vier Kerne beinhalten.
Jeder Kern besitzt eine Integer-Recheneinheit (Modular Arithmetic Unit, kurz MAU), welche sich die bis zu 4 Threads pro Kern über eine 6-stufige Integer-Pipeline teilen. Diese MAUs können übrigens über die in Solaris 10 neu eingeführte spezielle Schnittstelle zu Kryptobeschleunigern (Solaris Cryptographic Framework, kurz SCF) angesprochen werden, da sie Optimierungen für modulare Arithmetik besitzen, welche die Grundlage von gängigen kryptographischen Verfahren wie DSA, RSA oder DH darstellt.
Jeder Kern verfügt zudem über einen eigenen L1 Cache. Den L2 Cache, der mit 3 MB auf den ersten Blick gross dimensioniert ist, müssen sich dagegen alle Kerne teilen. Somit gehört der Prozessor zu den Systemen mit einer Unified Memory Architecture (UMA). Das Betriebssystem sieht total 32 Prozessoren – 8 (Kerne) mal 4 (Threads).
Allerdings kommt der T1 auch mit einigen – je nach Anwendung – gravierenden Einschränkungen. So müssen sich zum Beispiel alle 8 Kerne eine einzige FPU (Floating Point Unit) teilen. Somit sind die T1-Prozessoren nur für Anwendungen geeignet, die nur wenig oder keine Fliesskomma-Arithmetik benötigen.


Gross und klein

Im Moment verkauft Sun den UltraSPARC T1 in zwei verschiedenen Servermodellen: Der Sun Fire T1000 (eine Höheneinheit) und der Sun Fire T2000 (zwei Höheneinheiten). Getestet haben wir das Modell mit 2 Höheneinheiten und einem 1-GHz 8-Core-UltraSparc-T1; dasselbe Gerät, das Sun auch im Rahmen ihres Try&Buy-Programms anbietet (genaue Testkonfiguration siehe Wertungskasten).
Vermarktet werden die Maschinen als sogenannte «Cool Threads»-Server, was auf den niedrigen Stromverbrauch der Systeme hinweisen soll. So braucht eine T2000 typischerweise um die 210 Watt und eine T1000 nur rund 180 Watt, was deutlich weniger als bei den Topmodellen aus dem x86-Bereich ist. Dies wirkt sich nicht nur positiv auf die Höhe der Stromrechnung aus, sondern senkt auch den Kühlungsbedarf.


Sauberer Aufbau

Optisch gleicht die SunFire-Tx000-Linie den neuen x86-Galaxy-Servern von Sun. Auch vom Innenaufbau sind beide Systemlinien ähnlich sauber und gut durchdacht aufgebaut. Die Trennung der verschiedenen Wärmebereiche (Prozessoren/Speicher, Festplatten und Netzteile) wird auch hier stilsicher durchgezogen. Links und rechts vom passiv gekühlten Prozessor liegen die Speicherbänke. Einzig die vier dünnen SAS- Kabelstränge vom Controller zu den Platten stören den aufgeräumten Eindruck etwas. Vier Low-Profile-PCI-Express- und zwei PCI-X-Karten (64bit, 133 MHz) finden in der T2000 Platz. Die beiden Netzteile sind hot pluggable, ebenso wie die drei grossen Papstlüfter an der Vorderseite des Gehäuses. Die T2000 bietet Platz für maximal vier 2,5-Zoll-SAS-Laufwerke (Serial Attached SCSI), derzeit verfügbar mit 10’000 Umdrehungen und 73 GB Kapazität, und das DVD-Laufwerk. An Anschlüssen bietet die Maschine vier Stück USB 1.1 (zwei vorne am Gehäuse, zwei hinten), einen seriellen, vier 1 Gigabit-Ethernet-Ports sowie einen seriellen Management- und einen RJ45-Ethernet-Management-Anschluss. Monitor, Maus oder Tastatur sucht man wie bei den meisten Nicht-x86-Servern vergebens. Dafür bietet die Management-Schnittstelle über das ALOM (Advanced Lights-Out Management) kompletten Zugang zur Console – auch graphisch – über einen javafähigen Webbrowser.





Bonnie Benchmark 1024 MB


Keine Allrounder

Wie bereits erwähnt, sind die T1000/T2000 keine Allround-Maschinen und für manchen Einsatz denkbar schlecht geeignet. Besonders bei Applikationen, die viele Fliesskomma-Operationen erfordern – etwa Mathematik-, Graphik- und Vektorprogramme, Videosoftware und viele HPC-Anwendungen –, schneiden sie sehr schlecht ab. Bei Applikationen oder Diensten hingegen, die gut skalieren, mit vielen Threads arbeiten und eben wenig Fliesskomma-Operationen benötigen, spielt der UltraSPARC T1 seine Stärken voll aus und kann durchaus beeindrucken. Mit einem Takt von 1,0 oder 1,2 GHz laufen die einzelnen Kerne für heutige Verhältnisse relativ langsam, sodass einzelne Applikationen im Single-User-Betrieb quasi vorwärtsschleichen, da sie die Parallelität des Ultra­SPARC T1 nicht ausnutzen können. Ganz anders sieht das Bild dagegen bei Webanwendungen aus, bei denen viele Benutzer parallel auf einen Server zugreifen. Sie zeigen beeindruckende Performance. So kann sich der SPECweb2005-Wert von 14001 für eine Sun Fire T2000 durchaus sehen lassen, ist er doch mehr als doppelt so hoch wie derjenige des Grossteils der Konkurrenzmaschinen. Und auch die nächstbeste Maschine, ein Fujitsu Siemens Primergy RX220 mit einem AMD Opteron 280, schafft
es gerade einmal auf einen SPECweb2005-Wert von 8394. Sun positioniert daher die Server hauptsächlich als Server für Web, FTP und Mail. Aber auch als File-Server lässt sich der T2000 einsetzen, da die I/O-Leistung (siehe Bonnie-Benchmark) durchaus ansehnlich ist und sogar für bestimmte Datenbank-Systeme wie PostgreSQL oder MySQL ausreicht.
Um einen grösseren Anwendungsbereich erschliessen zu können, muss Sun zuerst das FPU-Problem lösen, was aber bereits im Herbst passieren soll, wenn die neue Generation der «Niagara»-Prozessoren auf den Markt kommt. Die CPUs sollen dann mit noch mehr Kernen und vor allem mit mehreren FPUs auflaufen.





OpenSSL Benchmark


Tuning ist Pflicht

Für eine optimale Leistungsausnutzung gilt es aber auch beim Ultra­SPARC T1 auf ein paar Dinge zu achten. So sollte man idealerweise auf die vom Betriebssystem mitgelieferten Bibliotheken setzen, da diese beispielsweise wie OpenSSL auf die Krypto-API des Solaris-10-Kerns zugeschnitten sind und dank dieser die arithmetischen Einheiten (MUAs) des Prozessors ausnutzen können. Möchte man eigene Applikationen übersetzen, sollte man auf Suns Compiler-Suite SunStudio 11 setzen und die Optimierungsoptionen für den UltraSPARC T1 verwenden, damit der Code für den «Niagara»-Prozessor optimiert wird.
Ist man unsicher, ob sich bestimmte Applikationen für die «Cool Threads»-Server eignen, kann man auf ein von Sun angebotenes Toolset (cooltools.sunsource.net/cooltst/) für Solaris und Linux zurückgreifen, mit dem ein laufendes System auf UltraSPARC-T1-Kompatibilität überprüft werden kann.


Der Autor

Gregor Longariva (longariva@softbaer.de) ist Solaris-Administrator am Rechenzentrum der Universität Erlangen-Nürnberg und Spezialist für die Unix-Betriebssysteme Solaris, OpenBSD und Linux.




Artikel kommentieren
Kommentare werden vor der Freischaltung durch die Redaktion geprüft.

Anti-Spam-Frage: Vor wem mussten die sieben Geisslein aufpassen?
GOLD SPONSOREN
SPONSOREN & PARTNER