1,784,593 the highest load average ever?

As I cycled home I realised there was one more thing I could do on the exploring the limits of threads and processes on Solaris. That would be the highest load average ever. Modifying the thread creator program to not have each thread sleep once started but instead wait until all the threads were set up and then go into an infinite compute loop that should get me the highest load average possible on a system or so you would think.

With 784001 threads the load stabilised at:

10:16am  up 18:07,  2 users,  load average: 22114.50, 22022.68, 21245.781

Which was somewhat disappointing. However an earlier run with just 780,000 threads managed to peak the load at 1,784,593 while it was exiting:

 7:44am  up 15:35,  2 users,  load average: 1724593.79, 477392.80, 188985.10

I' still pondering how 780000 thread can result in a load average of more than 1 million.

Comments:

6620948 had some pretty high load averages too - shame I didn't get a chance to see what it peaked at.

# uptime
6:35pm up 1 day(s), 11:10, 1 user, load average: 4572.46, 8388608.00, 8388608.00

Posted by Tim Foster on July 22, 2009 at 05:56 AM BST #

Given that you can't get more then 800000 threads on a system I can't see how we could ever have a load average more than 800000. Makes me wonder about that bug, whether the load average was in anyway truthful.

Posted by Chris Gerhard on July 22, 2009 at 06:48 AM BST #

I would guess, that the load factor counting could get confused by thread waiting two times in one timeslice.

In OS-9/68k you could easily test this with a sleep(0), which did not sleep at all, but took the process to the end of the current processor queue.

Since the machines does more task switches a second than 780000 you would end up with ridiculous load factors.

It's just a guess, since load factor processing is not bound to time slices with microstate accounting switched on.

Posted by Knut Grunwald on July 22, 2009 at 08:19 AM BST #

I remember fixing

4756989 uptime output negative on a stressed system.

Which was a negative load average on a stressed 25k. In reality before this fix it would read negative after 32768.

alan.

Posted by Alan Hargreaves on July 23, 2009 at 02:07 AM BST #

Post a Comment:
Comments are closed for this entry.
About

This is the old blog of Chris Gerhard. It has mostly moved to http://chrisgerhard.wordpress.com

Search

Archives
« April 2014
MonTueWedThuFriSatSun
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today