Hexa-Core & AES-Beschleunigung im Server

Intel Xeon X5670 & X5680 - Neue CPU-Generation im Test

Encryption/Decryption: openSSL 64 Bit mit AES-NI

Den Source-Code der Verschlüsselungs-Software openSSL 0.9.8k kompilierten wir unter CentOS Linux mit 64-Bit-gcc in eine ausführbare Version ohne Veränderungen. Zusätzlich erstellten wir eine spezielle AES-NI-Version durch Einbindung eines Patches zur Nutzung der AES-Befehlssatzerweiterung.

Die Xeon-5600-Prozessoren mit AES-NI-Unterstützung testen wir mit beiden erstellten openSSL-Versionen. Damit lässt sich direkt der Vorteil von AES-NI bei Verschlüsselungsaufgaben messen. Zusätzlich lassen wir openSSL 0.9.8k zum Vergleich noch auf dem Xeon X5570 (45-nm-Nehalem, kein AES-NI) laufen.

Der Code von openSSL ist single threaded programmiert. Durch den Start von multiplen Kopien summiert openSSL die Performance beim Verschlüsseln von Daten. Alle Kerne der Prozessoren werden ausgenutzt. Den Encryption-Vorgang führen wir mit dem Schlüssel aes-128-cbc durch. Die Ergebnisse zeigen den Durchsatz der verschlüsselten Daten:

openSSL-Performance

Encryption aes-128-cbc 8192 Byte Block

Ohne AES-Patch

Mit AES-Patch

Xeon X5570

1772 MByte/s

1784 MByte/s

Xeon X5670

2568 MByte/s

16923 MByte/s

Xeon X5680

2957 MByte/s

19539 MByte/s

Beim Xeon X5570 ist das Ergebnis der beiden openSSL-Version mit und ohne AES-Patch erwartungsgemäß gleich. Die CPU unterstützt kein AES-NI. Der ebenfalls mit 2,93 GHz arbeitende Xeon X5670 arbeitet durch seine zwei zusätzlichen Kerne mit der ungepatchten openSSL-Version ebenfalls erwartungsgemäß 45 Prozent schneller als der Xeon X5570.

Bei den neuen Xeon-5600-Prozessoren arbeitet openSSL mit AES-Patch um den beeindruckenden Faktor 6,6 schneller als die normale Version. Damit zeigt AES-NI bei openSSL nochmals eine deutlich höhere Beschleunigung als bei WinZip 14. Die Zeit für das Entpacken eines verschlüsselten Archivs wird durch den AES-Befehlssatz halbiert, wie unsere Messungen ergaben.

Die Intel Compiler 11.0, GNU gcc v4.4.0, Microsoft Visual Studio 2008 SP1 unterstützen laut Intel bereits die AES-Befehlssatzerweiterung. Die auf dem Markt führenden Linux-Distributionen planen Intel zufolge im dritten Quartal 2010 die Unterstützung von AES-NI.