Documentation: remove overloads-avoided counter from knfsd-stats.txt
The 'overloads-avoided' counter itself was removed several years ago by
commit 78c210e
(Revert "knfsd: avoid overloading the CPU scheduler with
enormous load averages").
Signed-off-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
fd89145460
commit
72faedae8b
|
@ -68,16 +68,10 @@ sockets-enqueued
|
||||||
rate of change for this counter is zero; significantly non-zero
|
rate of change for this counter is zero; significantly non-zero
|
||||||
values may indicate a performance limitation.
|
values may indicate a performance limitation.
|
||||||
|
|
||||||
This can happen either because there are too few nfsd threads in the
|
This can happen because there are too few nfsd threads in the thread
|
||||||
thread pool for the NFS workload (the workload is thread-limited),
|
pool for the NFS workload (the workload is thread-limited), in which
|
||||||
or because the NFS workload needs more CPU time than is available in
|
case configuring more nfsd threads will probably improve the
|
||||||
the thread pool (the workload is CPU-limited). In the former case,
|
performance of the NFS workload.
|
||||||
configuring more nfsd threads will probably improve the performance
|
|
||||||
of the NFS workload. In the latter case, the sunrpc server layer is
|
|
||||||
already choosing not to wake idle nfsd threads because there are too
|
|
||||||
many nfsd threads which want to run but cannot, so configuring more
|
|
||||||
nfsd threads will make no difference whatsoever. The overloads-avoided
|
|
||||||
statistic (see below) can be used to distinguish these cases.
|
|
||||||
|
|
||||||
threads-woken
|
threads-woken
|
||||||
Counts how many times an idle nfsd thread is woken to try to
|
Counts how many times an idle nfsd thread is woken to try to
|
||||||
|
@ -88,36 +82,6 @@ threads-woken
|
||||||
thing. The ideal rate of change for this counter will be close
|
thing. The ideal rate of change for this counter will be close
|
||||||
to but less than the rate of change of the packets-arrived counter.
|
to but less than the rate of change of the packets-arrived counter.
|
||||||
|
|
||||||
overloads-avoided
|
|
||||||
Counts how many times the sunrpc server layer chose not to wake an
|
|
||||||
nfsd thread, despite the presence of idle nfsd threads, because
|
|
||||||
too many nfsd threads had been recently woken but could not get
|
|
||||||
enough CPU time to actually run.
|
|
||||||
|
|
||||||
This statistic counts a circumstance where the sunrpc layer
|
|
||||||
heuristically avoids overloading the CPU scheduler with too many
|
|
||||||
runnable nfsd threads. The ideal rate of change for this counter
|
|
||||||
is zero. Significant non-zero values indicate that the workload
|
|
||||||
is CPU limited. Usually this is associated with heavy CPU usage
|
|
||||||
on all the CPUs in the nfsd thread pool.
|
|
||||||
|
|
||||||
If a sustained large overloads-avoided rate is detected on a pool,
|
|
||||||
the top(1) utility should be used to check for the following
|
|
||||||
pattern of CPU usage on all the CPUs associated with the given
|
|
||||||
nfsd thread pool.
|
|
||||||
|
|
||||||
- %us ~= 0 (as you're *NOT* running applications on your NFS server)
|
|
||||||
|
|
||||||
- %wa ~= 0
|
|
||||||
|
|
||||||
- %id ~= 0
|
|
||||||
|
|
||||||
- %sy + %hi + %si ~= 100
|
|
||||||
|
|
||||||
If this pattern is seen, configuring more nfsd threads will *not*
|
|
||||||
improve the performance of the workload. If this patten is not
|
|
||||||
seen, then something more subtle is wrong.
|
|
||||||
|
|
||||||
threads-timedout
|
threads-timedout
|
||||||
Counts how many times an nfsd thread triggered an idle timeout,
|
Counts how many times an nfsd thread triggered an idle timeout,
|
||||||
i.e. was not woken to handle any incoming network packets for
|
i.e. was not woken to handle any incoming network packets for
|
||||||
|
|
Loading…
Reference in New Issue