From: Gregory Haskins <gregory.haskins@gmail.com>
To: Avi Kivity <avi@redhat.com>
Cc: alacrityvm-devel@lists.sourceforge.net,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"Michael S. Tsirkin" <mst@redhat.com>,
netdev@vger.kernel.org
Subject: Re: AlacrityVM benchmark numbers updated
Date: Wed, 26 Aug 2009 14:42:53 -0400 [thread overview]
Message-ID: <4A95822D.9060207@gmail.com> (raw)
In-Reply-To: <4A950B75.5020409@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1633 bytes --]
Avi Kivity wrote:
> On 08/26/2009 04:01 AM, Gregory Haskins wrote:
>> We are pleased to announce the availability of the latest networking
>> benchmark numbers for AlacrityVM. We've made several tweaks to the
>> original v0.1 release to improve performance. The most notable is a
>> switch from get_user_pages to switch_mm+copy_[to/from]_user thanks to a
>> review suggestion from Michael Tsirkin (as well as his patch to
>> implement it).
>>
>> This change alone accounted for freeing up an additional 1.2Gbps, which
>> is over 25% improvement from v0.1. The previous numbers were 4560Gbps
>> before the change, and 5708Gbps after (for 1500mtu over 10GE). This
>> moves us ever closer to the goal of native performance under
>> virtualization.
>>
>
> Interesting, it's good to see that copy_*_user() works so well. Note
> that there's a possible optimization that goes in the opposite direction
> - keep using get_user_pages(), but use the dma engine API to perform the
> actual copy. I expect that it will only be a win when using tso to
> transfer full pages. Large pages may also help.
>
> Copyless tx also wants get_user_pages(). It makes sense to check if
> switch_mm() + get_user_pages_fast() gives better performance than
> get_user_pages().
Actually, I have already look at this and it does indeed seem better to
use switch_mm+gupf() over gup() by quite a large margin. You could then
couple that with your DMA-engine idea to potentially gain even more
benefits (though probably not for networking since most NICs have their
own DMA engine anyway).
Kind Regards,
-Greg
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 267 bytes --]
next prev parent reply other threads:[~2009-08-26 18:43 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-26 1:01 AlacrityVM benchmark numbers updated Gregory Haskins
2009-08-26 10:16 ` Avi Kivity
2009-08-26 18:42 ` Gregory Haskins [this message]
2009-08-26 19:23 ` Avi Kivity
2009-08-26 20:05 ` Gregory Haskins
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=4A95822D.9060207@gmail.com \
--to=gregory.haskins@gmail.com \
--cc=alacrityvm-devel@lists.sourceforge.net \
--cc=avi@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.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.