Freebsd IP Forwarding performance (question, and some info)
[7-stable, current, em, smp]
Andrew Snow
andrew at modulus.org
Sun Jun 29 09:07:32 UTC 2008
The "em" driver currently only has a single worker/queue so will only
use one CPU to process packets. However I remember reading that
multi-threaded version of the driver is being worked on and is "coming
soon", but there is no known ETA yet.
I see you mentioned that you played with the receive descriptors and set
that to 4096, which is good if your chipset supports it.
But I can't see that you mentioned playing around with
hw.em.rx_int_delay or tx_int_delay - have you tried this? By default
rx_int_delay is disabled but it has the capability to lower CPU
consumption if you enable it and it works on your chipset.
By my reckoning, if you are aiming for a million pps, thats microsecond
per packet, so you can afford to increase the delay quite alot, try 50
or 100 or even more?
- Andrew
More information about the freebsd-net
mailing list