Subject: Re: tx queue hashing hot-spots and poor performance (multiq, ixgbe)

From: Eric Dumazet <[email-masked]>
Date: Fri, 01 May 2009 09:47:24 +0200

Eric Dumazet a écrit :
> Andrew Dickinson a écrit :
>> Adding a bit more info...
>>
>> I should add, the other 4 ksoftirqd tasklets _are_ running, they're
>> just not busy. (In case that wasn't clear...)
>>
>> Also of note, I rebooted the box (after recompiling with NUMA off).
>> This time when I push traffic through, only the even-ksoftirqd's were
>> busy..  I then tweaked some of the ring settings via ethtool and
>> suddenly the odd-ksoftirqd's became busy (and the even ones went
>> idle).
>>
>> Thoughts?  Suggestions?  driver issue?  I'm at 2.6.30-rc3.
>>
>> (BTW, I'm under the assumption that since only 4 (of 8) ksoftirqd's
>> are busy that I still have room to make this box go faster).
> 
> I dont see the point here. ksoftirqd is running only if too much
> work has to be done in softirq context. Which should be your case
> since you want to saturate cpus with network load.
> 
> You could try to change /proc/sys/net/core/netdev_budget if you really
> want to trigger ksoftirqd sooner or later, but it wont fundamentally
> change routing performance.
> 
> If you believe box is loosing frames because cpu are saturated, please
> post some oprofile results.

My random feeling is you might have a dst_release() contention, but my
feeling might be wrong, I dont know what kind of network load you really
use...