public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] kvm-unittests: add pci PORT IO and MMIO speed tests
@ 2013-04-03  8:59 Michael S. Tsirkin
  2013-04-03  8:59 ` [PATCH 1/4] kvm: remove unused APIs Michael S. Tsirkin
                   ` (3 more replies)
  0 siblings, 4 replies; 27+ messages in thread
From: Michael S. Tsirkin @ 2013-04-03  8:59 UTC (permalink / raw)
  To: qemu-devel, kvm, pbonzini, gleb, mtosatti

These patches add a test device, useful to measure speed of MMIO versus PIO, in
different configurations. As I didn't want to reserve a hardcoded range
of memory, I added pci device for this instead.  Used together with the
kvm unittest patches I posted on kvm mailing list.

To use, simply add the device on the pci bus.
Example test output:
	mmio-no-eventfd:pci-mem 8796
	mmio-wildcard-eventfd:pci-mem 3609
	mmio-datamatch-eventfd:pci-mem 3685
	portio-no-eventfd:pci-io 5287
	portio-wildcard-eventfd:pci-io 1762
	portio-datamatch-eventfd:pci-io 1777

First interesting conclusion is that the overhead of MMIO
exit to QEMU as compared to PIO is double that of
MMIO ioeventfd as compared to PIO eventfd. Is this a known fact?

I also had to extend kvm in a minor way, making all ioeventfd
options accessible through the API. This actually needs less code
than checking that users DTRT.

What's the best way to merge this patchset?
I'm guessing the kvm tree ...

Michael S. Tsirkin (4):
  kvm: remove unused APIs
  kvm: support any size for pio eventfd
  kvm: support non datamatch ioeventfd
  pci: add pci test device

 hw/i386/Makefile.objs |   2 +-
 hw/pci-testdev.c      | 306 ++++++++++++++++++++++++++++++++++++++++++++++++++
 hw/pci/pci.h          |   1 +
 include/sysemu/kvm.h  |   4 -
 kvm-all.c             | 133 +++++++++++-----------
 kvm-stub.c            |  10 --
 6 files changed, 376 insertions(+), 80 deletions(-)
 create mode 100644 hw/pci-testdev.c

-- 
MST

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2013-04-03 19:59 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-03  8:59 [PATCH 0/4] kvm-unittests: add pci PORT IO and MMIO speed tests Michael S. Tsirkin
2013-04-03  8:59 ` [PATCH 1/4] kvm: remove unused APIs Michael S. Tsirkin
2013-04-03  8:59 ` [PATCH 2/4] kvm: support any size for pio eventfd Michael S. Tsirkin
2013-04-03  8:59 ` [PATCH 3/4] kvm: support non datamatch ioeventfd Michael S. Tsirkin
2013-04-03  8:59 ` [PATCH 4/4] pci: add pci test device Michael S. Tsirkin
2013-04-03  9:28   ` Paolo Bonzini
2013-04-03  9:45     ` Michael S. Tsirkin
2013-04-03  9:53       ` Paolo Bonzini
2013-04-03 10:22         ` Michael S. Tsirkin
2013-04-03 10:25           ` Paolo Bonzini
2013-04-03 10:33             ` Michael S. Tsirkin
2013-04-03 10:34               ` Paolo Bonzini
2013-04-03 10:38                 ` Michael S. Tsirkin
2013-04-03 11:48                   ` Paolo Bonzini
2013-04-03 12:00                     ` Michael S. Tsirkin
2013-04-03 12:05                       ` Paolo Bonzini
2013-04-03 14:06                         ` Michael S. Tsirkin
2013-04-03 14:08                           ` Paolo Bonzini
2013-04-03 14:28                             ` Michael S. Tsirkin
2013-04-03 15:46                               ` Paolo Bonzini
2013-04-03 17:04                                 ` Michael S. Tsirkin
2013-04-03 17:10                                   ` Paolo Bonzini
2013-04-03 14:33                             ` Michael S. Tsirkin
2013-04-03 15:09                             ` Michael S. Tsirkin
2013-04-03 15:43                               ` Paolo Bonzini
2013-04-03 18:39                                 ` Michael S. Tsirkin
2013-04-03 19:59                                   ` Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox