Festplatten-E/A schneller als Memory-Caching? Ein überraschender Benchmark

2025-09-05

Die gängige Meinung besagt, dass der Zugriff auf den Speicher viel schneller ist als die Festplatten-E/A, wodurch Memory-Caching unerlässlich wird. Dieser Beitrag stellt diese Annahme mit einem cleveren Benchmark in Frage: die Zählung der Anzahl der Zehnen in einem großen Datensatz. Mit einem älteren Server und optimiertem Code (Loop-Unrolling und Vektorisierung) sowie einer benutzerdefinierten io_uring-Engine zeigt der Autor, dass direktes Lesen von der Festplatte unter bestimmten Bedingungen schneller sein kann als das Lesen aus dem Memory-Cache. Der Schlüssel liegt nicht darin, dass die Festplatte schneller ist als der Speicher, sondern dass traditionelle Speicherzugriffsmethoden (mmap) eine erhebliche Latenz verursachen. Die benutzerdefinierte io_uring-Engine nutzt die hohe Bandbreite und das Pipelining der Festplatte, um die Latenz zu maskieren. Der Artikel betont die Anpassung von Algorithmen und Datenzugriff an die Hardware-Eigenschaften für maximale Leistung in modernen Architekturen und untersucht zukünftige Hardwaretrends.