I'm doing some basic benchmarks for io-uring related async runtimes.
For multi-thread tokio-uring, I got
Avg: 59384 (593841 / 10s) 👈 all tasks finishes, but I got reports below
corrupted double-linked list
fish: Job 1, 'cargo run --example server_toki…' terminated by signal SIGABRT (Abort)
The server code is
And the reproducible steps:
$ git clone https://github.com/os-checker/bench-uring.git
$ git checkout 103f6b22b673b5d335dbfc6f2d4205a6aa1436d4
# Terminal 1: wait for 10 seconds of handling requests to finish and exit
$ cargo run --example server_tokio_uring_mt
# Terminal 2
$ cargo run --example client_tokio_st
I didn't get the SIGABRT in single-threaded server_tokio_uring_st which shares the same implementation linked and exits normally.