2015-11-02

... sind grundlegend neue Technologien, die mit den neuen Systemen der T7/M7-Reihe ab sofort produktiv eingesetzt werden können (zwei ganz interessante Artikel dazu von Chuck Hollis und Timothy Brickett Morgan). Der M7-Prozessor, der in allen diesen Systemen verbaut wird, bringt darüber hinaus einen signifikanten Leistungssprung auch für Lasten, bei denen diese neuen Technologien nicht zum Tragen kommen. Gegenüber dem T5-Prozessor bietet der M7 die doppelte Anzahl an Prozessorkernen (32 versus 16) und durch größere Caches je Core, schnellere Speicherzugriffe und eine höhere Taktung zudem eine um 30-40% verbesserte Single-Thread-Performance (wie immer spielt dabei das Verhältnis der Größe des Workingset der Anwendung zu der des Cache eine wesentliche Rolle).

Mit den T7- und M7-Systemen wurden gleich einige Performance-Rekorde aufgestellt. Markant sind dabei auch die Benchmarks, die zeigen, dass es mit den T7-/M7-Systemen möglich ist, praktisch ohne Leistungsverlust durchgängig Verschlüsselung zu nutzen. So wurde mit zwei T7-1 mit jeweils einem M7-Prozessor ein neuer Rekord für Applikation-Server mit 1 bis 4 Chips beim SPECjEnterprise2010-Benchmark erzielt (eine T7-1 als J2EE-Server und eine als Datenbank-Server)  - und zwar mit Oracle Advanced Security Transparent Data Encryption (TDE) zur Verschlüsselung der Datenbank und einer über Secure JDBC verschlüsselten Netzwerkverbindung. Damit wurden 25.093 EjOPS erreicht. Ohne Verschlüsselung schafften zwei IBM S824 mit je vier Power 8 CPUs 22.543 EjOPS und zwei x86-Server mit je zwei Intel E5v3 CPUs 21.504 EjOPS (weitere Details hier  im BestPerf-Blog). Sun war mit dem SPARC T1 Prozessor ein Vorreiter bei der Implementierung von Crypto-Einheiten auf der CPU. Auch nachdem andere CPU-Anbieter inzwischen ebenfalls mit Crypto-Acceleratoren nachgezogen haben, ist Oracle weiterhin führend insbesondere was das seither deutlich verbreiterte Spektrum an unterstützen Crypto-Algorithmen angeht.

Neu mit den M7-Prozessoren sind die Data Analytics Accelerator (DAX), die für In-Memory-Datenbanken dramatische Leistungssteigerungen realisieren können, obwohl sie gerade einmal 1% der Chipfläche benötigen. Ihre Spezifikation und Design resultieren aus der engen Zusammenarbeit der Prozessor- und Datenbank-Engineeringteams - eben "Hardware and Software engineered to work together". Juan Loaiza erläutert in der Systems-Keynote bei der Oracle OpenWorld wie sie funtkionieren (und noch etwas ausfühlicher in seiner Keynote bei der Very Large Databases Konferenz - die URL verweist hier direkt auf den entsprechenden Teil des Vortrags - wobei es sich lohnt auch den Rest anzuschauen). Einige zentrale  Punkte daraus kurz zusammengefasst: Die spaltenorientierte Ablage von In-Memory Tabellen ermöglicht einfachere Algorithmen, die durch Hardware unterstützt werden können - zunächst durch SIMD- und Vektorinstruktionen in den Graphikeinheiten von CPUs, die aber eben nicht primär für die Nutzung in DBMS entworfen waren, und jetzt in den gezielt dafür entwickelten DAX des SPARC M7.Wichtig  für die Performance ist die direkte Anbindung an den L3-Cache, was höchste Bandbreiten liefert. Ein wesentlicher Performance-Faktor ist die Hardwareunterstützte Dekompression von OZIP-komprimierten Daten (Bitmuster). Mit herkömmlichen CPUs ist die dafür erreichbare Performance passend für Daten auf Platte, langsam für Daten in Flash-Speichern und ein Engpass für In-Memory-Daten. Über die Decompression-Engines der M7 CPU können Daten dagegen so schnell dekomprimiert werden wie sie aus dem Speicher gelesen werden. Die folgende Grafik gibt einen Einblick in die Funktionsweise der M7 Database Accelerator (DAX). Auf jedem Prozessor sind 8 DAX Engines mit jeweils 4 Pipelines - insgesamt also 32. Eine tiefergehende Performance-Betrachtung anhand eines Microbenchmarks findet sich im BestPerf-Blog. Eine T7-1 mit einer SPARC M7-CPU (32 Cores) schlägt hierbei ein aktuelles x86-System mit zwei 18-Core-CPUs um den Faktor 5.

Über das zweite Software-in-Silicon Feature im Titel dieses Beitrags - Silicon Secured Memory - hatte ich bereits einen Eintrag im Solarium-Blog geschrieben. Neben dem Sicherheitsaspekt - mit Silicon Secured Memory wäre der Heartbleed-Bug sofort aufgefallen - spielt für die immer größer werdenden Hauptspeichern der Aspekt einer verbesserten Software-Qualität eine Rolle: Fehlerhafte Speicherzugriffe fallen ebenfalls schneller auf - und in vielen Fällen kann sogar verhindert werden, dass fehlerhafte Schreibzugriffe Daten korrumpieren.

Wie bereits im Solarium-blog angekündigt gibt's Vorträge zu diesen Thmen bei der DOAG 2015 Konferenz und Ausstellung vom 17.-19.November 2015 in Nürnberg (Näheres im Solarium-Blog).

Show more