[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e805e616-f840-8cb2-3133-4557c80afff9@virtuozzo.com>
Date: Mon, 19 Dec 2016 16:05:55 +0300
From: Denis Plotnikov <dplotnikov@...tuozzo.com>
To: Paolo Bonzini <pbonzini@...hat.com>,
<linux-kernel@...r.kernel.org>, <kvm@...r.kernel.org>
CC: <rkrcmar@...hat.com>, <rkagan@...tuozzo.com>
Subject: Re: [RFC PATCH v3 0/6] KVM: x86: avoid redundant REQ_EVENT
On 19.12.2016 12:47, Paolo Bonzini wrote:
> This is the result of cleaning up the places that set REQ_EVENT unnecessarily.
> The savings on self-IPI kvm-unit-tests are:
>
> self_ipi_sti_nop ~300 clock cycles
> self_ipi_sti_hlt ~300 clock cycles
> self_ipi_tpr ~400 clock cycles
> self_ipi_tpr_sti_nop ~700 clock cycles
> self_ipi_tpr_sti_hlt ~700 clock cycles
>
> which is in the 5-10% range. Please help me comparing this series with
> "[PATCH v2] KVM: x86: avoid redundant REQ_EVENT" on the real workload!
>
> Thanks,
>
> Paolo
This new patch-set does avoid unnecessary interrupt re-injections - checked.
The test (MS Windows, sending messages between multiple windows using
windows-specific interface),
which showed performance growth with "[PATCH v2] KVM: x86: avoid
redundant REQ_EVENT" showed pretty much the same performance level with
this new patch-set.
The test score difference (+2.4% to [PATCH v2]) is within the tolerance
range(5%).
The test score on mainstream v4.9 kernel CPU Intel i5-2400, guest
Windows Server 2012 2VCPU, 2GB:
without patch: 31510 (+/- 4%)
with patch: 36270 (+/- 5%)
difference = (36270-31510)/31510 * 100 = +15% -- looks good!
Thanks!
>
> Paolo Bonzini (6):
> KVM: x86: add VCPU stat for KVM_REQ_EVENT processing
> KVM: lapic: do not set KVM_REQ_EVENT unnecessarily on EOI
> KVM: vmx: speed up TPR below threshold vmexits
> KVM: lapic: remove unnecessary KVM_REQ_EVENT on PPR update
> KVM: lapic: do not set KVM_REQ_EVENT unnecessarily on PPR update
> KVM: lapic: do not scan IRR when delivering an interrupt
>
> arch/x86/include/asm/kvm_host.h | 1 +
> arch/x86/kvm/lapic.c | 58 +++++++++++++++++++++++++----------------
> arch/x86/kvm/lapic.h | 1 +
> arch/x86/kvm/vmx.c | 2 +-
> arch/x86/kvm/x86.c | 2 ++
> 5 files changed, 41 insertions(+), 23 deletions(-)
>
--
Best,
Denis
Powered by blists - more mailing lists