Elbrus vs. Intel. Wir vergleichen die Leistung der Speichersysteme Airodisk Ost und Engine

Elbrus vs. Intel. Wir vergleichen die Leistung der Speichersysteme Airodisk Ost und Engine

Hallo zusammen. Wir setzen unsere Vorstellung des Speichersystems Aerodisk VOSTOK fort, das auf dem russischen Prozessor Elbrus 8C basiert.

In diesem Artikel werden wir (wie versprochen) ein detailliertes Thema besprechen, das mit den Elbrus-Prozessoren verbunden ist, nämlich die Leistungsfähigkeit. Über die Leistung des Elbrus gibt es viele Spekulationen, und die Meinungen gehen stark auseinander. Pessimisten behaupten, dass die Leistung des Elbrus derzeit "schlecht" sei und dass es Jahrzehnte dauern würde, um mit den "top Herstellern" Schritt zu halten (d.h. unter den aktuellen Bedingungen — niemals). Auf der anderen Seite sagen Optimisten, dass der Elbrus 8C bereits jetzt gute Ergebnisse zeigt und dass wir in den nächsten paar Jahren mit den neuen Prozessor-Versionen (Elbrus 16C und 32C) in der Lage sein werden, "aufzuholen und zu überholen", die führenden weltweiten Prozessorhersteller.

Wir bei Aerodisck sind praktische Menschen, deshalb haben wir den einfachsten und verständlichsten Weg für uns gewählt: testen, Ergebnisse dokumentieren und erst dann Schlüsse ziehen. Insgesamt haben wir eine Vielzahl von Tests durchgeführt und eine Reihe von Besonderheiten der e2k-Architektur von Elbrus 8S (einschließlich positiver Aspekte) entdeckt und selbstverständlich mit ähnlichen Speichersystemen auf Intel Xeon Prozessoren der amd64 Architektur verglichen.

Übrigens werden wir in unserem nächsten Webinar "OkolIT" am 15.10.2020 um 15:00 Uhr ausführlicher über die Tests, Ergebnisse und die zukünftige Entwicklung der Storagesysteme auf Elbrus sprechen. Sie können sich über den unten stehenden Link anmelden.

Anmeldung zum Webinar

Teststand

Wir haben zwei Stände erstellt. Beide Stände bestehen aus einem Linux-Server, der über 16G FC-Switches mit zwei Controllern des Speichersystems verbunden ist, in dem 12 SAS SSDs mit 960 GB (11,5 TB „Rohkapazität“ oder 5,7 TB „nützliche“ Kapazität bei Verwendung von RAID-10) installiert sind.

Schematisch sieht der Stand folgendermaßen aus.

Elbrus vs. Intel. Wir vergleichen die Leistung der Speichersysteme Airodisk Ost und Engine

Stand Nr. 1 e2k (Elbrus)

Die Hardwarekonfiguration ist wie folgt:

  • Linux-Server (2xIntel Xeon E5-2603 v4 (6 Kerne, 1,70 GHz), 64 GB DDR4, 2xFC-Adapter 16G mit 2 Ports) – 1 Stück.
  • FC-Switch 16 G – 2 Stück.
  • SAS-Speicher Aerodisk Ost 2-E12 (2xElbrus 8C (8 Kerne, 1,20 GHz), 32 GB DDR3, 2xFE FC-Adapter 16G 2 Port, 12xSAS SSD 960 GB) — 1 Stück

Stand Nr. 2 amd64 (Intel)

Zum Vergleich mit einer ähnlichen Konfiguration auf e2k wurde eine vergleichbare SAS- Speicherlösung mit ähnlichem Prozessor für amd64 verwendet:

  • Linux-Server (2xIntel Xeon E5-2603 v4 (6 Kerne, 1,70 GHz), 64 GB DDR4, 2xFC-Adapter 16G mit 2 Ports) – 1 Stück.
  • FC-Switch 16 G – 2 Stück.
  • SAS-Speicher Aerodisk Engine N2 (2xIntel Xeon E5-2603 v4 (6 Kerne, 1,70 GHz), 32 GB DDR4, 2xFE FC-Adapter 16G 2 Port, 12xSAS SSD 960 GB) — 1 Stück

