Server Load in WHM, SSH (0.78 1.02 2.52)

Server Load in WHM, SSH  (0.78 1.02 2.52) What the heck does all that mean?

This is one of the best analagys of how to explain what these numbers mean; new members, this is important to you!

This is taken from a blog > http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages

Understanding Linux CPU Load - when should you be worried?

POSTED IN EXAMPLES | Comments 16 COMMENTS

 

You might be familiar with Linux load averages already. Load averages are the three numbers shown with the uptime and top commands - they look like this:

load average: 0.09, 0.05, 0.01

Most people have an inkling of what the load averages mean: the three numbers represent averages over progressively longer periods of time (one, five, and fifteen minute averages), and that lower numbers are better. Higher numbers represent a problem or an overloaded machine. But, what's the the threshold? What constitutes "good" and "bad" load average values? When should you be concerned over a load average value, and when should you scramble to fix it ASAP?

First, a little background on what the load average values mean. We'll start out with the simplest case: a machine with one single-core processor.

The traffic analogy

A single-core CPU is like a single lane of traffic. Imagine you are a bridge operator ... sometimes your bridge is so busy there are cars lined up to cross. You want to let folks know how traffic is moving on your bridge. A decent metric would be how many cars are waiting at a particular time. If no cars are waiting, incoming drivers know they can drive across right away. If cars are backed up, drivers know they're in for delays.

So, Bridge Operator, what numbering system are you going to use? How about:

  • 0.00 means there's no traffic on the bridge at all. In fact, between 0.00 and 1.00 means there's no backup, and an arriving car will just go right on.
  • 1.00 means the bridge is exactly at capacity. All is still good, but if traffic gets a little heavier, things are going to slow down.
  • over 1.00 means there's backup. How much? Well, 2.00 means that there are two lanes worth of cars total -- one lane's worth on the bridge, and one lane's worth waiting. 3.00 means there are three lane's worth total -- one lane's worth on the bridge, and two lanes' worth waiting. Etc.

 = load of 1.00

 = load of 0.50

 = load of 1.70



This is basically what CPU load is. "Cars" are processes using a slice of CPU time ("crossing the bridge") or queued up to use the CPU. Unix refers to this as the run-queue length: the sum of the number of processes that are currently running plus the number that are waiting (queued) to run.

Like the bridge operator, you'd like your cars/processes to never be waiting. So, your CPU load should ideally stay below 1.00. Also like the bridge operator, you are still ok if you get some temporary spikes above 1.00 ... but when you're consistently above 1.00, you need to worry.

So you're saying the ideal load is 1.00?

Well, not exactly. The problem with a load of 1.00 is that you have no headroom. In practice, many sysadmins will draw a line at 0.70:

  • The "Need to Look into it" Rule of Thumb: 0.70 If your load average is staying above > 0.70, it's time to investigate before things get worse.

  • The "Fix this now" Rule of Thumb: 1.00. If your load average stays above 1.00, find the problem and fix it now. Otherwise, you're going to get woken up in the middle of the night, and it's not going to be fun.

  • The "Arrgh, it's 3AM WTF?" Rule of Thumb: 5.0. If your load average is above 5.00, you could be in serious trouble, your box is either hanging or slowing way down, and this will (inexplicably) happen in the worst possible time like in the middle of the night or when you're presenting at a conference. Don't let it get there.

What about Multi-processors? My load says 3.00, but things are running fine!

Got a quad-processor system? It's still healthy with a load of 3.00.

On multi-processor system, the load is relative to the number of processor cores available. The "100% utilization" mark is 1.00 on a single-core system, 2.00, on a dual-core, 4.00 on a quad-core, etc.

If we go back to the bridge analogy, the "1.00" really means "one lane's worth of traffic". On a one-lane bridge, that means it's filled up. On a two-late bridge, a load of 1.00 means its at 50% capacity -- only one lane is full, so there's another whole lane that can be filled.

 = load of 2.00 on two-lane road

Same with CPUs: a load of 1.00 is 100% CPU utilization on single-core box. On a dual-core box, a load of 2.00 is 100% CPU utilization.

Multicore vs. multiprocessor

While we're on the topic, let's talk about multicore vs. multiprocessor. For performance purposes, is a machine with a single dual-core processor basically equivalent to a machine with two processors with one core each? Yes. Roughly. There are lots of subtleties here concerning amount of cache, frequency of process hand-offs between processors, etc. Despite those finer points, for the purposes of sizing up the CPU load value, the total number of cores is what matters, regardless of how many physical processors those cores are spread across.

