git: bce: Improve tiny packets transmission performance on low frequency CPU
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Mon Nov 26 05:40:39 PST 2012
commit f52858a0e5001afe34e1bb2738532a7d298a4870
Author: Sepherosa Ziehau <sephe at dragonflybsd.org>
Date: Mon Nov 26 21:32:42 2012 +0800
bce: Improve tiny packets transmission performance on low frequency CPU
Update TX HOST_IDX and HOST_BSEQ registers a little bit often; mainly to
improve timeliness of packets transmission:
The TX HOST_IDX and HOST_BSEQ registers are updated after certain amount
of TX descriptors are added to the hardware TX ring. The default value
of the amount of TX descriptors are 8. This value could be further
tuned by per-device sysctl node hw.bceX.tx_wreg.
The default value greatly improves tiny packets transmission performance
w/ 5709C on AMD970 at 800Mhz (513Kpps -> 1Mpps) and it does not increase CPU
usage on AMD970 at 3500Mhz (CPU usage stays @24%, 5709C could only do 1Mpps).
Summary of changes:
sys/dev/netif/bce/if_bce.c | 49 ++++++++++++++++++++++------------------
sys/dev/netif/bce/if_bcereg.h | 1 +
2 files changed, 28 insertions(+), 22 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/f52858a0e5001afe34e1bb2738532a7d298a4870
--
DragonFly BSD source repository
More information about the Commits
mailing list