On Wed, Aug 4, 2010 at 8:33 AM, Uwe Zimmermann <uwe@xxxxxxxxxxxxxx> wrote: > > Hello, > > our product "MIMIC Simulator" has been running on Fedora for a long time > (eg. see > > http://www.gambitcomm.com/site/support/support_platforms.shtml > > ). But, we have seen a steady decline in performance over successive > versions of Fedora (eg. see > > http://gambitcomm.blogspot.com/2010/06/mimic-1030-performance-test-report-high.html > > Our application is somewhat unique in that it can create many (10s of > thousands) IP aliases, opens sockets to multiple ports on each. > > Only with Fedora 13 (kernel version 2.6.33.6-147.fc13.x86_64) have we > seen a surprising performance improvement, where running 20,000 simulated > agents is the same as running 10, in terms of networking performance. At > first we could not believe it, but subsequent tests have confirmed that > we indeed are seeing the improved performance. The specific improvement > seems to be that the kernel seems to be efficiently demultiplexing among > all open sockets to deliver received messages from the network card. > > Can some expert point me at a specific fix (spec, kernel module, source > code revision) that could account for this? It would be in the networking > code, possibly the socket demultiplexer. I have looked for this for a > while and just cannot find it. This change would be after Fedora 12. > Any hint would be appreciated. > > Thank you in advance. > > Uwe Zimmermann > Gambit Communications F13 uses 2.6.33 but I know 2.6.35 has an improvement that could also benefit you. Maybe Fedora devs included it in F13 but I doubt it. >From http://www.h-online.com/open/features/What-s-new-in-Linux-2-6-35-1047707.html?artikelseite=1;page=2 "Google developer Tom Herbert submitted two major improvements to the network subsystem of Linux 2.6.35: Receive Packet Steering (RPS) and Receive Flow Steering (RFS). RPS distributes the processing steps for handling received network packets across the available processor cores so that these can work in parallel from the protocol layer onwards. RFS, together with other functions, is said to offer a software emulation of the multi-queue functionality found in network cards (NICs). RFS, the second technology, is based on the first and tries to assign the processing of layer 3 and 4 of the network protocol directly to the processor core which runs the userspace application that will eventually accept and process the network data. The kernel hacker gives a rough overview of how this is done in his commit comment in the source code management system. This comment also contains various test results which show that the throughput is increased a little further with RFS; the benchmark results also show considerably shorter latencies. Further details about these technologies can be found in an article about RPS and RFS on LWN.net." More technical info at LWN.net http://lwn.net/Articles/362339/ https://lwn.net/Articles/382428/ -- Robert Arkiletian Eric Hamber Secondary, Vancouver, Canada -- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines