2005-02-23 06:09:08

by Rock VZ

[permalink] [raw]
Subject: nfs disk utilization in terms of stress

Hi,

I would like to know how to get disk utilization stats (like the one iostat
gives - %util) from a nfs client.
With nfsstat -c I can get the read/write ratio but I am interested more
in-terms of "stress".
For example
I would like to calculate the stress average by taking the delta of
/proc/net/rpc/nfs between 2 time intervals and calculate percentages based
on total rpcs "possible" rather the rpcs that occured in that interval.
i.e.
Even if only one rpc read call is made then based on nfsstat calculations
it would show a 100% read but it does not mean that the mount point was
'fully utilized' in reading.

How can I know the max. rpc calls possible and then calculate the
percentages based on this value.
Or is there any other way to get nfs "stress" stats.
I'm trying to tune the nfs load so that it operates at 80% utilization. How
can I determine such stats?
We use nfs over tcp (2.4 or 2.6 kernel)

Thanks in advance
Rock

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs


2005-02-23 15:22:07

by Lever, Charles

[permalink] [raw]
Subject: RE: nfs disk utilization in terms of stress

> I would like to know how to get disk utilization stats (like=20
> the one iostat gives - %util) from a nfs client.

currently the nfs client does not provide any such capability. i'm
developing it now in 2.6.

> With nfsstat -c I can get the read/write ratio but I am=20
> interested more in-terms of "stress". For example
> I would like to calculate the stress average by taking the delta of =20
> /proc/net/rpc/nfs between 2 time intervals and calculate=20
> percentages based=20
> on total rpcs "possible" rather the rpcs that occured in that=20
> interval. i.e.
> Even if only one rpc read call is made then based on nfsstat=20
> calculations=20
> it would show a 100% read but it does not mean that the mount=20
> point was 'fully utilized' in reading.

the only way i can think of doing this would be at the network level.
the maximum theoretical throughput of your network would be the "fully
utilized" baseline; then look at the network statistics on your clients
to see how much throughput was actually achieved. for example, you can
get 12.5 MB/s on 100base-TX ethernet; if your NFS client is pushing 6.25
MB/s, then your utilization is 50%. likewise on the server.
unfortunately, currently the kernel does not report the throughput of
just the NFS-generated network traffic. this is an upcoming feature, as
i say, in some future release of 2.6.

there really is no way to determine a "maximum theoretical RPC
throughput." in addition, you'll have to measure NFS server disk
utilization, which is also important to overall NFS performance, in some
other way. and finally, using this method you aren't really measuring
the _efficiency_ of the NFS client -- is it generating an optimally
small number of operations and network bytes for the given application
workload? that's a much harder question to answer.


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs