Thanks for prompt reply!

 > CPU's don't wait for io, processes do.
Fine. But I guess even this was known a long time ago. To make things clearer 
one could
change the explanation for the %wio column in sar from "idle waiting for io" to 
the pedantic
"percentage of time where cpu(s) is/are idle with threads existing on the 
system that are waiting for completion in biowait()". This would perhaps be 
better than not providing this
data. 
Before Solaris10 we had to types of CPU idle time:
1.) CPU idle (with threads) waiting for for IO (sar column %wio)
2.) CPU otherwise idle (sar column %idle)
So we could easily get an impression of why the CPUs are idle:
1.) at least one thread can't go on because it is waiting for IO
2.) no programm is running 
On Solaris10 with a large database encountering very poor IO performance
I might see 100 %idle and have no idea that the CPU(s) are idle because
of hundreds of IO-requests pending. Where can I get a hint on the IO-issue
easier than from %wio?

 > wio only makes sense on a uni-processor.
Why? Of course it should be clear what is meant by the value:
a) percentage of time where any thread is in biowait()
b) the same normalized against the number of CPUs
    (which - I guess - would be a deviation from all other known UNIXes)
But in principle I cannot see why "idle with threads waiting for io" is
useless on a multiprocessor system. Nobody doubts that "%idle" 
is a useful value on mulitprocessor systems so why should the
value "idle with threads waiting for io" be?
And why should it hurt to provide the same data as all others do
with a view to the fact that the code is there?

If there are arguments for a CPU-normalized approach one could
perhaps compare the number of threads waiting in biowait() against
the number of CPUs in the system. So we would take into account the
number of CPUs:
o 8 threads in biowait() on an 8CPU system and no other runnable
   processes -> 100% wio  - 0% idle
o 1 thread in biowait() on a 8CPU system and no other runnable 
   processes -> 12.5% wio - 87.5% idle

But anyway - any useful value in %wio would be better than a
dead column showing 0.

Regards

bert
 
 
This message posted from opensolaris.org
_______________________________________________
perf-discuss mailing list
perf-discuss@opensolaris.org

Reply via email to