Messages in this thread | | | Subject | Re: about definition of iowait | From | Cao jin <> | Date | Wed, 8 Jun 2016 15:14:23 +0800 |
| |
On 06/07/2016 08:01 PM, Peter Zijlstra wrote: > On Tue, Jun 07, 2016 at 07:24:46PM +0800, Cao jin wrote: >> Hi, >> >> I noticed some problems about iowait entry of /proc/stat: it seems not >> accurate, and sometimes will decrease in SMP. >> >> For UP, we have a simple definition about iowait, which is: >> The time that the processor is idle, during which there is a task waiting >> for I/O. >> >> This definition seems don't fit well when step into SMP era, so I think >> maybe it can be extended like: >> For a given CPU, the I/O wait time is the time during which that CPU was >> idle, and there is at least one outstanding disk I/O operation requested by >> a task scheduled on that CPU. >> >> But tasks can migrate among cpus, so this definition maybe not accurate. >> >> I also saw some suggestions that it should be a global value, not per cpu, >> but don`t see clear definition, so anyone have suggestions about it? >> (personally guessing, maybe: there is task waiting for outstanding I/O while >> all cpus are idle? But I don't think it is good...) > > It is possible to come up with definition for a single global number; > per-cpu iowait numbers are doomed. > > But I don't see it matters one way or the other. Personally I would just > make the kernel return 0 and be done with it. >
I see. Thanks peter
-- Yours Sincerely,
Cao jin
| |