KVM: Coalesced MMIO support
authoraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 9 Dec 2008 20:09:57 +0000 (20:09 +0000)
committeraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 9 Dec 2008 20:09:57 +0000 (20:09 +0000)
commit5b8c33baa9ecf7b37fdf355d3795a45eb5cdf591
tree1d0351afc0542f8f709f9ed7f6a445474b137a9e
parentc72deb29017d2f5e1005600eed7fbba965f2be3b
KVM: Coalesced MMIO support

MMIO exits are more expensive in KVM or Xen than in QEMU because they
involve, at least, privilege transitions.  However, MMIO write
operations can be effectively batched if those writes do not have side
effects.

Good examples of this include VGA pixel operations when in a planar
mode.  As it turns out, we can get a nice boost in other areas too.
Laurent mentioned a 9.7% performance boost in iperf with the coalesced
MMIO changes for the e1000 when he originally posted this work for KVM.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5961 c046a42c-6fe2-441c-8c8c-71466251a162
cpu-all.h
exec.c
hw/cirrus_vga.c
hw/e1000.c
hw/pci.c
hw/vga.c
kvm-all.c
kvm.h