xen-devel.lists.xenproject.org archive mirror
 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,
	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, 3 Jul 2013 13:45:13 +0100	[thread overview]
Message-ID: <51D41CD9.6000200@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?
>>
>
> In my third series there is also simple performance figures attached.
> Andrew could you please have a look at that as well?
>
> 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 finally have the results from testing your V3 patches. They are 
available at:

http://wiki.xenproject.org/wiki/Xen-netback_NAPI_%2B_kThread_V3_performance_testing

This time, the base for the tests was linux-next, rather than v3.6.11 
(mostly to reduce the effort in backporting patches) so the results 
can't be directly compared to the V1, but I still ran tests without, 
then with, your patches, so you should be able to see the direct effect 
of those patches.

The summary is that there is (as expected) no impact on the dom0 -> VM 
measurements, and the VM -> dom0 measurements are identical with and 
without the patches up to 4 concurrently transmitting VMs or so, after 
which the original version outperforms the patched version. The 
difference becomes less pronounced as the number of TCP streams is 
increased, though.

My conclusion from these results would be that your V3 patches have 
fairly minimal performance impact, although they should improve 
_fairness_ (due to the kthread per VIF) on the transmit (into VM) 
pathway, and simplify the handling of the receive (out of VM) scenario too.

In other news, it looks like the throughput in general has improved 
between 3.6 and -next :)

Cheers,
Andrew

  parent reply	other threads:[~2013-07-03 12:45 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
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 [this message]
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=51D41CD9.6000200@citrix.com \
    --to=andrew.bennieston@citrix.com \
    --cc=annie.li@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=ian.campbell@citrix.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).