OpenZFS Merges Support For Direct IO

Written by Michael Larabel in Linux Storage on 20 September 2024 at 06:30 AM EDT. 34 Comments
LINUX STORAGE
The OpenZFS project has merged DirectIO (O_DIRECT) support for the ZFS file-system to bypass the ARC for reads and writes.

The Direct IO support for OpenZFS dates back to a pull request started back in 2020 by Brian Atkinson. The pull request explains:
"By adding Direct IO support to ZFS, the ARC can be bypassed when issuing reads/writes. There are certain cases where caching data in the ARC can decrease overall performance. In particular the performance of ZPool's composed of NVMe devices displayed poor read/write performance due to the extra overhead of memcpy's issued to the ARC.

There are also cases where caching in the ARC may not make sense such as when data will not be referenced later. By using the O_DIRECT flag, unnecessary data copies to the ARC can be avoided."

This Direct IO support should be a nice boost to performance for NVMe storage devices.

OpenZFS Direct IO merged


After more than four years of the pull request being opened, last week it was finally merged to the OpenZFS codebase.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week