Re: [PATCH v5 00/13] NFSD DIRECT and NFS DIRECT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/28/25 9:44 AM, Mike Snitzer wrote:
> On Sun, Jul 27, 2025 at 11:39:18AM -0400, Chuck Lever wrote:
>> On 7/24/25 3:30 PM, Mike Snitzer wrote:
>>> Hi,
>>>
>>> Some workloads benefit from NFSD avoiding the page cache, particularly
>>> those with a working set that is significantly larger than available
>>> system memory.  This patchset introduces _optional_ support to
>>> configure the use of O_DIRECT or DONTCACHE for NFSD's READ and WRITE
>>> support.  The NFSD default to use page cache is left unchanged.
>>>
>>> The performance win associated with using NFSD DIRECT was previously
>>> summarized here:
>>> https://lore.kernel.org/linux-nfs/aEslwqa9iMeZjjlV@xxxxxxxxxx/
>>> This picture offers a nice summary of performance gains:
>>> https://original.art/NFSD_direct_vs_buffered_IO.jpg
>>>
>>> Similarly, NFS and LOCALIO in particular also benefit from avoiding
>>> the page cache for workloads that have a working set that is
>>> significantly larger than available system memory. Enter: NFS DIRECT,
>>> which makes it possible to always enable LOCALIO to use O_DIRECT even
>>> if the IO is not DIO-aligned.
>>>
>>> For this v5 I've combined the NFSD and NFSD patchsets because the NFS
>>> changes do depend on the the NFSD changes.  In addition, I think it
>>> makes sense to review/test these changes together.
>>
>> I'm ready to pull the six NFSD patches in this series into nfsd-testing.
>> IMO we want regression and performance testing of NFSD, outside of the
>> LOCALIO paths, before claiming merge readiness.
> 
> Makes sense, the NFSD changes are independent.  LOCALIO's access to
> the dio alignment attrs in nfsd_file is a convenience.

As I was drifting off to sleep last night, my mind hallucinated the
idea that maybe all (three) caching modes should align the READ
payload. Would that make sense / simplify 06/13 ?


-- 
Chuck Lever




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux