Linux 6.4 Device Mapper To See Improved Concurrent I/O Performance
Thanks to forthcoming work out of Red Hat, the Linux 6.4 Device Mapper (DM) code is expected to see some optimization work that can significantly benefit concurrent I/O performance... In one case at least acquiring buffers now about 25 times faster.
Red Hat's Joe Thornber, Mike Snitzer, and Mikulas Patocka have been working on some interesting improvements to the DM code to enhance the concurrent I/O performance. The work has begun landing within Device Mapper's dm-6.4 branch.
Snitzer additionally posted on dm-devel about this work and the plan to have it all readied for Linux 6.4 to help with the concurrent I/O performance. Some of the key notes include:
There's about one month to go until the Linux 6.4 kernel merge window gets underway.
Red Hat's Joe Thornber, Mike Snitzer, and Mikulas Patocka have been working on some interesting improvements to the DM code to enhance the concurrent I/O performance. The work has begun landing within Device Mapper's dm-6.4 branch.
Snitzer additionally posted on dm-devel about this work and the plan to have it all readied for Linux 6.4 to help with the concurrent I/O performance. Some of the key notes include:
When multiple threads perform IO to a thin device, the underlying dm_bufio object can become a bottleneck; slowing down access to btree nodes that store the thin metadata. Prior to this commit, each bufio instance had a single mutex that was taken for every bufio operation.
This commit concentrates on improving the common case where: a user of dm_bufio wishes to access, but not modify, a buffer which is already within the dm_bufio cache.
...
PLEASE HELP with further testing of other more exotic DM bufio consumers and elaborate usecases (be it via Android, Chrome OS, etc).
...
Most bufio operations have unchanged performance. But if multiple threads are attempting to get buffers concurrently, and these buffers are already in the cache then there's a big speed up. Eg, one test has 16 'hotspot' threads simulating btree lookups while another thread dirties the whole device. In this case the hotspot threads acquire the buffers about 25 times faster.
There's about one month to go until the Linux 6.4 kernel merge window gets underway.
7 Comments