Wichtiger Hinweis: Die im Test verwendeten Elbrus 8C-Prozessoren unterstützen nur DDR3-RAM, was natürlich „schlecht, aber nicht von Dauer“ ist. Elbrus 8CV (der derzeit nicht vorrätig ist, aber bald verfügbar sein wird) unterstützt DDR4.

Testmethodik

Zur Lastgenerierung haben wir das beliebte und bewährte Programm Flexible IO (FIO) verwendet.

Beide SAS-Speicher sind gemäß unseren eigenen Empfehlungen für die Konfiguration eingestellt, basierend auf den Anforderungen an eine hohe Leistung bei Blockzugriffen, weshalb wir dynamische Disk-Pools (DDP) verwenden. Um die Testergebnisse nicht zu verzerren, haben wir bei beiden SAS-Speichern die Kompression, Deduplizierung und den RAM-Cache deaktiviert.

Es wurden 8 D-LUNs in RAID-10 mit jeweils 500 GB erstellt, der gesamte nutzbare Speicher beträgt 4 TB (d.h. etwa 70 % des möglichen nutzbaren Speichers dieser Konfiguration).

Es werden grundlegende und gängige Anwendungsszenarien von Speicherlösungen durchgeführt, insbesondere:

Die ersten beiden Tests simulieren den Betrieb einer transaktionalen Datenbank. In dieser Testgruppe interessieren uns die IOPS und die Latenzzeit.

1) Zufälliges Lesen mit kleinen Blöcken von 4k
a. Blockgröße = 4k
b. Lesen/Schreiben = 100%/0%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Vollständig zufällig

2) Zufälliges Schreiben mit kleinen Blöcken von 4k
a. Blockgröße = 4k
b. Lesen/Schreiben = 0%/100%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Vollständig zufällig

Die zweiten beiden Tests simulieren den Betrieb des analytischen Teils einer Datenbank. Auch in dieser Testgruppe interessieren uns die IOPS und die Latenzzeit.

3) Sequenzielles Lesen mit kleinen Blöcken von 4k
a. Blockgröße = 4k
b. Lesen/Schreiben = 100%/0%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Sequenziell

4) Sequenzielles Schreiben mit kleinen Blöcken von 4k
a. Blockgröße = 4k
b. Lesen/Schreiben = 0%/100%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Sequenziell

Die dritte Testgruppe simuliert den Betrieb des Streaming-Lesens (Beispiel – Online-Streaming, Wiederherstellung von Backups) und des Streaming-Schreibens (Beispiel – Videoüberwachung, Backup-Aufzeichnung). In dieser Testgruppe interessieren uns nicht mehr die IOPS, sondern MB/s sowie die Latenzzeit.

5) Sequenzielles Lesen mit großen Blöcken von 128k
a. Blockgröße = 128k
b. Lesen/Schreiben = 0%/100%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Sequenziell

6) Sequenzielles Schreiben mit großen Blöcken von 128k
a. Blockgröße = 128k
b. Lesen/Schreiben = 0%/100%
c. Anzahl der Threads = 8
d. Warteschdepth = 32
e. Lasttyp = Sequenziell

Jeder Test dauert eine Stunde, ohne die 7 Minuten Aufwärmzeit für das Array zu berücksichtigen.

Testergebnisse

Die Testergebnisse sind in zwei Tabellen zusammengefasst.

Elbrus 8C (Storage Aerodisk Ost 2-E12)

Elbrus vs. Intel. Wir vergleichen die Leistung der Speichersysteme Airodisk Ost und Engine

Intel Xeon E5-2603 v4 (Storage Aerodisk Engine N2)

Elbrus vs. Intel. Wir vergleichen die Leistung der Speichersysteme Airodisk Ost und Engine

