3 ms·
I wonder if using a different allocator in SQLite (https://www.sqlite.org/malloc.html https://www.sqlite.org/malloc.html) would improve performance in their wor
by conradev 2y ago
I wonder if using a different allocator in SQLite (https://www.sqlite.org/malloc.html https://www.sqlite.org/malloc.html) would improve performance in their workload to a greater degree than any amount of Rust or io_uring.
I can understand how io_uring increases server utilization, but I fail to see how it will make any individual query faster.
- jitl 2y ago- A "individual query" can be a very complex, turing-complete computer program. A single query may do >1 IO operation like read or write more than one database page. io_uring & async IO strategy would allow this work to occur concurrently. - Even if no new op-codes are introduced and the design is basically exactly the same, io_uring could allow some amortization of syscall overhead. Doing (N ring-buffer prepares + N/10 syscalls) instead of (N syscalls) will improve your straight-line speed.