OpenZFS Lands Sync Parallelism To Drive Big Gains For Write Performance Scalability
A very enticing performance optimization was merged yesterday into the OpenZFS codebase to enhance the write performance scalability.
Edmund Nadolski at iXsystems has been working on this ZFS synchronization parallelism enhancement since the summer. The new code allows parallel syncing of more than one dataset/object and reducing locking contention. The goal of this work is to enhance the write performance scalability. In tests carried out by the developer on an AMD EPYC server running OpenZFS the write bandwidth improved from 1328MB/s to 2495MB/s.
Tests by another developer also saw the FIO write bandwidth jump from 1386MB/s to 2449MB/s.
The locking contention also was found to be lower in addition to the big write performance gains.
More details on this ZFS sync parallelism for OpenZFS, which was merged to Git yesterday, can be found via the pull request.
Edmund Nadolski at iXsystems has been working on this ZFS synchronization parallelism enhancement since the summer. The new code allows parallel syncing of more than one dataset/object and reducing locking contention. The goal of this work is to enhance the write performance scalability. In tests carried out by the developer on an AMD EPYC server running OpenZFS the write bandwidth improved from 1328MB/s to 2495MB/s.
Tests by another developer also saw the FIO write bandwidth jump from 1386MB/s to 2449MB/s.
The locking contention also was found to be lower in addition to the big write performance gains.
More details on this ZFS sync parallelism for OpenZFS, which was merged to Git yesterday, can be found via the pull request.
33 Comments