All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Gregory Haskins <gregory.haskins@gmail.com>
Cc: netdev@vger.kernel.org,
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
	linux-kernel@vger.kernel.org, mingo@elte.hu, linux-mm@kvack.org,
	"akpm@linux-foundation.org >> Andrew Morton" 
	<akpm@linux-foundation.org>,
	hpa@zytor.com, Patrick Mullaney <pmullaney@novell.com>
Subject: Re: [PATCHv2 0/2] vhost: a kernel-level virtio server
Date: Wed, 12 Aug 2009 15:05:41 +0300	[thread overview]
Message-ID: <20090812120541.GA29158@redhat.com> (raw)
In-Reply-To: <4A82ADD5.6040909@gmail.com>

On Wed, Aug 12, 2009 at 07:56:05AM -0400, Gregory Haskins wrote:
> Michael S. Tsirkin wrote:
> > On Tue, Aug 11, 2009 at 07:49:37PM -0400, Gregory Haskins wrote:
> >> Michael S. Tsirkin wrote:
> >>> This implements vhost: a kernel-level backend for virtio,
> >>> The main motivation for this work is to reduce virtualization
> >>> overhead for virtio by removing system calls on data path,
> >>> without guest changes. For virtio-net, this removes up to
> >>> 4 system calls per packet: vm exit for kick, reentry for kick,
> >>> iothread wakeup for packet, interrupt injection for packet.
> >>>
> >>> Some more detailed description attached to the patch itself.
> >>>
> >>> The patches are against 2.6.31-rc4.  I'd like them to go into linux-next
> >>> and down the road 2.6.32 if possible.  Please comment.
> >> I will add this series to my benchmark run in the next day or so.  Any
> >> specific instructions on how to set it up and run?
> >>
> >> Regards,
> >> -Greg
> >>
> > 
> > 1. use a dedicated network interface with SRIOV, program mac to match
> >    that of guest (for testing, you can set promisc mode, but that is
> >    bad for performance)
> 
> Are you saying SRIOV is a requirement, and I can either program the
> SRIOV adapter with a mac or use promis?  Or are you saying I can use
> SRIOV+programmed mac OR a regular nic + promisc (with a perf penalty).

SRIOV is not a requirement. And you can also use a dedicated
nic+programmed mac if you are so inclined.

> > 2. disable tso,gso,lro with ethtool
> 
> Out of curiosity, wouldnt you only need to disable LRO on the adapter,
> since the other two (IIUC) are transmit path and are therefore
> influenced by the skb's you generate in vhost?

Hmm, makes sense. I'll check this and let you know.

> 
> > 3. add vhost=ethX
> 
> You mean via "ip link" I assume?

No, that's a new flag for virtio in qemu:

-net nic,model=virtio,vhost=veth0

> Regards,
> -Greg
> 



WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Gregory Haskins <gregory.haskins@gmail.com>
Cc: netdev@vger.kernel.org,
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
	linux-kernel@vger.kernel.org, mingo@elte.hu, linux-mm@kvack.org,
	"akpm@linux-foundation.org >> Andrew Morton"
	<akpm@linux-foundation.org>,
	hpa@zytor.com, Patrick Mullaney <pmullaney@novell.com>
Subject: Re: [PATCHv2 0/2] vhost: a kernel-level virtio server
Date: Wed, 12 Aug 2009 15:05:41 +0300	[thread overview]
Message-ID: <20090812120541.GA29158@redhat.com> (raw)
In-Reply-To: <4A82ADD5.6040909@gmail.com>

On Wed, Aug 12, 2009 at 07:56:05AM -0400, Gregory Haskins wrote:
> Michael S. Tsirkin wrote:
> > On Tue, Aug 11, 2009 at 07:49:37PM -0400, Gregory Haskins wrote:
> >> Michael S. Tsirkin wrote:
> >>> This implements vhost: a kernel-level backend for virtio,
> >>> The main motivation for this work is to reduce virtualization
> >>> overhead for virtio by removing system calls on data path,
> >>> without guest changes. For virtio-net, this removes up to
> >>> 4 system calls per packet: vm exit for kick, reentry for kick,
> >>> iothread wakeup for packet, interrupt injection for packet.
> >>>
> >>> Some more detailed description attached to the patch itself.
> >>>
> >>> The patches are against 2.6.31-rc4.  I'd like them to go into linux-next
> >>> and down the road 2.6.32 if possible.  Please comment.
> >> I will add this series to my benchmark run in the next day or so.  Any
> >> specific instructions on how to set it up and run?
> >>
> >> Regards,
> >> -Greg
> >>
> > 
> > 1. use a dedicated network interface with SRIOV, program mac to match
> >    that of guest (for testing, you can set promisc mode, but that is
> >    bad for performance)
> 
> Are you saying SRIOV is a requirement, and I can either program the
> SRIOV adapter with a mac or use promis?  Or are you saying I can use
> SRIOV+programmed mac OR a regular nic + promisc (with a perf penalty).

