All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Bennieston <andrew.bennieston@citrix.com>
To: Wei Liu <wei.liu2@citrix.com>
Cc: annie.li@oracle.com, ian.campbell@citrix.com,
	konrad.wilk@oracle.com, David Vrabel <david.vrabel@citrix.com>,
	xen-devel@lists.xen.org
Subject: Re: [PATCH 0/3 V2] xen-netback: switch to NAPI + kthread 1:1 model
Date: Wed, 12 Jun 2013 14:44:17 +0100	[thread overview]
Message-ID: <51B87B31.9020400@citrix.com> (raw)
In-Reply-To: <20130611101532.GB2765@zion.uk.xensource.com>

On 11/06/13 11:15, Wei Liu wrote:
> On Tue, Jun 11, 2013 at 11:06:43AM +0100, David Vrabel wrote:
>> On 27/05/13 12:29, Wei Liu wrote:
>>> * This is a xen-devel only post, since we have not reached concesus on
>>>    what to add / remove in this new model. This series tries to be
>>>    conservative about adding in new feature compared to V1.
>>>
>>> This series implements NAPI + kthread 1:1 model for Xen netback.
>>>
>>> This model
>>>   - provides better scheduling fairness among vifs
>>>   - is prerequisite for implementing multiqueue for Xen network driver
>>>
>>> The first two patches are ground work for the third patch. First one
>>> simplifies code in netback, second one can reduce memory footprint if we
>>> switch to 1:1 model.
>>>
>>> The third patch has the real meat:
>>>   - make use of NAPI to mitigate interrupt
>>>   - kthreads are not bound to CPUs any more, so that we can take
>>>     advantage of backend scheduler and trust it to do the right thing
>>>
>>> Change since V1:
>>>   - No page pool in this version. Instead page tracking facility is
>>>     removed.
>>
>> Andrew Bennieston has done some performance measurements with (I think)
>> the V1 series and it shows a significant decrease in performance of
>> from-guest traffic even with only two VIFs.
>>
>> Andrew will be able to comment more on this.
>>
>> Andrew, can you also make available your results for others to review?

Absolutely; there is now a page at 
http://wiki.xenproject.org/wiki/Xen-netback_NAPI_%2B_kThread_V1_performance_testing 
detailing the tests I performed and the results I saw, along with some 
summary text from my analysis.

Note that I also performed these tests without manually distributing 
IRQs across cores, and the performance was, as expected, rather poor. I 
didn't include those plots on the Wiki page since they don't really 
provide any new information.


> In my third series there is also simple performance figures attached.
> Andrew could you please have a look at that as well?

I had a look at those; I think they agree with my tests where there is 
overlap. The tests I performed were repeated a number of times and 
covered a broader range of scenarios and have associated error bars 
which provide a measure of variability between tests (as well as 
indicating the statistical significance of differences between tests).

The error bars can also be interpreted in terms of fairness; smaller 
error bars mean that all TCP streams across all VIFs attain similar 
throughput to each other. Larger error bars mean that there is quite a 
lot of variation from one stream to another, e.g. as a stream or VIF may 
be starved of resources.

> If you have time, could you try my third series? In the third series,
> the only possible performance impact is the new model, which should
> narrow the problem down.
> Wei.

I am going to test the V3 patches as soon as I get the time; hopefully 
later this week, or early next week. I'll post the results once I have them.

Andrew.

  reply	other threads:[~2013-06-12 13:44 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-27 11:29 [PATCH 0/3 V2] xen-netback: switch to NAPI + kthread 1:1 model Wei Liu
2013-05-27 11:29 ` [PATCH 1/3] xen-netback: remove page tracking facility Wei Liu
2013-05-28  9:21   ` David Vrabel
2013-05-29  1:43     ` Matt Wilson
2013-05-29  8:12       ` Wei Liu
2013-05-27 11:29 ` [PATCH 2/3] xen-netback: switch to per-cpu scratch space Wei Liu
2013-05-28  9:47   ` annie li
2013-05-28 10:17     ` Wei Liu
2013-05-28 13:18   ` Konrad Rzeszutek Wilk
2013-05-28 13:36     ` David Vrabel
2013-05-28 13:54       ` Wei Liu
2013-05-27 11:29 ` [PATCH 3/3] xen-netback: switch to NAPI + kthread 1:1 model Wei Liu
2013-05-28 13:37   ` David Vrabel
2013-05-28 13:40     ` Wei Liu
2013-05-28 14:35 ` [PATCH 0/3 V2] " annie li
2013-05-28 15:09   ` Wei Liu
2013-06-11 10:06 ` David Vrabel
2013-06-11 10:15   ` Wei Liu
2013-06-12 13:44     ` Andrew Bennieston [this message]
2013-06-13  9:01       ` Wei Liu
2013-06-13 11:18         ` Andrew Bennieston
2013-06-13 13:06           ` Wei Liu
2013-07-03 12:45     ` Andrew Bennieston
2013-07-03 16:07       ` Wei Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51B87B31.9020400@citrix.com \
    --to=andrew.bennieston@citrix.com \
    --cc=annie.li@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=konrad.wilk@oracle.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.