Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Apr 2005 20:32:38 +0200
From:      "Eivind Hestnes" <eivind@stabbursmoen.no>
To:        <performance@FreeBSD.org>
Subject:   Performance Intel Pro 1000 MT (PWLA8490MT)
Message-ID:  <20050419183335.F18008131@joshua.stabbursmoen.no>

next in thread | raw e-mail | index | archive | help
Hi,

I have an Intel Pro 1000 MT (PWLA8490MT) NIC (em(4) driver 1.7.35) installed
in a Pentium III 500 Mhz with 512 MB RAM (100 Mhz) running FreeBSD 5.4-RC3.
The machine is routing traffic between multiple VLANs. Recently I did a
benchmark with/without device polling enabled. Without device polling I was
able to transfer roughly 180 Mbit/s. The router however was suffering when
doing this benchmark. Interrupt load was peaking 100% - overall the system
itself was quite unusable (_very_ high system load). With device polling
enabled the interrupt kept stable around 40-50% and max transfer rate was
nearly 70 Mbit/s. Not very scientific tests, but it gave me a pin point. 

However, a Pentium III in combination with a good NIC should in my opinion
be a respectful router.. but I'm not satisfied with the results. The pf
ruleset is like nothing, and the kernel is stripped and customized for best
performance.

Any tweaking tips for making my router perform better?

Debug information:
eivind@core-gw:~$ sysctl -a | grep kern.polling
kern.polling.burst: 150
kern.polling.each_burst: 5
kern.polling.burst_max: 150
kern.polling.idle_poll: 0
kern.polling.poll_in_trap: 0
kern.polling.user_frac: 50
kern.polling.reg_frac: 20
kern.polling.short_ticks: 1411
kern.polling.lost_polls: 720
kern.polling.pending_polls: 0
kern.polling.residual_burst: 0
kern.polling.handlers: 0
kern.polling.enable: 1
kern.polling.phase: 0
kern.polling.suspect: 186
kern.polling.stalled: 0
kern.polling.idlepoll_sleeping: 1

eivind@core-gw:~$ cat /etc/sysctl.conf
net.inet.ip.forwarding=1
net.inet.ip.fastforwarding=1
net.inet.carp.preempt=1
kern.polling.enable=1

HZ set to 1000 as recommended in README for the em(4) driver. Driver is of
cource compiled into kernel.

Regards,
Eivind Hestnes



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050419183335.F18008131>