Hi Andrew!

Thanks for the hints - I will try them. But why do I have the UDP 
performance problems with iperf 2.0.4 and not with iperf 2.0.2?

thanks
klaus

Andrew Gallatin schrieb:
> (Whoops, fumble fingers, continuing)
> 
> On Wed, Jul 30, 2008 at 3:12 PM, Andrew Gallatin <[EMAIL PROTECTED]> wrote:
>> Iperf does an enormous amount of work for each socket read with
>> UDP.  For every single receive,  it:
>>
>> - timestamps the packet via gettimeofday() which can be incredibly
> expensive on some platforms which do not use TSC for the
> timecounter.
> 
> - calls ReportPacket(), which does a large number of thread operations
> to coordinate with the reporter thread.
> 
> To improve UDP performance, I'd try several things in order:
> 
> 1) use a larger message size (-l 8192) on both sides.  This will
> reduce the work done per-byte
> 
> 2) Try replacing the gettimeofday() calls in
> Server::Run() by just memsetting the tv to 0.  I have not tried
> this, and something may break if this is done.
> 
> 3) Build without threads by hacking config.h by commenting out
> HAVE_POSIX_THREAD and HAVE_PTHREAD after running
> configure, but prior to building.
> 
> Do any of these things help?
> 
> For me, #3 improves 10GbE UDP multicast receive performance
> from 1.5Gb/s to line rate using a 2.6.22 kernel running on
> a RHEL4 box (2.0GHz athlon64x2)
> 
> Drew

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Iperf-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/iperf-users

Reply via email to