5.8 Millionen IOPS: Warum so viel?

Hallo Habr! Die Datensätze für Big Data und maschinelles Lernen wachsen exponentiell und wir müssen damit Schritt halten. Unser Beitrag über eine weitere innovative Technologie im Bereich High Performance Computing (HPC, High Performance Computing), gezeigt am Kingston-Stand unter Supercomputing-2019. Dabei handelt es sich um den Einsatz von Hi-End-Datenspeichersystemen (SDS) in Servern mit Grafikprozessoren (GPU) und GPUDirect Storage-Bustechnologie. Dank des direkten Datenaustauschs zwischen dem Speichersystem und der GPU unter Umgehung der CPU wird das Laden von Daten in GPU-Beschleuniger um eine Größenordnung beschleunigt, sodass Big-Data-Anwendungen mit der maximalen Leistung laufen, die GPUs bieten. HPC-Systementwickler wiederum sind an Fortschritten bei Speichersystemen mit höchsten I/O-Geschwindigkeiten interessiert, wie sie beispielsweise von Kingston hergestellt werden.

5.8 Millionen IOPS: Warum so viel?

Die GPU-Leistung übertrifft das Datenladen

Seit der Schaffung von CUDA im Jahr 2007, einer GPU-basierten Hardware- und Software-Parallel-Computing-Architektur zur Entwicklung allgemeiner Anwendungen, sind die Hardwarefähigkeiten der GPUs selbst unglaublich gewachsen. Heutzutage werden GPUs zunehmend in HPC-Anwendungen wie Big Data, maschinellem Lernen (ML) und Deep Learning (DL) eingesetzt.

Beachten Sie, dass es sich trotz der Ähnlichkeit der Begriffe bei den letzten beiden um algorithmisch unterschiedliche Aufgaben handelt. ML trainiert den Computer auf der Grundlage strukturierter Daten, während DL den Computer auf der Grundlage des Feedbacks eines neuronalen Netzwerks trainiert. Ein Beispiel zum besseren Verständnis der Unterschiede ist ganz einfach. Nehmen wir an, dass der Computer zwischen Fotos von Katzen und Hunden unterscheiden muss, die aus dem Speichersystem geladen werden. Für ML sollten Sie eine Reihe von Bildern mit vielen Tags einreichen, von denen jedes ein bestimmtes Merkmal des Tieres definiert. Für DL reicht es aus, eine viel größere Anzahl an Bildern hochzuladen, allerdings mit nur einem Tag „das ist eine Katze“ oder „das ist ein Hund“. DL ist der Art und Weise, wie kleinen Kindern beigebracht wird, sehr ähnlich: Ihnen werden einfach Bilder von Hunden und Katzen in Büchern und im Leben gezeigt (meistens, ohne den Unterschied im Detail zu erklären), und das Gehirn des Kindes beginnt dann selbst, die Art des Tieres zu bestimmen eine bestimmte kritische Anzahl von Bildern zum Vergleich (Schätzungen zufolge sprechen wir von nur einhundert oder zwei Shows im Laufe der frühen Kindheit). DL-Algorithmen sind noch nicht so perfekt: Damit ein neuronales Netzwerk auch erfolgreich Bilder identifizieren kann, ist es notwendig, Millionen von Bildern in die GPU einzuspeisen und zu verarbeiten.

Zusammenfassung des Vorworts: Basierend auf GPUs können Sie HPC-Anwendungen im Bereich Big Data, ML und DL erstellen, es gibt jedoch ein Problem: Die Datensätze sind so groß, dass das Laden von Daten vom Speichersystem auf die GPU viel Zeit in Anspruch nimmt beginnt die Gesamtleistung der Anwendung zu verringern. Mit anderen Worten: Schnelle GPUs werden aufgrund langsamer I/O-Daten von anderen Subsystemen weiterhin nicht ausgelastet. Der Unterschied in der E/A-Geschwindigkeit der GPU und des Busses zur CPU/dem Speichersystem kann eine Größenordnung betragen.

Wie funktioniert die GPUDirect Storage-Technologie?

Der I/O-Prozess wird von der CPU gesteuert, ebenso wie das Laden von Daten aus dem Speicher in die GPUs zur weiteren Verarbeitung. Dies führte zu einer Nachfrage nach einer Technologie, die einen direkten Zugriff zwischen GPUs und NVMe-Laufwerken ermöglicht, um schnell miteinander zu kommunizieren. NVIDIA war der erste Anbieter dieser Technologie und nannte sie GPUDirect Storage. Tatsächlich handelt es sich hierbei um eine Variante der zuvor entwickelten GPUDirect RDMA-Technologie (Remote Direct Memory Address).

5.8 Millionen IOPS: Warum so viel?
Jensen Huang, CEO von NVIDIA, wird GPUDirect Storage als Variante von GPUDirect RDMA auf der SC-19 vorstellen. Quelle: NVIDIA

Der Unterschied zwischen GPUDirect RDMA und GPUDirect Storage liegt in den Geräten, zwischen denen die Adressierung durchgeführt wird. Die GPUDirect RDMA-Technologie wird für die direkte Übertragung von Daten zwischen der Front-End-Netzwerkschnittstellenkarte (NIC) und dem GPU-Speicher umfunktioniert, und GPUDirect Storage bietet einen direkten Datenpfad zwischen lokalem oder Remote-Speicher wie NVMe oder NVMe over Fabric (NVMe-oF) und GPU-Speicher.

Sowohl GPUDirect RDMA als auch GPUDirect Storage vermeiden unnötige Datenbewegungen über einen Puffer im CPU-Speicher und ermöglichen dem DMA-Mechanismus (Direct Memory Access), Daten von der Netzwerkkarte oder dem Speicher direkt zum oder vom GPU-Speicher zu verschieben – und das alles ohne Belastung der zentralen CPU. Für GPUDirect Storage spielt der Speicherort keine Rolle: Es kann sich um eine NVME-Festplatte in einer GPU-Einheit, in einem Rack oder über das Netzwerk als NVMe-oF handeln.

5.8 Millionen IOPS: Warum so viel?
Funktionsschema von GPUDirect Storage. Quelle: NVIDIA

Hi-End-Speichersysteme auf NVMe sind auf dem HPC-Anwendungsmarkt gefragt

Kingston erkannte, dass mit der Einführung von GPUDirect Storage das Interesse großer Kunden an dem Angebot von Speichersystemen mit I/O-Geschwindigkeiten, die dem Durchsatz der GPU entsprechen, geweckt wird, und zeigte auf der SC-19-Messe eine Demo eines Systems bestehend aus a Speichersystem basierend auf NVMe-Festplatten und einer Einheit mit einer GPU, die Tausende von Satellitenbildern pro Sekunde analysierte. Über ein solches Speichersystem auf Basis von 10 DC1000M U.2 NVMe-Laufwerken haben wir bereits geschrieben in einem Bericht von der Supercomputer-Ausstellung.

5.8 Millionen IOPS: Warum so viel?
Ein Speichersystem basierend auf 10 DC1000M U.2 NVMe-Laufwerken ergänzt einen Server mit Grafikbeschleunigern angemessen. Quelle: Kingston

Dieses Speichersystem ist als 1U- oder größere Rack-Einheit konzipiert und kann je nach Anzahl der DC1000M U.2 NVMe-Laufwerke mit einer Kapazität von jeweils 3.84–7.68 TB skaliert werden. Die DC1000M ist das erste NVMe-SSD-Modell im U.2-Formfaktor in Kingstons Reihe von Rechenzentrumslaufwerken. Es verfügt über eine Ausdauerbewertung (DWPD, Drive writes per day), die es ihm ermöglicht, während der garantierten Lebensdauer des Laufwerks einmal täglich Daten mit voller Kapazität neu zu schreiben.

Im fio v3.13-Test auf dem Betriebssystem Ubuntu 18.04.3 LTS, Linux-Kernel 5.0.0-31-generic, zeigte das Ausstellungsspeicherbeispiel eine Lesegeschwindigkeit (Sustained Read) von 5.8 Millionen IOPS mit einem nachhaltigen Durchsatz (Sustained Bandwidth). ) von 23.8 Gbit/s.

Ariel Perez, SSD Business Manager bei Kingston, sagte über die neuen Speichersysteme: „Wir sind bereit, die nächste Generation von Servern mit U.2 NVMe SSD-Lösungen auszustatten, um viele der Datenübertragungsengpässe zu beseitigen, die traditionell mit Speicher verbunden sind.“ Die Kombination aus NVMe-SSD-Laufwerken und unserem Premium-Server-Premier-DRAM macht Kingston zu einem der umfassendsten End-to-End-Datenlösungsanbieter der Branche.“

5.8 Millionen IOPS: Warum so viel?
Der gfio v3.13-Test ergab einen Durchsatz von 23.8 Gbit/s für das Demo-Speichersystem auf DC1000M U.2 NVMe-Laufwerken. Quelle: Kingston

Wie würde ein typisches System für HPC-Anwendungen mit GPUDirect Storage oder einer ähnlichen Technologie aussehen? Hierbei handelt es sich um eine Architektur mit einer physischen Trennung der Funktionseinheiten innerhalb eines Racks: eine oder zwei Einheiten für RAM, mehrere weitere für GPU- und CPU-Rechenknoten und eine oder mehrere Einheiten für Speichersysteme.

Mit der Ankündigung von GPUDirect Storage und dem möglichen Aufkommen ähnlicher Technologien anderer GPU-Anbieter wächst Kingstons Nachfrage nach Speichersystemen, die für den Einsatz im Hochleistungsrechnen konzipiert sind. Der Maßstab wird die Geschwindigkeit sein, mit der Daten aus dem Speichersystem gelesen werden, vergleichbar mit dem Durchsatz von 40- oder 100-Gbit-Netzwerkkarten am Eingang einer Recheneinheit mit GPU. Daher werden Ultrahochgeschwindigkeitsspeichersysteme, einschließlich externer NVMe über Fabric, von einem Exoten zum Mainstream für HPC-Anwendungen werden. Neben wissenschaftlichen und finanziellen Berechnungen werden sie auch in vielen anderen praktischen Bereichen Anwendung finden, beispielsweise in Sicherheitssystemen auf der Ebene der Safe City-Metropolen oder in Verkehrsüberwachungszentren, wo Erkennungs- und Identifikationsgeschwindigkeiten von Millionen von HD-Bildern pro Sekunde erforderlich sind“, erläuterte er die Marktnische des Top-Speichersystems

Weitere Informationen zu Kingston-Produkten finden Sie unter die offizielle Seite Unternehmen.

Source: habr.com

Kommentar hinzufügen