Der Einsatz von asynchronem, gepuffertem Schreiben auf Basis von io_uring hat die Latenzen in XFS um bis zu 80 Prozent gesenkt

Eine Reihe von Patches wurde veröffentlicht, die UnterstĂŒtzung fĂŒr asynchrone gepufferte SchreibvorgĂ€nge im XFS-Dateisystem mithilfe des Mechanismus io_uring zum Linux-Kernel 5.20 hinzufĂŒgen. Erste Leistungstests, die mit dem Tool fio durchgefĂŒhrt wurden (1 Stream, BlockgrĂ¶ĂŸe 4KB, 600 Sekunden, sequenzielle SchreibvorgĂ€nge), zeigen einen Anstieg der Eingabe-/Ausgabeoperationen pro Sekunde (IOPS) von 77k auf 209k, der DatenĂŒbertragungsrate von 314MB/s auf 854MB/s und einen RĂŒckgang der Latenzen von 9600ns auf 120ns (80-mal). sequenzielle Schreiben: ohne Patch mit Patch libaio psync iops: 77k 209k 195K 233K bw: 314MB/s 854MB/s 790MB/s 953MB/s clat: 9600ns 120ns 540ns 3000ns

FĂŒr diejenigen, die sich fĂŒr den Zustand von io_uring Mitte 2022 interessieren, wird empfohlen, sich die Folien und die Videoaufzeichnung des Vortrags bei Kernel Recipes 2022 anzusehen. Änderungen, die bereits in den Kernel aufgenommen wurden, sowie geplante Änderungen werden dort kurz erwĂ€hnt, beispielsweise die UnterstĂŒtzung fĂŒr:

  • mehrfaches (multi-shot) accept().
  • mehrfaches (multi-shot) recv() – in Tests ein Anstieg von 6-8% – von 1.150.000 auf 1.200.000 RPS.
  • Aktualisierungen und Fehlerbehebungen in der Bibliothek liburing, HinzufĂŒgung von Dokumentationen und Tests.

Im Kontext der PortabilitĂ€t von io_uring wird auf den Folien eine bedeutende Ähnlichkeit mit „I/O Rings“ erwĂ€hnt, die im Direct Storage-Subsystem von Windows 11 verwendet werden, sowie die Möglichkeit der reibungslosen plattformĂŒbergreifenden Zusammenarbeit. Auf der Folie des Autors wird jedoch nur FreeBSD mit einem Fragezeichen erwĂ€hnt.

Video abspielen


Quelle: opennet.ru
60GB SSD 8Gb DDR4