Re: [PATCH net-next v7 9/9] xen-netback: Aggregate TX unmap operations

From: Zoltan Kiss
Date: Thu Mar 20 2014 - 12:12:46 EST


On 20/03/14 12:38, Wei Liu wrote:
On Thu, Mar 20, 2014 at 11:14:51AM +0000, Paul Durrant wrote:
-----Original Message-----
From: Wei Liu [mailto:wei.liu2@xxxxxxxxxx]
Sent: 20 March 2014 10:49
To: Zoltan Kiss
Cc: Ian Campbell; Wei Liu; xen-devel@xxxxxxxxxxxxxxxxxxxx;
netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Jonathan Davies;
Paul Durrant
Subject: Re: [PATCH net-next v7 9/9] xen-netback: Aggregate TX unmap
operations

On Wed, Mar 19, 2014 at 09:16:05PM +0000, Zoltan Kiss wrote:
Hi,

I'm thinking about revoking this patch: it's value is pretty small,
but it causes performance regression on Win7 guests. And probably it
is not the best solution for this problem. It might be the delay it
takes the dealloc thread to be scheduled is enough.
What do you think?


Can you elaborate? What makes Win7 so special? What's performance
impact to other guests?


It won't be Win7 specifically I expect. It will likely by any version
of Windows, or any other OS that limits the TXs-in-flight so
aggressively. Basically you need to TX-complete reasonably frequently
otherwise your throughput drops off a lot. IIRC at Solarflare we found
every ~500us to be just about frequent enough for hitting 10G.

Thanks for the explanation.

Reverting this change basically means when to flush TLB is at sole
discretion of Linux kernel scheduler. I don't oppose to that. But it
would be better to provide some numbers.

My comparisons with iperf haven't showed any significant difference. I've measured Win7 and upstream Linux guest.
There was a misunderstanding that reverting this patch would stop batching of unmap. There would be still batching as when the callback wakes the dealloc thread, by the time it happens other callbacks still can place work on the dealloc ring, even while the thread started to process them. And that could happen independently from the TX operations in the NAPI instance, which is an another good feature of having a dealloc thread.

I've discussed this in person with Paul and Ian as well, they are happy with the reverting. So David, can you please revert e9275f5e2d "xen-netback: Aggregate TX unmap operations"?

Regards,

Zoli
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/