Readdir ls -f graphs

From Linux NFS

(Difference between revisions)
Jump to: navigation, search
(NFS v3)
(NFS v3)
 
(4 intermediate revisions not shown)
Line 10: Line 10:
=== NFS v3 ===
=== NFS v3 ===
* [[File:v3_ls_f_noplus_real.jpg]]
* [[File:v3_ls_f_noplus_real.jpg]]
 +
** 2.6.36 based kernels seem to be slightly slower than 2.6.38 based kernels.
* [[File:v3_ls_f_plus_real.jpg]]
* [[File:v3_ls_f_plus_real.jpg]]
** 2.6.38 performs the same as 2.6.36 with the readdir plus cap removed.  Using readdir rather than readdir plus is faster in this case.
** 2.6.38 performs the same as 2.6.36 with the readdir plus cap removed.  Using readdir rather than readdir plus is faster in this case.
 +
=== NFS v4 ===
=== NFS v4 ===
* [[File:v4_ls_f_noplus_real.jpg]]
* [[File:v4_ls_f_noplus_real.jpg]]
 +
** 2.6.36 based kernels take more time to finish the command than 2.6.38 based kernels.
* [[File:v4_ls_f_plus_real.jpg]]
* [[File:v4_ls_f_plus_real.jpg]]
 +
** 2.6.38 based kernels can complete this command much faster than 2.6.36 based kernels.
== Sys ==
== Sys ==
Line 20: Line 24:
* [[File:v3_ls_f_noplus_sys.jpg]]
* [[File:v3_ls_f_noplus_sys.jpg]]
* [[File:v3_ls_f_plus_sys.jpg]]
* [[File:v3_ls_f_plus_sys.jpg]]
 +
** Using readdir plus for this command takes longer than using a simple readdir.
 +
=== NFS v4 ===
=== NFS v4 ===
* [[File:v4_ls_f_noplus_sys.jpg]]
* [[File:v4_ls_f_noplus_sys.jpg]]
Line 30: Line 36:
** 2.6.36 kernels issue fewer RPC operations than 2.6.38 kernels
** 2.6.36 kernels issue fewer RPC operations than 2.6.38 kernels
* [[File:v3_ls_f_plus_rpc.jpg]]
* [[File:v3_ls_f_plus_rpc.jpg]]
 +
** Kernels with readdir plus limiting seem to have fewer RPC operations than kernels without the limit.
=== NFS v4 ===
=== NFS v4 ===
* [[File:v4_ls_f_noplus_rpc.jpg]]
* [[File:v4_ls_f_noplus_rpc.jpg]]
 +
** 2.6.36 based kernels issue fewer RPC calls than 2.6.38 kernels.
* [[File:v4_ls_f_plus_rpc.jpg]]
* [[File:v4_ls_f_plus_rpc.jpg]]
 +
** 2.6.36 based kernels give the fewest number of RPC calls.  2.6.38 with readdir plus limiting issues a few hundred more RPC operations, but not nearly as much as an unmodified 2.6.38 kernel.

Latest revision as of 19:14, 7 April 2011

    36: Linux 2.6.36
36NORC: Linux 2.6.36 (without readdir cap)
    38: Linux 2.6.38
  38RC: Linux 2.6.38 (with readdir cap added back)
  38NB: Linux 2.6.38 (with Neil Brown's patch and loop detection)

Contents

Real

NFS v3

  • V3 ls f noplus real.jpg
    • 2.6.36 based kernels seem to be slightly slower than 2.6.38 based kernels.
  • V3 ls f plus real.jpg
    • 2.6.38 performs the same as 2.6.36 with the readdir plus cap removed. Using readdir rather than readdir plus is faster in this case.

NFS v4

  • V4 ls f noplus real.jpg
    • 2.6.36 based kernels take more time to finish the command than 2.6.38 based kernels.
  • V4 ls f plus real.jpg
    • 2.6.38 based kernels can complete this command much faster than 2.6.36 based kernels.

Sys

NFS v3

  • V3 ls f noplus sys.jpg
  • V3 ls f plus sys.jpg
    • Using readdir plus for this command takes longer than using a simple readdir.

NFS v4

  • V4 ls f noplus sys.jpg
  • V4 ls f plus sys.jpg
    • Unmodified 2.6.38 gives the worst performance here. All other kernels seem to give roughly the same results.

RPC ops

NFS v3

  • V3 ls f noplus rpc.jpg
    • 2.6.36 kernels issue fewer RPC operations than 2.6.38 kernels
  • V3 ls f plus rpc.jpg
    • Kernels with readdir plus limiting seem to have fewer RPC operations than kernels without the limit.

NFS v4

  • V4 ls f noplus rpc.jpg
    • 2.6.36 based kernels issue fewer RPC calls than 2.6.38 kernels.
  • V4 ls f plus rpc.jpg
    • 2.6.36 based kernels give the fewest number of RPC calls. 2.6.38 with readdir plus limiting issues a few hundred more RPC operations, but not nearly as much as an unmodified 2.6.38 kernel.
Personal tools