Die Ergebnisse sind äußerst interessant. In beiden Fällen konnten wir die Prozessorleistung des Speichers gut nutzen (70-90% Auslastung), und dabei werden die Vor- und Nachteile beider Prozessoren deutlich.

In beiden Tabellen sind die Tests in Grün hervorgehoben, in denen sich die Prozessoren "sicher fühlen" und gute Ergebnisse zeigen, während in Orange die Situationen markiert sind, die die Prozessoren "nicht mögen".

Wenn es um zufällige Lasten in kleinen Blöcken geht, dann:

  • hinsichtlich des zufälligen Lesens liegt Intel zweifellos vor dem Elbrus, der Unterschied beträgt das Zweifache;
  • bei zufälligem Schreiben gibt es eindeutig ein Unentschieden, beide Prozessoren haben ähnlich hohe und gleichwertige Ergebnisse erzielt.

Bei sequenzieller Last in kleinen Blöcken sieht die Situation anders aus:

  • Beim Lesen und Schreiben übertrifft Intel Elbrus deutlich (um das Zweifache). Während die IOPS-Zahl von Elbrus unter der von Intel liegt, sieht sie doch respektabel aus (200-300 Tausend), gibt es jedoch bei den Latenzen ein klares Problem (drei Mal höher als bei Intel). Fazit: Die aktuelle Version von Elbrus 8C hat eine ausgeprägte Abneigung gegen sequenzielle Lasten in kleinen Blöcken. Es gibt definitiv Verbesserungspotenzial.

Ganz anders verhält es sich jedoch bei sequenziellen Belastungen mit großen Blöcken:

  • Beide Prozessoren haben etwa ähnliche Ergebnisse in MB/s gezeigt, aber es gibt ein ABER... Die Latenzwerte von Elbrus sind um das Zehnfache besser (d.h. niedriger) als bei vergleichbaren Prozessoren von Intel (0,4/0,5 ms gegenüber 5,1/6,5 ms). Zunächst dachten wir, das wäre ein Fehler, deshalb haben wir die Ergebnisse überprüft und einen weiteren Test durchgeführt, aber der zweite Test zeigte dasselbe Ergebnis. Das ist ein erhebliches Plus für Elbrus (und die e2k-Architektur im Allgemeinen) im Vergleich zu Intel (und entsprechend der amd64-Architektur). Hoffen wir, dass dieser Erfolg weiter ausgebaut werden kann.

Eine weitere interessante Eigenschaft des Elbrus, die dem aufmerksamen Leser beim Blick auf die Tabelle auffallen könnte, ist, dass die Lesegeschwindigkeiten von Intel in allen Tests im Durchschnitt etwa 50 % über den Schreibgeschwindigkeiten liegen. Dies ist eine Norm, an die wir alle (auch wir) gewöhnt sind. Im Falle des Elbrus hingegen liegen die Schreibgeschwindigkeiten deutlich näher an den Lesegeschwindigkeiten; typischerweise übertrifft das Lesen das Schreiben nur um 10 bis 30 %.

Was bedeutet das? Es bedeutet, dass der Elbrus "sehr gerne" schreibt, was wiederum darauf hinweist, dass dieser Prozessor besonders nützlich für Aufgaben ist, bei denen das Schreiben klar im Vordergrund steht (wer hat das Jarowoi-Gesetz gesagt?), was ein unbestreitbarer Vorteil der e2k-Architektur ist, und dieses Plus sollte weiter ausgebaut werden.

Fazit und die nahen Zukunft

Die vergleichenden Tests der Mittelklasse-Prozessoren Elbrus und Intel in Bezug auf Datenspeicheraufgaben haben insgesamt gleichwertige und respektable Ergebnisse gezeigt, wobei jeder Prozessor seine eigenen interessanten Merkmale aufwies.

Intel hat Elbrus im zufälligen Lesen kleiner Blöcke sowie im sequenziellen Lesen und Schreiben kleiner Blöcke deutlich übertroffen.

