News [LWN.net] [$] Lockless MPSC FIFO queues for io_uring

News

LinuxBot

Member
Joined
Apr 25, 2017
Messages
6,869
Reaction score
94
Credits
-1,257
Processes that use io_uring tend to keep a lot of balls in the air; being able to have many operations underway at any given time is part of the point of that API in the first place. The io_uring subsystem must, as a result, keep track of a lot of tasks that have to be performed at the right time. In current kernels, io_uring uses a standard kernel linked-list primitive to track those work items. As of the 7.2 kernel release, though, io_uring will, instead, use a new lockless, multi-producer, single-consumer (MPSC) queue, resulting in some notable performance gains. Lockless algorithms tend to be tricky, but the one used here is relatively approachable and shows how these algorithms can work.

Source: https://lwn.net/Articles/1081871/

Aggregated via Linux News
 


Follow Linux.org

Staff online

Members online


Top