Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What is the best way to determine in Linux if a multi-processor machine is overloaded? I thought load was a good measure but I run a large number of tasks which don't consume a lot of CPU but which drive up the load. A 4 processor machine has a load of 66 right now according to top for example but mpstat reports that the all CPU idle time is 89%.

share|improve this question
Load is a terrible way of telling if you're short on CPU power. – Ignacio Vazquez-Abrams Jun 29 '11 at 19:56
Yes I know - that's the purpose of the question :) They're a decent rule of thumb but I'm looking for something better. Really, I need a metric that shows me whether processes are waiting to be allocated. – dromodel Jun 29 '11 at 20:15

Keep in mind that top displays 3 load averages. This is the line from my box:

load average: 0.02, 0.08, 0.12

The first number is the one minute average, second is 5 minute and the third is 15 minute. If you're only looking at the one minute average, that's not good enough. Standard rule of thumb is that the load should not be greater than 1 in a single core, 2 for dual core, etc. So, for example's sake, let's say you're running a quad core box. Anything above 4 is overloaded. That being said, you may see spikes in the one minute load average, but the 5 and 15 minute may still be fine.

Another explanation can be found here:

share|improve this answer
Load from top is 73, 72, 70. I don't think averages are going to solve this problem. mpstat idle now 89%. – dromodel Jun 29 '11 at 20:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .