Experiment zur Steigerung der Effizienz des cat-Utilities

Ariadne Conill, die Schöpferin des Musikplayers Audacious, Initiatorin der Entwicklung des Protokolls IRCv3 und Leiterin des Sicherheitsteams von Alpine Linux, führte eine Untersuchung durch, wie die cat-Utility optimiert werden kann, um einen oder mehrere Dateien an den Standardausgabestrom auszugeben. Um die Leistung von cat in Linux zu verbessern, wurden zwei Optimierungsansätze vorgeschlagen, die auf den Systemaufrufen sendfile und splice basieren, um Daten direkt zwischen Dateideskriptoren auf Kernel-Ebene ohne Kontextwechsel in den Benutzermodus zu kopieren.

Die grundlegende Implementierung, die traditionelle Aufrufe von read und write verwendet, die zu einem Kontextwechsel führen, zeigte beim Kopieren einer 4-GB-Datei aus tmpfs eine Leistung von 3,6 GB/s. Die Variante auf Basis von sendfile erhöhte die Leistung auf 6,4 GB/s, während die Variante auf Basis von splice auf 11,6 GB/s kam, d.h. sie war schneller als die Ausgangsvariante um mehr als das Dreifache.

Quelle: opennet.ru

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster