I have a machine with a good proportion of IOWait 20-30%. It does have
local disks and it performs operations on NFS mounts. I just wanted to
be sure if IOWait includes NFS activity or not. I also want a way if it
is NFS to be able to say for sure if it is a bottleneck on the nfs client or server. NFS is not a linux machine so visibility is not allways the best.

Grant

Daniel Pittman wrote:
Grant Street <[EMAIL PROTECTED]> writes:

I was wondering if someone could point me in the right direction for
some doco?

I don't know of any, but ...

I'm finding it hard to get a definition of what constitutes IOWait.
I know that IOwait is CPU time waiting for IO to happen to physical local
disks, but I'm unsure about the following scenarios and if they contribute to
IOWait:

Not quite.  IOWait is a *software* state, indicating that a process or
thread is blocked waiting for I/O to complete.

This is different from "CPU time waiting for ..." in that it implies the
software is making no progress, but *NOT* that your CPU is spending
cycles working on it.[1]

- CPU time waiting for an NFS read/write to occur

Yes, along with more or less any other "disk" I/O that happens to be run
over the network -- as long as it is synchronous, and something is
waiting on it.

- CPU time waiting for a network buffer to be read/written to. eg waiting for
  a full buffer to clear.

Generally not.  I am not certain about blocking on a full buffer
condition for sending data, but not for blocking while reading.

- Anything else??

Any other synchronous disk I/O, certainly.  Probably certain other,
related, conditions where the kernel developers feel that the process is
blocked on I/O.

PS. How do you set/query the network buffers in Linux?

Via the socket fcntl / ioctl interface, or via the sysctls in
/proc/sys/net, which are documented in the standard Linux kernel sysctl
documentation.


All that said, you might want to tell us why you are asking, not just
what, since I suspect there is a question about why you have so much
IOWait time on your system, or poor performance?

Regards,
        Daniel

Footnotes: [1] It does, technically, spend a few in terms of submitting and
     completing the I/O before it wakes up the blocked process, and
     various I/O devices need babysitting, but the principal is sound. ;)




Animal Logic
http://www.animallogic.com

Please think of the environment before printing this email.

This email and any attachments may be confidential and/or privileged. If you 
are not the intended recipient of this email, you must not disclose or use the 
information contained in it. Please notify the sender immediately and delete 
this document if you have received it in error. We do not guarantee this email 
is error or virus free.



--
SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html

Reply via email to