All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jason Wang <jasowang@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Krishna Kumar2 <krkumar2@in.ibm.com>,
	kvm@vger.kernel.org, mst@redhat.com, netdev@vger.kernel.org,
	Jason Wang <jasowang@redhat.com>,
	rusty@rustcorp.com.au, qemu-devel@nongnu.org
Subject: Re: [RFC PATCH 0/2] Multiqueue support for qemu(virtio-net)
Date: Sat, 30 Apr 2011 22:55:26 +0800	[thread overview]
Message-ID: <19900.8926.555478.30391@gargle.gargle.HOWL> (raw)
In-Reply-To: <4DBB1B25.1020300@codemonkey.ws>

Anthony Liguori writes:
 > On 04/20/2011 10:33 PM, Jason Wang wrote:
 > > Krishna Kumar2 writes:
 > >   >  Thanks Jason!
 > >   >
 > >   >  So I can use my virtio-net guest driver and test with this patch?
 > >   >  Please provide the script you use to start MQ guest.
 > >   >
 > >
 > > Yes and thanks. Following is a simple script may help you start macvtap mq
 > > guest.
 > >
 > > qemu_path=./qemu-system-x86_64
 > > img_path=/home/kvm_autotest_root/images/mq.qcow2
 > > vtap_dev=/dev/tap104
 > > mac=96:88:12:1C:27:83
 > > smp=2
 > > mq=4
 > >
 > > for i in `seq $mq`
 > > do
 > >      vtap+=" -netdev tap,id=hn$i,fd=$((i+100)) $((i+100))<>$vtap_dev"
 > 
 > So you are basically dup()'ing the tap device.
 > 
 > Does this actually improve performance at all?
 > 

The script maybe not clear. It works only for macvtap (tap does not have
multiqueue support and I plan to add it). A macvtap device needs to be created
first by ip command.

The multiqueue was achieved by opening the macvtap device many times. Each time
 the user open to macvtap device, a new queue (sock) was created. Then macvtap
 device then can forward the packets to different sock/fd based on their RX
 queue of physical nics. So the fd could be used to registered as a backend for
 vhost/qemu.

Performance improvement is expected when using smp guest with mq virtio-net and
mq nic.

 > Regards,
 > 
 > Anthony Liguori
 > 


-- 
Jason Wang

WARNING: multiple messages have this Message-ID (diff)
From: Jason Wang <jasowang@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Krishna Kumar2 <krkumar2@in.ibm.com>,
	kvm@vger.kernel.org, mst@redhat.com, netdev@vger.kernel.org,
	Jason Wang <jasowang@redhat.com>,
	rusty@rustcorp.com.au, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC PATCH 0/2] Multiqueue support for qemu(virtio-net)
Date: Sat, 30 Apr 2011 22:55:26 +0800	[thread overview]
Message-ID: <19900.8926.555478.30391@gargle.gargle.HOWL> (raw)
In-Reply-To: <4DBB1B25.1020300@codemonkey.ws>

Anthony Liguori writes:
 > On 04/20/2011 10:33 PM, Jason Wang wrote:
 > > Krishna Kumar2 writes:
 > >   >  Thanks Jason!
 > >   >
 > >   >  So I can use my virtio-net guest driver and test with this patch?
 > >   >  Please provide the script you use to start MQ guest.
 > >   >
 > >
 > > Yes and thanks. Following is a simple script may help you start macvtap mq
 > > guest.
 > >
 > > qemu_path=./qemu-system-x86_64
 > > img_path=/home/kvm_autotest_root/images/mq.qcow2
 > > vtap_dev=/dev/tap104
 > > mac=96:88:12:1C:27:83
 > > smp=2
 > > mq=4
 > >
 > > for i in `seq $mq`
 > > do
 > >      vtap+=" -netdev tap,id=hn$i,fd=$((i+100)) $((i+100))<>$vtap_dev"
 > 
 > So you are basically dup()'ing the tap device.
 > 
 > Does this actually improve performance at all?
 > 

The script maybe not clear. It works only for macvtap (tap does not have
multiqueue support and I plan to add it). A macvtap device needs to be created
first by ip command.

The multiqueue was achieved by opening the macvtap device many times. Each time
 the user open to macvtap device, a new queue (sock) was created. Then macvtap
 device then can forward the packets to different sock/fd based on their RX
 queue of physical nics. So the fd could be used to registered as a backend for
 vhost/qemu.

Performance improvement is expected when using smp guest with mq virtio-net and
mq nic.

 > Regards,
 > 
 > Anthony Liguori
 > 


-- 
Jason Wang

  reply	other threads:[~2011-04-30 14:55 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-20  8:33 [RFC PATCH 0/2] Multiqueue support for qemu(virtio-net) Jason Wang
2011-04-20  8:33 ` [Qemu-devel] " Jason Wang
2011-04-20  8:33 ` [RFC PATCH 1/2] net: Add multiqueue support Jason Wang
2011-04-20  8:33   ` [Qemu-devel] " Jason Wang
2011-04-29 20:07   ` Anthony Liguori
2011-04-29 20:07     ` [Qemu-devel] " Anthony Liguori
2011-04-30 15:15     ` Jason Wang
2011-04-30 15:15       ` [Qemu-devel] " Jason Wang
2011-04-20  8:33 ` [RFC PATCH 2/2] virtio-net: add " Jason Wang
2011-04-20  8:33   ` [Qemu-devel] " Jason Wang
2011-04-20  8:52 ` [RFC PATCH 0/2] Multiqueue support for qemu(virtio-net) Krishna Kumar2
2011-04-20  8:52   ` [Qemu-devel] " Krishna Kumar2
2011-04-21  3:33   ` Jason Wang
2011-04-21  3:33     ` [Qemu-devel] " Jason Wang
2011-04-29 20:10     ` Anthony Liguori
2011-04-30 14:55       ` Jason Wang [this message]
2011-04-30 14:55         ` Jason Wang
2011-04-28  3:11 ` Jason Wang
2011-04-28  3:11   ` [Qemu-devel] " Jason Wang

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=19900.8926.555478.30391@gargle.gargle.HOWL \
    --to=jasowang@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=krkumar2@in.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rusty@rustcorp.com.au \
    /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.