Linux 6.12 NFS Adds LOCALIO Protocol For "Extreme" Performance Boost
([Linux Storage] 5 Hours Ago
NFS)
- Reference: 0001493733
- News link: https://www.phoronix.com/news/Linux-6.12-NFS
- Source link:
The Network File System (NFS) changes have been merged for the ongoing [1]Linux 6.12 development cycle. Notable this time with NFS is adding LOCALIO protocol extension support that can lead to fairly "extreme" performance improvements in scenarios where the NFS client and server are on the same host.
The LOCALIO protocol support allows the NFS client and server to reliably determine if they are on the same host. If they happen to be on the same host, the network RPC protocol for read/write/commit operations are bypassed. Due to bypassing the XDR and RPC for reads/writes/commits, there can be big performance gains to using the LOCALIO protocol.
One of the intended scenarios where it can be common for having the NFS client and server on the same host is when running containerized workloads being executed on the same server as the NFSD instance for providing the storage.
The performance benefits to using LOCALIO have been described as "extreme" in the documentation and demonstrated as a more than 10x improvement for 4K reads while having many libaio threads. But even in other cases there are very solid gains too:
The LOCALIO protocol extension support was [2]merged for Linux 6.12 as part of the NFS client updates along with introducing a new "noalignwrites" mount option for lock-less lost writes prevention. Plus a handful of bug fixes and other code clean-ups.
[1] https://www.phoronix.com/search/Linux+6.12
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=684a64bf32b6e488004e0ad7f0d7e922798f65b6
The LOCALIO protocol support allows the NFS client and server to reliably determine if they are on the same host. If they happen to be on the same host, the network RPC protocol for read/write/commit operations are bypassed. Due to bypassing the XDR and RPC for reads/writes/commits, there can be big performance gains to using the LOCALIO protocol.
One of the intended scenarios where it can be common for having the NFS client and server on the same host is when running containerized workloads being executed on the same server as the NFSD instance for providing the storage.
The performance benefits to using LOCALIO have been described as "extreme" in the documentation and demonstrated as a more than 10x improvement for 4K reads while having many libaio threads. But even in other cases there are very solid gains too:
The LOCALIO protocol extension support was [2]merged for Linux 6.12 as part of the NFS client updates along with introducing a new "noalignwrites" mount option for lock-less lost writes prevention. Plus a handful of bug fixes and other code clean-ups.
[1] https://www.phoronix.com/search/Linux+6.12
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=684a64bf32b6e488004e0ad7f0d7e922798f65b6
Chugworth