Bei der zufälligen Beschriftung kleiner Blöcke erzielen beide Prozessoren gleichwertige Ergebnisse.

In Bezug auf die Latenzwerte schneidet Elbrus im Vergleich zu Intel bei Streaming-Anwendungen, d.h. bei sequenziellem Lesen und Schreiben großer Blöcke, deutlich besser ab.

Darüber hinaus bewältigt Elbrus im Gegensatz zu Intel sowohl Lese- als auch Schreiblasten gleich gut, während Intel beim Lesen immer deutlich besser abschneidet als beim Schreiben.
Basierend auf den Ergebnissen kann man die Anwendbarkeit des Aerodisk Ost Datenspeichers auf dem Elbrus 8C-Prozessor für die folgenden Aufgaben ableiten:

  • Informationssysteme mit einem Übermaß an Schreiboperationen;
  • Dateizugriff;
  • Live-Streaming;
  • Videoüberwachung;
  • Datensicherung;
  • Mediendaten.

Das Team von MCST hat noch viel zu tun, aber die Ergebnisse ihrer Arbeit sind bereits jetzt sichtbar, was natürlich erfreulich ist.

Diese Tests wurden auf dem Linux-Kernel für e2k Version 4.19 durchgeführt. Momentan befinden sich Kernel-Versionen 5.4-e2k in der Beta-Testphase (bei MCST, Basalt Software und ebenfalls bei uns, in Aerodisk). In dieser Version wurde unter anderem der Scheduler erheblich überarbeitet sowie zahlreiche Optimierungen für schnelle Solid-State-Laufwerke vorgenommen. Darüber hinaus wird die MCST AG einen neuen Compiler LCC Version 1.25 speziell für die 5.x.x Kernel-Reihe herausgeben. Nach vorläufigen Ergebnissen wird das neue Kernel, die Kernel-Umgebung, systemnahe Dienstprogramme und Bibliotheken, sowie die Software Aerodisk VOSTOK, die mit dem neuen Compiler auf demselben Elbrus 8C Prozessor erstellt wurden, einen noch größeren Leistungsschub ermöglichen. Und das ganz ohne Hardwarewechsel – auf demselben Prozessor und mit den gleichen Frequenzen.

Wir erwarten die Veröffentlichung der Aerodisk VOSTOK Version auf Basis des Kernels 5.4 gegen Ende des Jahres. Sobald die Arbeiten an der neuen Version abgeschlossen sind, werden wir die Testergebnisse aktualisieren und sie auch hier veröffentlichen.

Wenn wir nun zum Anfang des Artikels zurückkehren und die Frage beantworten: Wer hat recht? Die Pessimisten, die sagen, dass Elbrus "nichts taugt" und niemals mit den führenden Prozessorherstellern Schritt halten wird, oder die Optimisten, die behaupten, dass wir "schon fast gleichauf sind und bald überholen werden"? Wenn man nicht von Stereotypen und religiösen Vorurteilen ausgeht, sondern von realen Tests, sind eindeutig die Optimisten im Recht.

Elbrus zeigt bereits jetzt gute Ergebnisse, wenn man ihn mit mittelklassigen AMD64-Prozessoren vergleicht. Bis zur Spitzenklasse der Serverprozessoren von Intel oder AMD ist der Elbrus 8K natürlich noch weit entfernt, aber das war auch nicht das Ziel. Dafür werden die Prozessoren 16C und 32C herausgebracht. Dann können wir darüber sprechen.

Wir verstehen, dass nach diesem Artikel noch mehr Fragen zum Elbrus aufkommen werden, daher haben wir beschlossen, ein weiteres Online-Webinar "Rund um IT" zu organisieren, um diese Fragen live zu beantworten.

Diesmal haben wir Konstantin Trushkin, den stellvertretenden Generaldirektor der MCST, zu Gast. Sie können sich über den Link unten für das Webinar anmelden.

Anmeldung zum Webinar

Vielen Dank an alle, wie gewohnt freuen wir uns auf konstruktive Kritik und interessante Fragen.

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster