• Keine Ergebnisse gefunden

I/O Technologien im Umbruch

N/A
N/A
Protected

Academic year: 2022

Aktie "I/O Technologien im Umbruch"

Copied!
31
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

I/O­Technologien im Umbruch

OSL Aktuell

Schöneiche bei Berlin – 26. Mai 2021

(2)

I/O-Geräte: Gestern noch zu langsam.

Heute schon zu schnell?

(3)

Geschwindigkeitsverhältnisse vor 2015

Leistung von I/O-Geräten quasi unabhängig von CPU und Betriebssystem

CPU

RAM

Storage / Netzwerk

x1000

> x1000

Wie verringert man I/O-induzierte Leerlaufzeiten?

(4)

Geschwindigkeitsverhältnisse im Jahr 2021

I/O-Geräte sind nur nur noch eine Größenordnung langsamer als RAM!

CPU

RAM

Storage / Netzwerk

x1000

x2 - x10

Wie können solche Geräte effizient ausgenutzt werden?

→ Und was bedeutet das für Betriebssysteme und Anwendungen?

(5)

Über neuartige Speichergeräte

(6)

Flashbasierte Solid State Drives (SSDs)

Prinzipbedingte Überlegenheit gegenüber herkömmlichen Festplatten

→ Schnellerer Speichermechanismus (vollelektrisch vs. elektromechanisch)

→ Fähigkeit zur echt parallelen Requestbearbeitung

NVMe: Weniger Overhead und Sichtbarmachen der Parallelität im Betriebssystem

HDD Controller

t1

t2

SSD Controller

t1 t1

(7)

Solid State Drives (SSDs) – Leistungsentwicklung

Corsair Force LS1 (S-ATA 3)

Samsung 970 evo2 (NVMe & PCIe 3)

Samsung 980 pro3 (NVMe & PCIe 4)

Jahr 2013 2018 2020

Kapazität 240 GB 250 GB (bis 2 TB) 500 GB (bis 2 TB)

Latenz [µs] Lesen

(wahlfrei) 170 66 45

Schreiben

(wahlfrei) 47 20 17

Durchsatz [MB/s] Lesen

(sequentiell)

510 3400 6900

Schreiben

(sequentiell) 382 1500 (2500) 5000

1 https://www.storagereview.com/review/corsair-force-series-ls-ssd-review

2 https://www.samsung.com/semiconductor/global.semi.static/Samsung_NVMe_SSD_970_EVO_Data_Sheet_Rev.1.0.pdf

3 https://s3.ap-northeast-2.amazonaws.com/global.semi.static/Samsung_NVMe_SSD_980_PRO_Data_Sheet_Rev.1.2.pdf

(8)

Intel Optane (a.k.a. 3D XPoint)

Nochmals verbesserter Speichermechanismus gegenüber Flash

→ Phase-Change Memory

→ Bessere Packungsdichte

Beispiel: Intel DC P5800X

1

:

→ Latenz für Lesen und Schreiben bei 10 µs

→ Durchsatz lesend: 7200 MB/s

→ Durchsatz schreibend: 6100 MB/s

Optane SSDs sind schon zu weit von CPU entfernt!

1 https://ark.intel.com/content/www/de/de/ark/products/201860/intel-optane-ssd-dc-p5800x-series-800gb-2-5in-pcie-x4-3d-xpoint.html

(9)

Intel Optane als Non-volatile Memory (NVM)

Ziel: Persistenter Speicher mit der Leistungsfähigkeit von DRAM

Optane existiert auch im DIMM-Format

→ Relativ günstige Erweiterung des RAMs (Memory Mode)

→ Echter NVM (App-Direct Mode)

→ Interleaved Mode (ähnlich striped volumes)

Im Gegensatz zur SSD ist ein angepasster Chipsatz nötig

Byte-Adressierbar, aber interne Blockgröße von 256B (Cache Line auf x86: 64B)

(10)

Intel Optane – DIMM Performance (Yang et al. FAST 2020)

Latenz in gleicher Größenordnung wie DRAM

→ Ausreißer aber noch im Mikrosekundenbereich

(11)

Intel Optane – DIMM Performance (Yang et al. FAST 2020)

Durchsatz fällt jedoch gegenüber DRAM deutlich ab

→ Ohne Interleaving ähnliche Bandbreite wie SSDs

(12)

Was tut sich im Netzwerk?

(13)

Was ist der Stand der Technik?

Datenraten von Netzwerkadaptern steigen kontinuierlich

→ Heutiges Maximum: NVIDIA Connect X-7: bis zu 400 Gbit/s (pro Karte)

→ Eher realistisch: EDR (100 GBit/s)

→ Weniger als 800ns Adapterlatenz

Problem: Traditionelle Protokolle zu ineffizient

→ Betriebssystem muss jedes Paket behandeln (sehr hohe CPU-Nutzung!)

→ Überholte Annahmen bzgl. Paketverlusten

→ Komplexe Softwareschichten

(14)

Remote Direct Memory Access (RDMA)

Idee: Netzwerkprotokolle in Hardware implementieren

NIC

Device Driver Ethernet

IP TCP Application

HCA

Kernel Space Driver User Space Driver

libibverbs Application User Space

Kernel Space

Hardware

klassisch RDMA

Vertreter: RDMA over Converged Ethernet (RoCE) und InfiniBand

(15)

Warum wird das Betriebssystem zum Problem?

(16)

Klassisches Betriebssystemkonzept (Monolith)

Teilung in Userland und Kern (privilegierter Modus)

→ Kern verwaltet Geräte

→ Kern setzt Isolation zwischen Nutzern durch

Applikation

Dateisystem Gerätetreiber

SSD

Userland

Kern

Hardware

Kontextwechsel ~ wenige µs, Kopieren von 1 MiB im RAM ~ 1 µs

(17)

Was bedeutet das heute?

Kontextwechsel ~ wenige µs, Kopieren von 1 MiB im RAM ~ 1 µs

Yang et al.: SPDK: A development kit to build high performance storage applications, 2017 Yang et al.: When Poll is Better than Interrupt, FAST 2012

Betriebssystem ist mit sich selbst beschäftigt und behindert die Geräte!

(18)

Userspacetreiber

Verlagerung von Teilen des Kerns in die Applikation (als Bibliothek)

→ Sparen von Metaoperationen und dadurch Leistungssteigerung

→ Applikation wird Gerät direkt zugewiesen, dadurch kein OS-seitiges Caching

Applikation Gerätetreiber

SSD

Userland

Kern

Hardware

Beispiele: RDMA, DPDK (Netzwerk); SPDK, NVMeDirect (Speichergeräte)

Initialinfrastruktur

(19)

Was bedeuten High-Performance-Geräte für

die Anwendungen?

(20)

Programmieren mit modernen Geräten

Sämtlicher Komfort des Betriebssystemkerns geht mit Userspacetreibern verloren

→ Geräte werden direkt durchgereicht, dadurch wird Sharing kompliziert

→ Anwendungen müssen Dateisysteme etc. selbst implementieren (gut für Datenbanken)

Neue CPU-Aufteilung: Ein Core pro Applikationsthread

→ Vermeiden von Kontextwechseln

→ Teils nötig durch Fehlen eines blockierenden I/O-Mechanismus

CPU wird durch High-Performance-I/O-Stacks stark belastet!

(21)

Faustregeln für I/O-lastige Anwendungen

Indirektionen vermeiden!

Asynchrone Programmiermodelle nutzen!

I/O-Operationen reduzieren!

(22)

Faustregeln für I/O-lastige Anwendungen

Indirektionen vermeiden!

Asynchrone Programmiermodelle nutzen!

I/O-Operationen reduzieren!?

(23)

Neuartige RZ-Architekturen

(24)

Problemfall Auslastung

Siloarchitekturen: Häufig Überprovisionierung von Ressourcen

→ Jeder Knoten muss für Lastspitzen ausgelegt sein

→ Aus ökonomischer Sicht nachteilig

Acc.

Disk RAM CPU RAM

Node 1

Acc.

Disk RAM CPU RAM

Node 2

Acc.

Disk RAM CPU RAM

Node 3

(25)

Problemfall Auslastung

Disaggregated Architectures: Reine Ressourcen-Nodes

→ Bessere Hardwarenutzung und unabhängige Skalierung einzelner Geräteklassen

RAM CPU RAM

App Node 1

RAM CPU RAM App Node 2

RAM CPU RAM App Node 3

Mit heutiger Hardware nur minimaler Netzwerkoverhead

Disk

Disk Node Acc. Node

Acc.Acc.

(26)

SmartNICs für das Disaggregated Data Center

Muss jeder Ressourcenknoten ein vollwertiger Rechner sein?

SmartNICs ist RDMA-NIC mit integriertem ARM-Subsystem

→ Kann sämtliche Kommunikation steuern und überwachen

→ Lässt sich vom restlichen Host abschotten

NIC CPU

CPU CPU

CPU NIC CPU CPU

sNIC

(27)

FractOS: Ein Framework für Disaggregated Data Center

Beispiel Bildverarbeitung

→ Zergliederung eines Auftrages in Teilschritte

→ CPU-zentriertes Modell nicht optimal bzgl. Datenfluss

CPU CPU CPU CPU

GPU GPU GPU GPU

Image-App

1

2

3 4

(28)

FractOS: Ein Framework für Disaggregated Data Center

Auftrag wird von Anwendung gepackt und fließt „selbst“ durch das RZ

→ Einsparen von Nachrichten (Durchsatzsteigerung)

→ Bessere Ausnutzung der vorhandenen Ressourcen

CPU CPU CPU

GPU GPU GPU

1

2

3

sNIC sNIC

sNIC

Image-App

(29)

Fazit

(30)

Was ändert sich mit der neuen Hardwaregeneration?

Neue I/O-Technologien bringen nochmals deutliche Leistungssteigerung

→ Persistenter Speicher nähert sich RAM an

Design von Betriebssystemen und Anwendungen verändert sich stark

→ Klassisches Konzept wird zum Flaschenhals

→ Wiederbelebung alter Programmiermodelle

Fortschritt in Hardware ermöglicht neue RZ-Architekturen

→ Leistungseinbußen durch Netzwerk werden geringer

→ Anpassung des Rechenzentrums an die Applikation (anstatt andersherum)

(31)

virtualization and clustering – made simple

Referenzen

ÄHNLICHE DOKUMENTE

When the Winchester disk has not yet been formatted as a system disk, the procedure that follows should be used. Power on the Series II or Series III

This chapter provides a description of the peer-to-peer protocol procedures that are defined for the transfer of information and control between any pair of

ing means for receiving video signals in one format and converting them to signals in a different format, the input to the conventional converter being applied to horizontal

This work has been digitalized and published in 2013 by Verlag Zeitschrift für Naturforschung in cooperation with the Max Planck Society for the Advancement of Science under

means for developing a first current pulse when all of said stored energy has been transferred out through said secondary winding, said first current pulse being applied to

synchronization source to time the sampling intervals. Specifically, a data strobe generator 61 generates a data strobe pulse on the positive-going edge of each signal

A servo circuit for electronically controlling the opera- tion of an electric motor is disclosed. The rotational frequency of the motor is converted into a varying

In accordance one aspect of the invention, the mag- netic disk of the invention comprises plural circumfer- entially spaced data sectors that include at least two sets