On Sat, 2022-02-19 at 17:22 -0700, Jens Axboe wrote:
Yes.
Outside of this, I was hoping to see some performance numbers in the
main patch. Sounds like you have them, can you share?
It is not much. Only numbers from my application and it is far from
being the best benchmark because the result can be influenced by
multiple external factors.
Beside addressing the race condition remaining inside io_cqring_wait()
around napi_list for v2 patch, creating a benchmark program that
isolate the performance of the new feature is on my todo list.
I would think that creating a simple UDP ping-pong setup and measure
RTT with and without busy_polling should be a good enough test.
In the meantime, here are the results that I have:
Without io_uring busy poll:
reaction time to an update: 17159usec
reaction time to an update: 19068usec
reaction time to an update: 23055usec
reaction time to an update: 16511usec
reaction time to an update: 17604usec
With io_uring busy poll:
reaction time to an update: 15782usec
reaction time to an update: 15337usec
reaction time to an update: 15379usec
reaction time to an update: 15275usec
reaction time to an update: 15107usec
Concerning my latency issue with busy polling, I have found this that
might help me:
https://lwn.net/ml/netdev/20201002222514.1159492-1-weiwan@xxxxxxxxxx/