Welcome! Log In Create A New Profile

Advanced

Load average always 1.00 or more

Posted by attend 
Load average always 1.00 or more
November 06, 2010 05:35PM
Hi,

my wii running linux, but the load average always 1.00 or more, as follow

top - 16:33:05 up 1:09, 1 user, load average: 1.00, 1.00, 0.95

Is it ok?
Re: Load average always 1.00 or more
November 08, 2010 09:38AM
It means some process is using 100% CPU time. Use the tool "top" to see what causes it.
Re: Load average always 1.00 or more
November 08, 2010 12:40PM
Thanks for reply.

The most cpu consuming process is ksdioirqd/mmc1 from "top results". I have no idea what it is. Maybe a part of WLAN process?

Here are something from [www.gc-linux.org]

System Latency
From the description of the hardware interface, one can easily deduce that a lot of SDIO transactions are required to perform simple operations. For example, all 8-bit reads/writes, 16-bit reads/writes and 32-bit reads to the 802.11 core require at least one SDIO command/response cycle which may require attending several interrupts. 32-bit writes require at least two SDIO commands, due to the previously described bug^Wfeature. In addition, accessing the PHY registers, radio registers, microcode memory, shared memory, template ram, PIO engine, etc. all require several read/write operations to the 802.11 core. Moreover, the PIO engine FIFO must be accessed using a block size of 64 bytes only.

Every one of these SDIO transactions needed end up contributing to a rather high interrupt rate on the system. For example, the system may need to process ~30K interrupts per second to achieve the reported maximum RX speed, which requires a considerable amount of CPU resources.

The ultimate result is that latency sensitive applications, like audio or video playback from a network resource, will suffer specially when:

the required bit rate is greater than the above mentioned maximum throuput numbers
the CPU resources required to service the required bit rate leave not enough CPU resources for the application processing



Future Directions
The CPU bottleneck problem may be solved in the future by offloading part of the work to the Starlet processor.
Re: Load average always 1.00 or more
November 08, 2010 04:08PM
"ksdioirqd/mmc1" is part of the SD card "SDIO" interface. There are SD cards with WLAN support out there, which use SDIO. Are you using one of those? (I've never seen them, so I think they are rare)

Most likely this is a kernel thread (marked with straight brackets if you run "ps aux"), I wouldn't worry about it. It's not some kind of rogue process. And unless you are a kernel hacker it's not something you are going to solve yourself.
Re: Load average always 1.00 or more
November 08, 2010 04:40PM
Removed



Edited 1 time(s). Last edit at 11/08/2010 10:36PM by Arikado.
Re: Load average always 1.00 or more
November 08, 2010 05:45PM
Thank you, I made a mistake. I searched google with "ksdioirqd/mmc1" key words and got that link taking about wlan... I never heard that kind of card, and just use a normal 2g SD card.

It is strange to me that the load average is 1.00 even when it's idle. My PC is running Debian (Lenny) on x86, and normally it is below 1.0 unless I do something like compile kernel.
Re: Load average always 1.00 or more
November 08, 2010 08:09PM
It might be an accounting problem. Not sure how good the Wii kernel is, but I've seen processes that use very little CPU time but show up as 100% load. Just because they where running at the right time. I thought newer kernels had fixed that problem, but I'm not 100% sure.
Re: Load average always 1.00 or more
November 08, 2010 08:46PM
thanks for reply. I compiled the kernel of version 2.6.32.25, but still same. I just found the way to compile 2.6.32 kernel in gc website, no idea how to compile new version 2.6.33 or later.

here is my top results:

top - 19:39:57 up 12:32, 1 user, load average: 1.00, 1.00, 1.00
Tasks: 52 total, 1 running, 51 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 94.1%id, 0.0%wa, 4.6%hi, 1.0%si, 0.0%st
Mem: 75980k total, 69364k used, 6616k free, 6860k buffers
Swap: 0k total, 0k used, 0k free, 30584k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2705 root -2 0 0 0 0 S 3.3 0.0 1:26.46 ksdioirqd/mmc1
598 root 20 0 0 0 0 S 2.6 0.0 3:10.50 phy0
5 root 20 0 0 0 0 S 0.3 0.0 0:05.10 events/0
3051 dumpling 20 0 3064 1284 1072 R 0.3 1.7 0:00.06 top
1 root 20 0 2512 832 732 S 0.0 1.1 0:01.96 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
4 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
6 root 20 0 0 0 0 S 0.0 0.0 0:00.07 khelper
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
21 root 20 0 0 0 0 D 0.0 0.0 0:00.48 kexid
168 root 20 0 0 0 0 S 0.0 0.0 0:00.12 sync_supers
170 root 20 0 0 0 0 S 0.0 0.0 0:00.18 bdi-default
171 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kblockd/0
181 root 20 0 0 0 0 S 0.0 0.0 0:00.20 khubd
184 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kseriod
187 root 20 0 0 0 0 S 0.0 0.0 0:00.17 kmmcd
Re: Load average always 1.00 or more
November 09, 2010 01:54PM
Quote

Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 94.1%id, 0.0%wa, 4.6%hi, 1.0%si, 0.0%st
This says it's mostly idle (94%) so I guess the loadavg is just wrong.
Re: Load average always 1.00 or more
November 12, 2010 09:55AM
Yes, I agree. there must be something wrong with "top"
Re: Load average always 1.00 or more
November 12, 2010 06:20PM
top just gets the load average from /proc/loadavg
See: "cat /proc/loadavg"
Re: Load average always 1.00 or more
November 15, 2010 04:55PM
cat /proc/loadavg

results:

1.00 1.00 1.00 1/53 3831

Seems top's result is correct.

Something from [www.linuxquestions.org]

But have not tried yet.


Loadavg (in Linux) is not just the runq - it also includes tasks in uninterruptible sleep. This is usually disk wait, but not necessarily. Poorly designed code will place threads in uniterruptible sleep and "forget" about them.

I use the following to track down anything like this - stick it in a loop in need.


top -b -n 1 | awk '{if (NR <=7) print; else if ($8 == "D") {print; count++} } END {print "Total status D: "count}'
Re: Load average always 1.00 or more
November 15, 2010 10:59PM
top - 21:47:49 up 1:35, 1 user, load average: 1.00, 1.00, 0.94
Tasks: 56 total, 1 running, 55 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.4%us, 0.4%sy, 0.0%ni, 95.9%id, 0.1%wa, 2.8%hi, 0.3%si, 0.0%st
Mem: 75980k total, 71844k used, 4136k free, 2684k buffers
Swap: 0k total, 0k used, 0k free, 31564k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21 root 20 0 0 0 0 D 0.0 0.0 0:00.06 kexid
Total status D: 1



PROCESS STATE CODES
Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to describe the
state of a process.
D Uninterruptible sleep (usually IO)

I guess it's the problem
Sorry, only registered users may post in this forum.

Click here to login