How do you determine that the performance of your Linux server is I/O bound and, perhaps more importantly, what process or processes are casuing the problem?


5 Answers 5


I wrote a comprehensive guide to tracking down performance bottlenecks on Linux systems for work: http://web.archive.org/web/20101028025942/https://anchor.com.au/hosting/development/HuntingThePerformanceWumpus . Covers more than you asked for, but it'll (hopefully) help you track down the problem you're seeing regardless of the actual source.

  • 1
    Yeah, it's a bit wordy, I'm sure plenty of people have gone "TL;DR" at it. I prefer to give people the tools to solve problems generally rather than give pat answers to specific instances of problems, which leaves them dependent. This stuff is Hard, though, and if tracking down a performance problem isn't what you want to spend your time doing, well, you can always hire someone who's already read the article... <grin>
    – womble
    May 2, 2009 at 2:34
  • 2
    Fixed the link good and proper now. Marketing don't understand the concept of "stable links"...
    – womble
    Jun 12, 2014 at 10:31

Top has a field called "iowait". If your system is seeing a lot of that, you know something's up. There's also iotop!

Package: iotop:
Description: simple top-like I/O monitor
 iotop does for I/O usage what top(1) does for CPU usage. It watches I/O
 usage information output by the Linux kernel (requires 2.6.20 or later)
 and displays a table of current I/O usage by processes on the system.
 Handy for answering the question "Why is my disk churning so much?".
Homepage: http://guichaz.free.fr/iotop/

IoTop is probably what you're looking for.


We can find bottleneck in linux server performance using following method..

  1. Take the output of TOP & mem, vmstat commands in one notepad.
  2. Take sar output of 3 months.
  3. check the variation in processes & usage at the time of implementation or change.
  4. If the load is unusual since the change. check for reverting change.
  5. Alternatively one can also check for system & application logs too.

The above thing will definitely tell us bottleneck..


I/O bottlenecks can be found using some linux basic commands..And also investigating and comparing their outputs. Read: Understanding Linux IO

  • 3
    That's far too vague to be an answer. How about at least listing some of those commands. Feb 1, 2013 at 11:55
  • 4
    While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. Feb 1, 2013 at 17:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.