IRQ31 and IRQ32 on HPDL585 running FreeBSD 7.0 are consuming
HIGH CPU usage
Won De Erick
won.derick at yahoo.com
Fri Nov 14 04:58:59 PST 2008
> ----- Original Message ----
> From: Ivan Voras <ivoras at freebsd.org>
> To: freebsd-hardware at freebsd.org
> Cc: freebsd-net at freebsd.org
> Sent: Friday, November 14, 2008 7:49:13 PM
> Subject: Re: IRQ31 and IRQ32 on HPDL585 running FreeBSD 7.0 are consuming HIGH CPU usage
>
> Won De Erick wrote:
>
> > Another thing, I observed that in the above test, the net.isr is enabled by default. When I tried disabling this,
> >
> > # sysctl net.isr.direct=0
> > net.isr.direct: 1 -> 0
> >
> > the result:
> >
> > 52 root 1 -68 - 0K 16K WAIT b 64:00 42.97% irq32: bce1
> > 51 root 1 -68 - 0K 16K WAIT a 38:22 12.26% irq31: bce0
> >
> > The CPU utilizations considerably dropped!
>
> You will probably find a "swi" process that has picked up the difference
> (when isr.direct is disabled, some of network protocol processing is
> offloaded to a swi thread). This might help spread the load across CPU
> but in my testing it didn't help real-world throughput.
>
You are right. I noticed the following when net.isr is diabled, lowering the idle time of cpu0.
27 root 1 -44 - 0K 16K WAIT 0 52:20 76.37% swi1: net
26 root 1 171 ki31 0K 16K CPU0 0 111:58 64.36% idle: cpu0
Another thing,
Packet drops on Intel NIC ( Intel® PRO/1000 PT Dual Port Server Adapter w/ control processor 82571GB) did not occur when the net.isr was disabled, while the overall CPU utilization remains considerably low.
Note: The following result was obtained during a transition from a disabled to enabled net.isr. Hence the first part
packets errs bytes packets errs bytes colls drops
10844 0 15603850 7940 0 582934 0 0
11659 0 16800328 8503 0 630330 0 0
11778 0 17033560 8998 0 677934 0 0
12149 0 17592134 9504 0 728094 0 0
12551 0 18223550 9974 0 774164 0 0
13127 0 19093604 10413 0 811858 0 0
13712 0 20010140 10924 0 848014 0 0
14499 0 21153538 11407 0 878252 0 0
14818 0 21740270 11979 0 915374 0 0
15831 0 23136446 12376 0 950636 0 0
15912 0 23365454 12852 0 997242 0 0
16257 0 23848866 13282 0 1041878 0 0
16384 0 24084782 13666 0 1079790 0 0
16670 0 24508980 14078 0 1106886 0 0
17845 0 26255548 14486 0 1134700 0 0
18097 0 26705634 15064 0 1163308 0 0
18470 0 27283000 15365 0 1198828 0 0
18139 0 26842676 15596 0 1225540 0 0
18792 0 27799564 16000 0 1264568 0 0
17854 178 26454106 16521 0 1298714 0 0
16741 1542 24820298 16770 0 1343328 0 0
input (em0) output
packets errs bytes packets errs bytes colls drops
15288 1667 22683486 17231 0 1422690 0 0
15539 1718 23250372 17282 0 1495058 0 0
14379 545 21541954 17364 0 1508696 0 0
14312 1733 21546776 17276 0 1503372 0 0
14269 1744 21498908 17516 0 1508294 0 0
14444 1729 21766812 17175 0 1482130 0 0
15023 1724 22643198 16987 0 1432048 0 0
15279 1703 23036294 16909 0 1395094 0 0
15325 1701 23118536 16938 0 1380268 0 0
15572 1684 23494362 16909 0 1344214 0 0
15798 1699 23845972 16857 0 1303200 0 0
16195 1683 24497790 17059 0 1291586 0 0
16431 1674 24851278 16826 0 1245320 0 0
16683 1643 25231910 16675 0 1204450 0 0
16728 1647 25302534 16672 0 1178930 0 0
16826 1649 25455662 16662 0 1178140 0 0
16760 1653 25352830 16480 0 1161086 0 0
17002 1634 25720672 16423 0 1143508 0 0
16943 1643 25629892 16642 0 1160858 0 0
16995 1644 25708823 16539 0 1153782 0 0
17026 1643 25758462 16606 0 1153342 0 0
However, network throughput didn't change in the two scenarios above.
Is there anything that I can test to improve my network throughput.
Thanks,
Won
More information about the freebsd-net
mailing list