Subject: Constant ~1.00 load average [was Re: explaining TOP memory output]
To: None <netbsd-users@netbsd.org>
From: Mark Cullen <mark.r.cullen@gmail.com>
List: netbsd-users
Date: 07/15/2006 21:55:19
Michael Parson wrote:
> On Sat, Jul 15, 2006 at 01:44:15PM +0100, Mark Cullen wrote:
>> Mark Cullen wrote:
>>> 256MB in there, but I think a whopping 2MB of it is allocated to the 
>>> onboard video (which I don't use, but can't disable).
>>>
>>> Well, is `systat 1 vmstat` good enough? If so, while it's idling I am 
>>> seeing:
>>>
>>> ---
>>>    3 users    Load  1.08  1.05  1.05                  Fri Jul 14 18:16:59
>>>
>>> Proc:r  d  s  w    Csw   Trp   Sys  Int  Sof   Flt            PAGING 
>>> SWAPPING
>>>          17        86    11 13178  339  152    18            in  out 
>>> in  out
>>> ---
>>>
>>> 18 per second is that? Doesn't seem unusually high to me?!
>>>
>> I have just noticed that the "Sys" column seems to alternate between 
>> ~5000 and ~10000-20000 every second. Perhaps this could be and indicator 
>> of the possible cause? Not that I have any idea what the "Sys" column is 
>> an indicator of? System calls per second?
> 
> Yes, syscalls per second.
> 
> What kind of disk subsystem are you running with?  IDE?  Is it
> ATA66/100/133?  Or is it running in PIO mode?  What kind of network
> card?  If one of your devices has to do more in the kernel/cpu than
> on card, that might indicate the load, a lower-end NIC, non ATA IDE
> controller, etc.  Do the Int numbers seem to jump around like the Sys
> calls do?
> 

IDE, yeah. It's an ATA100 controller AFAIK and all disks are running in 
DMA mode:

---
viaide0: VIA Technologies VT82C686A (Apollo KX133) ATA100 controller
viaide0: bus-master DMA support present
viaide0: primary channel configured to compatibility mode
viaide0: primary channel interrupting at irq 14
viaide0: secondary channel configured to compatibility mode
viaide0: secondary channel interrupting at irq 15
wd0(viaide0:0:0): using PIO mode 4, Ultra-DMA mode 4 (Ultra/66) (using DMA)
wd2(viaide0:0:1): using PIO mode 4, Ultra-DMA mode 5 (Ultra/100) (using DMA)
wd1(viaide0:1:0): using PIO mode 4, Ultra-DMA mode 5 (Ultra/100) (using DMA)
wd3(viaide0:1:1): using PIO mode 4, Ultra-DMA mode 5 (Ultra/100) (using DMA)
---

They're both Intel 100mbit cards, I forget the model but I think they're 
actually IBM cards, EtherJet or something:

---
fxp0 at pci0 dev 8 function 0: i82559 Ethernet, rev 8
fxp0: interrupting at irq 10
fxp0: Ethernet address 00:06:29:6f:12:85
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
fxp1 at pci0 dev 9 function 0: i82559 Ethernet, rev 8
fxp1: interrupting at irq 11
fxp1: Ethernet address 00:04:ac:23:02:77
inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4
---

The 'int' numbers don't seem to jump around like 'sys'. I did some 
ktruss'ing and found out that the syscall numbers jumping around like 
that was actually just caused by 'lcdproc'. 'sys' has returned to what I 
can only assume is "normal" levels, but the load average remains high 
for a system that's doing nothing IMO:

(There are 4 users here, it's just me logged in being idle on all but 
the console this output came from)

---
     4 users    Load  0.72  0.92  0.92                  Sat Jul 15 21:41:59

Proc:r  d  s  w    Csw   Trp   Sys  Int  Sof   Flt     PAGING   SWAPPING
           40        41     6   132  245  141     7            in  out 
  in  out
---

But, pin 12 (IRQ 12 I assume, which is the USB controller) is jumping 
from nothing to ~100 every couple of seconds. I do, however, have a 
USB->Serial adapter plugged in for my APC UPS. The machine only has one 
serial port, which I am using for a serial console, so I sort of had to 
use an adapter for the UPS really. IRQ 10 and 11 are the network cards.

---
            memory totals (in kB)             551 Interrupts
           real  virtual     free             100 cpu0 softclock
Active  107620   158464     6896             146 cpu0 softnet
All     243720   294564  1004624                 cpu0 softserial
                                                3 pic0 pin 14
Namei         Sys-cache     Proc-cache         3 pic0 pin 15
     Calls     hits    %     hits     %        98 pic0 pin 12
         6        6  100                       47 pic0 pin 10
                                               54 pic0 pin 11
Disks:   md0   wd0   wd2   wd1   wd3             pic0 pin 4
  seeks                                           pic0 pin 6
  xfers                 3           3         100 pic0 pin 0
  bytes               10K         10K
  %busy
---

I hate to keep comparing to FreeBSD, because, well, NetBSD just isn't 
FreeBSD :) But as I said, the load average wasn't constantly ~1.00 on 
FreeBSD 4.11.


PS: I apologize to the original poster for sort of hi-jacking the thread.

-- 
Mark Cullen <mark.r.cullen@gmail.com>