Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Apr 2005 14:54:31 -0500
From:      Eric Anderson <anderson@centtech.com>
To:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: gstat shows > 100% busy
Message-ID:  <42616D77.2070205@centtech.com>
In-Reply-To: <3703.1113680811@critter.freebsd.dk>
References:  <3703.1113680811@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
Poul-Henning Kamp wrote:
> In message <42616975.9060303@centtech.com>, Eric Anderson writes:
> 
> 
>>Is gstat supposed to show > 100% sometimes?  What does that mean,
>>or is it a bug?
>>
>>dT: 0.501  flag_I 500000us  sizeof 240  i -1
>> L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w   %busy Name
>>    2    260    146  14912   10.7    114  14565    2.8  148.1| ad0
>>    0      0      0      0    0.0      0      0    0.0    0.0| ad0s1
> 
> 
> The reason gstat shows >100% busy is that there are some outstanding
> requests. (the 2 in the left hand column).
> 
> I tried to make the statistics collection as cheap as possible, and
> as a side effect some of the columns can be somewhat misleading.

Makes perfect sense, and I was thinking that was the case.  I love how fast and 
non-cpu intensive it is.  I use this tool like *crazy* on my servers.  Thanks 
for writing it!


> The length of the queue "L(q)" can be plain wrong due to a race in
> updating the counters and %busy can go over 100% while there are
> outstanding requests.
> 
> The sysctl kern.geom.collectstats can be used to tune some aspects
> of the statistics collection, but the %busy issue is just something
> you have to live with.
> 
> The reason why I don't want to spend cpu time on the %busy field
> is that it is useless as a performance indication for all modern
> disks and most ancient ones as well.

Why is that?  I have a general notion, but I'd like to know more details.  If 
this is documented somewhere, just give me a pointer and I'll read away.


> The "ms/r" and "ms/w" give you the time it takes to send a transaction
> through (in milliseconds, for read and write respectively) and those
> are the numbers you should monitor.

Thanks!  I've been reading man pages and such trying to figure out what else is 
cool I'm missing.  I just happened to stumble into the tool while messing with 
ggate (another really awesome tool).


Is there a place to grab those stats in a more 'script friendly' way?  I am the 
author of a (rather cheesy) tool called bsdsar, and I'm thinking about updating 
it with all the new cool 5.X-isms.

Thanks for the quick responses!

Eric



-- 
------------------------------------------------------------------------
Eric Anderson        Sr. Systems Administrator        Centaur Technology
A lost ounce of gold may be found, a lost moment of time never.
------------------------------------------------------------------------



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42616D77.2070205>