Date: Tue, 4 May 2004 16:28:46 -0400 From: Gerrit Nagelhout <gnagelhout@sandvine.com> To: freebsd-current@freebsd.org Subject: RE: 4.7 vs 5.2.1 SMP/UP bridging performance Message-ID: <FE045D4D9F7AED4CBFF1B3B813C85337021AB373@mail.sandvine.com>
next in thread | raw e-mail | index | archive | help
>>>I would like to move to CURRENT for new hardware support, and the >>>ability to properly use multi-threading in user-space, but can't do >>>this until the performance bottlenecks are solved. I realize that >>>5.x is still a work in progress and hasn't been tuned as well as 4.7 >>>yet, but are there any plans for optimizations in this area? Does >>>anyone have any suggestions on what else I can try? >> >> >> Try rwatson's netperf patches: >> >> http://www.watson.org/~robert/freebsd/netperf/ >> >> There is at least one outstanding panic condition known, but more >> testing will be a great help. >> >> Kris >> >> P.S. You didn't mention the status of WITNESS, but I'm assuming you >> read the docs and disabled it since it's a huge performance killer. >WITNESS and INVARIANTS are turned off for the 5.2.1 release bits. >However, the debug.mpsafenet sysctl is also turned off. Turning this >on might give a significant performance boost for bridging. >Scott Thanks for all the responses so far. WITNESS is definitely disabled, as are the other INVARIANTS. I had a look through the netperf patches, but I don't think they will affect bridging very much. They seem be directed more towards the socket layer and above. I still think that one of the bigger bottlenecks is the cost of all the mutexes in SMP mode, and some of the new bus_dma and mbuf code that was introduced. With previous platforms I have worked on (vxWorks), we had similar issues, and ended up pushing buckets of packets through the data path, so each mutex was only taken once for every 10-100 packets. Also, polling is currently done by only one CPU at a time. If this were changed to have multiple threads poll multiple devices at the same time, the performance should become much better. Thanks, Gerrit
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FE045D4D9F7AED4CBFF1B3B813C85337021AB373>