public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] kvm: Batch writes to MMIO
@ 2008-05-23  8:50 Laurent Vivier
  2008-05-23  8:50 ` [PATCH 1/5] kvm_io_device: extend in_range() to manage len and write attribute Laurent Vivier
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Laurent Vivier @ 2008-05-23  8:50 UTC (permalink / raw)
  To: kvm; +Cc: Laurent Vivier

When kernel has to send MMIO writes to userspace, it stores them
in memory until it has to pass the hand to userspace for another
reason. This avoids to have too many context switches on operations
that can wait.

These patches introduce an ioctl() to define MMIO allowed to be delayed.

			WITHOUT			WITH
			PATCH			PATCH

iperf (e1000)		169 MB/s		185,5 MB/s	+9,7%
   host_state_reload	(626594)		(391825)	-37%

	[9,7% is a more realistic value than my previous benchmark]

boot XP
host_state_reload	764677			516059		-32%

VGA text scroll	
host_state_reload	13280568 (6:15)		3608362 (4:42)	-73% (-25%)

This is the kernel part of the MMIO batching functionality.

[PATCH 1/5] kvm_io_device: extend in_range() to manage len and write attribute

	Modify member in_range() of structure kvm_io_device to pass length
	and the type of the I/O (write or read).

[PATCH 2/5] Add delayed MMIO support (common part)

	This patch adds all needed structures to batch MMIOs.
	Until an architecture uses it, it is not compiled.

[PATCH 3/5] Add delayed MMIO support (x86 part)

	This patch enables MMIO batching for x86 architecture.

[PATCH 4/5] Add delayed MMIO support (powerpc part)

	This patch enables MMIO batching for powerpc architecture.
	WARNING: this has not been tested.

[PATCH 5/5] Add delayed MMIO support (ia64 part)

	This patch enables MMIO batching for ia64 architecture.
	WARNING: this has not been tested.

Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net>



^ permalink raw reply	[flat|nested] 12+ messages in thread
* [PATCH 0/5] kvm: Batch writes to MMIO
@ 2008-05-30 14:05 Laurent Vivier
  2008-06-04 15:13 ` Avi Kivity
  0 siblings, 1 reply; 12+ messages in thread
From: Laurent Vivier @ 2008-05-30 14:05 UTC (permalink / raw)
  To: kvm; +Cc: Laurent Vivier


When kernel has to send MMIO writes to userspace, it stores them
in memory until it has to pass the hand to userspace for another
reason. This avoids to have too many context switches on operations
that can wait.

These patches introduce an ioctl() to define MMIO allowed to be coalesced.

This is the kernel part of the coalesced MMIO functionality.

[PATCH 1/5] kvm_io_device: extend in_range() to manage len and write attribute

    Modify member in_range() of structure kvm_io_device to pass length
    and the type of the I/O (write or read).

[PATCH 2/5] Add coalesced MMIO support (common part)

    This patch adds all needed structures to coalesce MMIOs.

[PATCH 3/5] Add coalesced MMIO support (x86 part)

    This patch enables coalesced MMIO for x86 architecture.

[PATCH 4/5] Add coalesced  MMIO support (powerpc part)

    This patch enables coalesced MMIO for powerpc architecture.
    WARNING: this has not been tested.

[PATCH 5/5] Add coalesced MMIO support (ia64 part)

    This patch enables coalesced MMIO for ia64 architecture.
    WARNING: this has not been tested.

Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net>

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

end of thread, other threads:[~2008-06-04 15:13 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-23  8:50 [PATCH 0/5] kvm: Batch writes to MMIO Laurent Vivier
2008-05-23  8:50 ` [PATCH 1/5] kvm_io_device: extend in_range() to manage len and write attribute Laurent Vivier
2008-05-23  8:50   ` [PATCH 2/5] Add delayed MMIO support (common part) Laurent Vivier
2008-05-23  8:50     ` [PATCH 3/5] Add delayed MMIO support (x86 part) Laurent Vivier
2008-05-23  8:50       ` [PATCH 4/5] Add delayed MMIO support (powerpc part) Laurent Vivier
2008-05-23  8:50         ` [PATCH 5/5] Add delayed MMIO support (ia64 part) Laurent Vivier
2008-05-26 12:00 ` [PATCH 0/5] kvm: Batch writes to MMIO Avi Kivity
2008-05-26 12:10   ` Laurent Vivier
2008-05-26 13:43     ` Avi Kivity
2008-05-26 14:20 ` Avi Kivity
  -- strict thread matches above, loose matches on Subject: below --
2008-05-30 14:05 Laurent Vivier
2008-06-04 15:13 ` Avi Kivity

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