[PATCH v8 RFC 0/3] Generic IOMMU pooled allocator

Sowmini Varadhan sowmini.varadhan at oracle.com
Wed Apr 1 12:08:18 AEDT 2015

On 03/31/2015 09:01 PM, Benjamin Herrenschmidt wrote:
> On Tue, 2015-03-31 at 14:06 -0400, Sowmini Varadhan wrote:
>> Having bravely said that..
>> the IB team informs me that they see a 10% degradation using
>> the spin_lock as opposed to the trylock.
>> one path going forward is to continue processing this patch-set
>> as is. I can investigate this further, and later revise the spin_lock
>> to the trylock, after we are certain that it is good/necessary.
> Have they tried using more pools instead ?

we just tried 32 instead of 16, no change to perf.

Looks like their current bottleneck is the find_next_zero_bit (they
can get a 2X perf improvement with the lock fragmentation, but are
then hitting a new ceiling, even with the trylock version)

I'm starting to wonder if  some approximation of dma premapped
buffers may be needed. Doing a map/unmap on each packet is expensive.

More information about the Linuxppc-dev mailing list