[netperf-talk] Running netperf server in multi-threaded mode?

Rick Jones rick.jones2 at hp.com
Tue Jun 26 09:42:00 PDT 2012


On 06/26/2012 04:48 AM, Maucci, Cyrille wrote:
>  >Hi there, thanks for your reply. Unfortunately I think this won't work
>  >as I need to multi-thread the server and not the client. My server is
>  >the bottleneck as it just runs >on a single core. Any other ideas?
>
> Are you willing to test the network performance or something else?
> If you truly want to test the network performance and you decided to use
> netperf for that purpose, then I don't really understand why this should
> be an issue to possibly spawn multiple netperf instances on either (or
> both) the client and server sides.

Somewhere along the way netperf-talk-bounces got added, so I've removed 
that.

Anna - What Cyrille is disucssing gets to what I suspect may be the 
heart of the matter.  Basically, a single TCP connection will make use 
of the services of no more than one CPU.  Even if it were possible to 
get the netserver to have two threads pulling data from the test socket, 
the processing inside the TCP/IP stack will still be essentially 
single-threaded.  Given that netperf/netserver does almost nothing 
itself, I suspect you would not see much of a change in performance.  A 
bit of handwaving there but probably accurate.

Now, as I believe Simon mentioned, it is possible to ask that netperf or 
netserver be bound to a specific CPU.  If this then happens to be a CPU 
other than the one taking the interrupts for the flow/connection, you 
can get more than one CPUs worth of processing going for a single 
connection.  How much more will depend on the stack and just how "far 
apart" those two CPUs happen to be.

happy benchmarking,

rick jones


More information about the netperf-talk mailing list