[pve-devel] [PATCH 6/7] enable kvm_pv_eoi cpuflag
Alexandre Derumier
aderumier at odiso.com
Mon Mar 16 05:57:46 CET 2015
Paravirtualized End-of-Interrupt Indication (PV-EOI)
Hosts and guests require two VM exits (context switches from a VM to a Hypervisor) for each interrupt:
one to inject the interrupt, and another to signal the end of the interrupt.
With pv_eoi , they can negotiate a paravirtualized end-of-interrupt feature and only require one switch per interrupt.
Number of exits is reduced by half for interrupt-intensive workloads,
such as incoming network traffic with a virtio network device.
This leads to significant reduction in host CPU utilization for such workloads.
Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
---
PVE/QemuServer.pm | 1 +
1 file changed, 1 insertion(+)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 329b283..f4a1349 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -2912,6 +2912,7 @@ sub config_to_command {
if (qemu_machine_feature_enabled ($machine_type, $kvmver, 2, 3)) {
push @$cpuFlags , '+kvm_pv_unhalt' if !$nokvm;
+ push @$cpuFlags , '+kvm_pv_eoi' if !$nokvm;
}
$cpu .= "," . join(',', @$cpuFlags) if scalar(@$cpuFlags);
--
1.7.10.4
More information about the pve-devel
mailing list