Linux NFS Client Write Performance

We introduce a simple sequential write benchmark and use it to improve the Linux NFS client’s write performance. We reduce the latency of the write() system call, improve SMP write performance, and reduce kernel CPU processing during sequential writes. Memory write throughput to NFS files improves by more than a factor of three.

[1]  Mahadev Satyanarayanan,et al.  The ITC distributed file system: principles and design , 1985, SOSP '85.

[2]  Fred Douglis,et al.  Beating the I/O bottleneck: a case for log-structured file systems , 1989, OPSR.

[3]  William I. Nowicki,et al.  NFS: Network File System Protocol specification , 1989, RFC.

[4]  Rick Macklem,et al.  Lessons Learned Tuning the 4.3BSD Reno Implementation of the NFS Protocol , 1991, USENIX Winter.

[5]  D. B. Davis,et al.  Sun Microsystems Inc. , 1993 .

[6]  Bruce E. Keith,et al.  LADDIS: The Next Generation in NFS File Server Benchmarking , 1993, USENIX Summer.

[7]  James Lau,et al.  File System Design for an NFS File Server Appliance , 1994, USENIX Winter.

[8]  Carl Smith,et al.  NFS Version 3: Design and Implementation , 1994, USENIX Summer.

[9]  Chet Juszczak,et al.  Improving the Write Performance of an NFS Server , 1994, USENIX Winter.

[10]  Rick Macklem,et al.  Not Quite NFS, Soft Cache Consistency for NFS , 1994, USENIX Winter.

[11]  Michael Dahlin,et al.  A quantitative analysis of cache policies for scalable network file systems , 1994, SIGMETRICS.

[12]  Carl Staelin,et al.  lmbench: Portable Tools for Performance Analysis , 1996, USENIX Annual Technical Conference.

[13]  K. K. Ramakrishnan,et al.  Eliminating receive livelock in an interrupt-driven kernel , 1996, TOCS.

[14]  Richard P. Martin,et al.  NFS sensitivity to high performance networks , 1999, SIGMETRICS '99.

[15]  R. Card,et al.  Design and Implementation of the Second Extended Filesystem , 2001 .