Linux No-Copy Bvec Patches Adapted for the New Year as Another I / O Optimization

LINUX BERGING -

The Linux kernel has seen incredible innovations and optimizations in the I / O field lately, from IO_ to numerous performance improvements. One of the recent performance improvements that involves activities and promising results is the behavior without copy.

As explained by developer Pavel Begunkov, who led the copy of the bvec support work, “Right now, when iomap and block direct IO get an itec-based iterator, the bvec will be copied, with all the other accounts taking a lot of CPU time and causing additional allocation for larger bvecs. The patch makes it possible to reuse the successful in iter bvec.

This work to avoid copies of bvecs during direct I / O can provide measurable performance improvements while also reducing memory consumption. Pavel noted that in tests with a 4K block size, a test system of 1208k to 1222k IOPS went with these spots. For a 64K block size, it has risen from 699k IOPS to 982k IOPS.

With the latest spots are more numbers for those interested. The work is currently up to the second revision after the original “request for comment” spots. It is quite possible that in the short term we will see the no-copy bvec support country in a new core cycle as another Linux I / O performance improvement.

.Source