I have a m0n0wall system configured with a Pentium III 933 MHz CPU and
three network interfaces (Intel Pro/100 (fxp driver) for the WAN, and a
dual-interface Pro/1000 (em driver) for the LAN and DMZ). When
transferring data between the LAN and DMZ subnets, I'm seeing somewhat
With polling _OFF_, I can move about 200 Mbits/sec (clocked with iperf)
between subnets before pegging the CPU. This is not completely
unexpected. When I turn polling on, however, throughput DROPS to about
140 Mbits/sec, with CPU topping out at about 60%.
For a point of comparison, if I go to exec.php and run 'sysctl
kern.polling.idle_poll=1' with polling enabled, throughput increases
back up to 200 Mbits/sec, but leaving this setting on is undesirable, as
CPU utilization is pegged at 100% all the time, which results in a
significant increase in power consumption and heat generation.
Has anyone else seen performance like this, and if so, and suggestions
on improving it? Thanks.
-- James L. Lauser
james at jlauser dot net