Which leads us to a two new Rules of Thumb:

  • The "number of cores = max load" Rule of Thumb: on a multicore system, your load should not exceed the number of cores available.

  • The "cores is cores" Rule of Thumb: How the cores are spread out over CPUs doesn't matter. Two quad-cores == four dual-cores == eight single-cores. It's all eight cores for these purposes.

Bringing It Home

Let's take a look at the load averages output from uptime:

~ $ uptime
23:05 up 14 days, 6:08, 7 users, load averages: 0.65 0.42 0.36

This is on a dual-core CPU, so we've got lots of headroom. I won't even think about it until load gets and stays above 1.7 or so.

Now, what about those three numbers? 0.65 is the average over the last minute, 0.42 is the average over the last five minutes, and 0.36 is the average over the last 15 minutes. Which brings us to the question:

Which average should I be observing? One, five, or 15 minute?

For the numbers we've talked about (1.00 = fix it now, etc), you should be looking at the five or 15-minute averages. Frankly, if your box spikes above 1.0 on the one-minute average, you're still fine. It's when the 15-minute average goes north of 1.0 and stays there that you need to snap to. (obviously, as we've learned, adjust these numbers to the number of processor cores your system has).

So # of cores is important to interpreting load averages ... how do I know how many cores my system has?

cat /proc/cpuinfo to get info on each processor in your system. Note: not available on OSX, Google for alternatives. To get just a count, run it through grepand word count: grep 'model name' /proc/cpuinfo | wc -l

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 14 Jan 2014

Yes, this is pretty cool. I made a server dashboard using exec(), js, highcharts and bootstrap. I could create an admin module if anyone is interested.

Quote · 14 Jan 2014

I decided to take a look at my server. 0.46 (1 min) 0.22 (5 mins) 0.19 (15 mins); this is a four core unit.  Now my site is not all that busy so my interest would be more about as time goes along and the site grows in users.  I have not installed RMS yet on the server.  Here is a question, would it be better to rent a small dedicated for RMS?  I guess one could move the RMS at a later date if that was an issue.

If one does see that the load times are of concern, what areas would one concentrate on for improvement?  Or would it be a matter of throwing more hardware at it?

Geeks, making the world a better place
Quote · 14 Jan 2014

 

I decided to take a look at my server. 0.46 (1 min) 0.22 (5 mins) 0.19 (15 mins); this is a four core unit.  Now my site is not all that busy so my interest would be more about as time goes along and the site grows in users.  I have not installed RMS yet on the server.  Here is a question, would it be better to rent a small dedicated for RMS?  I guess one could move the RMS at a later date if that was an issue.

If one does see that the load times are of concern, what areas would one concentrate on for improvement?  Or would it be a matter of throwing more hardware at it?

 Linode offers affordable VPS, with 8 cpu's you'd have decent performance for ffmpeg/RMS. Don't bother getting a dedicated server unless you have enough traffic or its just a waste of money.

Quote · 14 Jan 2014

One thing to note with the cpu info commands is that it will list virtual cores as well; so it is important to know.  If I check I see 8 cpus listed but there are only four physical cores.

Geeks, making the world a better place
Quote · 14 Jan 2014

The only way I would go with a VPS is if the company tells me the physical box it is sitting on and how many VPSes they put on each box.  I made the mistake of buying a bad VPS from a company; it was evident after I got in that I had made a very bad call.  After they lost the site's files twice when rebuilding the VPS, I got out.

However, we are getting off topic with this.  Let's go back to the original topic; so if my server is reaching too high of numbers, what should I do?

Geeks, making the world a better place
Quote · 14 Jan 2014

 

I have not installed RMS yet on the server.  Here is a question, would it be better to rent a small dedicated for RMS?

 According to Nathan a while back, if you do decide to devote a server to RMS the resource impact is nil.

My RMS is actually running here at home, has been since I have been a member here.

I have it installed, letting about 12 sites use it, and run my Florida cam site which is looked at a lot and load on that server is usually right about here.. 

Intel(R) Xeon(TM) CPU 3.20GHz, 4 cores

0.22 (1 min) 0.11 (5 mins) 0.07 (15 mins)

This is the server from home.. http://jacksonville.dyndns.tv/

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 14 Jan 2014

And this is the results at GT, my index is large but still get an A for speed.

http://gtmetrix.com/reports/jacksonville.dyndns.tv/RlGnkVjS

gt-jax-home-server.jpg · 81.7K · 1630 views
ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 14 Jan 2014

 

