Re: QEMU PIC indirection patch for in-kernel APIC work
From: Evgeniy Polyakov <hidden>
Date: 2007-04-10 11:50:37
On Tue, Apr 10, 2007 at 02:21:24PM +0300, Avi Kivity (avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org) wrote:
quoted
You want to implement zero-copy network device between host and guest, if I understood this thread correctly? So, for sending part, device allocates pages from receiver's memory (or from shared memory), receiver gets an 'interrupt' and got pages from own memory, which are attached to new skb and transferred up to the network stack. It can be extended to use shared ring of pages.This is what Xen does. It is actually less performant than copying, IIRC. The problem with flipping pages around is that physical addresses are cached both in the kvm mmu and in the on-chip tlbs, necessitating expensive page table walks and tlb invalidation IPIs.
Hmm, I'm not familiar with Xen driver, but similar technique was used with zero-copy network sniffer some time ago, substituting userspace pages with pages containing skb data was about 25-50% faster than copying 1500 bytes in general, and in order of 10 times faster in some cases. Check a link please in case we are talking about different ideas: http://marc.info/?l=linux-netdev&m=112262743505711&w=2 -- Evgeniy Polyakov ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV