Re: copyless virtio net thoughts?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Herbert Xu wrote:
On Fri, Feb 06, 2009 at 10:46:37AM +0200, Avi Kivity wrote:
The guest's block layer is copyless. The host block layer is -><- this far from being copyless -- all we need is preadv()/pwritev() or to replace our thread pool implementation in qemu with linux-aio. Everything else is copyless.

Since we are actively working on this, expect this limitation to disappear soon.

Great, when that happens I'll promise to revisit zero-copy transmit :)


I was hoping to get some concurrency here, but okay.

I support this, but it should be in addition to copylessness, not on its own.

I was talking about it in the context of zero-copy receive, where
you mentioned that the virtio/kvm copy may not occur on the CPU of
the guest's copy.

My point is that using multiqueue you can avoid this change of CPU.

But yeah I think zero-copy receive is much more useful than zero-
copy transmit at the moment.  Although I'd prefer to wait for
you guys to finish the block layer work before contemplating
pushing the copy on receive into the guest :)


We'll get the block layer done soon, so it won't be a barrier.

- many guests will not support multiqueue

Well, these guests will suck both on baremetal and in virtualisation,
big deal :) Multiqueue at 10GbE speeds and above is simply not an
optional feature.

Each guest may only use a part of the 10Gb/s bandwidth, if you have 10 guests each using 1Gb/s, then we should be able to support this without multiqueue in the guests.


--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux