DigiNews

Tech Watch by Johan Denoyer

← Back to articles

We Replaced mmap with io_uring in Our Rust Query Engine. It Got Slower

Quality: 8/10 Relevance: 9/10

Summary

A production case study of replacing mmap with io_uring in Conviva's Rust query engine. The authors find that while io_uring reduces major page faults by bypassing the kernel page cache, overall performance can degrade due to minor faults, memory copying in Arrow, and IO coordination complexity. The post chronicles experiments, measured bottlenecks, and initial architectural lessons, with a plan for future improvements and a deeper follow-up post.

🚀 Service construit par Johan Denoyer