SRIOV is not a requirement. And you can also use a dedicated
nic+programmed mac if you are so inclined.

> > 2. disable tso,gso,lro with ethtool
> 
> Out of curiosity, wouldnt you only need to disable LRO on the adapter,
> since the other two (IIUC) are transmit path and are therefore
> influenced by the skb's you generate in vhost?

Hmm, makes sense. I'll check this and let you know.

> 
> > 3. add vhost=ethX
> 
> You mean via "ip link" I assume?

No, that's a new flag for virtio in qemu:

-net nic,model=virtio,vhost=veth0

> Regards,
> -Greg
> 

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2009-08-12 12:07 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-11 21:27 [PATCHv2 0/2] vhost: a kernel-level virtio server Michael S. Tsirkin
2009-08-11 21:27 ` Michael S. Tsirkin
2009-08-11 21:27 ` Michael S. Tsirkin
2009-08-11 23:49 ` Gregory Haskins
2009-08-12  7:16   ` Michael S. Tsirkin
2009-08-12  7:16   ` Michael S. Tsirkin
2009-08-12  7:16     ` Michael S. Tsirkin
2009-08-12 11:56     ` Gregory Haskins
2009-08-12 12:05       ` Michael S. Tsirkin [this message]
2009-08-12 12:05         ` Michael S. Tsirkin
2009-08-12 12:41         ` Gregory Haskins
2009-08-12 12:41         ` Gregory Haskins
2009-08-12 12:52           ` Arnd Bergmann
2009-08-12 12:52             ` Arnd Bergmann
2009-08-12 13:06             ` Michael S. Tsirkin
2009-08-12 13:06             ` Michael S. Tsirkin
2009-08-12 13:06               ` Michael S. Tsirkin
2009-08-12 13:40               ` Arnd Bergmann
2009-08-12 13:40                 ` Arnd Bergmann
2009-08-12 13:42                 ` Michael S. Tsirkin
2009-08-12 13:42                   ` Michael S. Tsirkin
2009-08-12 13:42                 ` Michael S. Tsirkin
2009-08-12 13:51                 ` Gregory Haskins
2009-08-12 13:51                 ` Gregory Haskins
2009-08-12 14:02                   ` Michael S. Tsirkin
2009-08-12 14:02                     ` Michael S. Tsirkin
2009-08-12 16:13                     ` Gregory Haskins
2009-08-12 16:37                       ` Michael S. Tsirkin
2009-08-12 16:37                       ` Michael S. Tsirkin
2009-08-12 16:37                         ` Michael S. Tsirkin
2009-08-12 16:13                     ` Gregory Haskins
2009-08-12 14:02                   ` Michael S. Tsirkin
2009-08-12 13:40               ` Arnd Bergmann
2009-08-12 12:52           ` Arnd Bergmann
2009-08-12 13:04           ` Michael S. Tsirkin
2009-08-12 13:04             ` Michael S. Tsirkin
2009-08-12 13:04           ` Michael S. Tsirkin
2009-08-12 12:05       ` Michael S. Tsirkin
2009-08-12 11:56     ` Gregory Haskins
2009-08-11 23:49 ` Gregory Haskins
  -- strict thread matches above, loose matches on Subject: below --
2009-08-11 21:27 Michael S. Tsirkin

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=20090812120541.GA29158@redhat.com \
    --to=mst@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=gregory.haskins@gmail.com \
    --cc=hpa@zytor.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mingo@elte.hu \
    --cc=netdev@vger.kernel.org \
    --cc=pmullaney@novell.com \
    --cc=virtualization@lists.linux-foundation.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.