According to Nathan a while back, if you do decide to devote a server to RMS the resource impact is nil.

Not sure where I said that, but it depends. Personal dedicated servers shouldn't have an issue hosting RMS on the same server as the site (assuming this is the average Dolphin site). Shared hosts can have RMS on the shared server and notice minimal impact on resources, assuming we're talking about actual shared-sized sites (and most sites don't use RMS). For RMS-only service and/or active shared use, the server should be on its own box.

 

Granted, this is from my own experience with RMS.

 

This has been another segment of Advice from the Dolphin Hoster.

BoonEx Certified Host: Zarconia.net - Fully Supported Shared and Dedicated for Dolphin
Quote · 14 Jan 2014

 

According to Nathan a while back, if you do decide to devote a server to RMS the resource impact is nil.

 Years ago, you named off some ancient computer that you were using.

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 14 Jan 2014

While on the subject of this; what were the settings to change to all more than 2 cores to process via ffmpeg?

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 14 Jan 2014

 

While on the subject of this; what were the settings to change to all more than 2 cores to process via ffmpeg?

-threads $number. Edit /flash/modules/[module]/inc/header.inc.php for each command instance.

BoonEx Certified Host: Zarconia.net - Fully Supported Shared and Dedicated for Dolphin
Quote · 15 Jan 2014

 

 

While on the subject of this; what were the settings to change to all more than 2 cores to process via ffmpeg?

-threads $number. Edit /flash/modules/[module]/inc/header.inc.php for each command instance.

 Thank you sir.. Cool

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 15 Jan 2014

 

Yes, this is pretty cool. I made a server dashboard using exec(), js, highcharts and bootstrap. I could create an admin module if anyone is interested.

 be nice..

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 15 Jan 2014

 

 

According to Nathan a while back, if you do decide to devote a server to RMS the resource impact is nil.

 Years ago, you named off some ancient computer that you were using.

I think RMS needs at least 2 GB RAM to even start - I couldn't start it on my old laptop without 2 GB (which meant I had to shut my computer down, insert the extra 1 GB stick, test RMS, then shut back down and remove the stick to boot BeOS).

BoonEx Certified Host: Zarconia.net - Fully Supported Shared and Dedicated for Dolphin
Quote · 15 Jan 2014

 

BeOS

Not to get off topic; BeOS, started life as an OS dedicated to video and sound (music) processing back in the days when other OSes were still in the office application era.  Unfortunately the company could not make a go at it.  Now I think, and Nathan probably could set me straight on some points, BeOS was picked up by I guess like an open source project.  I think it was also forked to Haiku.

Geeks, making the world a better place
Quote · 15 Jan 2014

 

Not to get off topic; BeOS, started life as an OS dedicated to video and sound (music) processing back in the days when other OSes were still in the office application era.  Unfortunately the company could not make a go at it.  Now I think, and Nathan probably could set me straight on some points, BeOS was picked up by I guess like an open source project.  I think it was also forked to Haiku.

So as not to get further off-topic, I sent a PM.

BoonEx Certified Host: Zarconia.net - Fully Supported Shared and Dedicated for Dolphin
Quote · 15 Jan 2014

So on a server I am working on I see:

  • Load Averages: 3.13 3.86 5.07

What should I be looking for?  I believe it is a four core CPU.

Geeks, making the world a better place
Quote · 15 Jan 2014

 

So on a server I am working on I see:

  • Load Averages: 3.13 3.86 5.07

What should I be looking for?  I believe it is a four core CPU.

 Funny you should say that! LOL

My load is load average: 2.77, 5.88, 7.90

I'm uploading tons of music here, http://jacksonville.dyndns.tv/m/videos/browse/album
and dogging the hell out of my test server to check this, the site is still loading just as fast, ffmpeg.exe is running two instances right now, processing 50  music videos I'm uploading.
 
So I have four cores, so 4.00 is ok, above that the site slows.. confirmed when the load would spike to 8 or so.
ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 15 Jan 2014

 

What should I be looking for?  I believe it is a four core CPU.

 4 cores, 3 is good, three lanes of traffic flowing nicely, with an open lane.. lol

ManOfTeal.COM a Proud UNA site, six years running strong!
Quote · 15 Jan 2014

Loved the analogy. It gives me a better understanding how multi  cores handle information. 

Guynuked -- Dedicated server and Dolphin-friendly hosting with Zarconia.net
Quote · 15 Jan 2014
 
 
Below is the legacy version of the Boonex site, maintained for Dolphin.Pro 7.x support.
The new Dolphin solution is powered by UNA Community Management System.