Re: [PATCH] x86/kvm: Introduce boot parameter no-kvm-pvipi

From: Wanpeng Li
Date: Tue Oct 26 2021 - 20:47:05 EST


On Wed, 27 Oct 2021 at 00:04, Sean Christopherson <seanjc@xxxxxxxxxx> wrote:
>
> On Mon, Oct 25, 2021, zhenwei pi wrote:
> > Hi, Wanpeng & Sean
> >
> > Also benchmark redis(by 127.0.0.1) in a guest(2vCPU), 'no-kvm-pvipi' gets
> > better performance.
> >
> > Test env:
> > Host side: pin 2vCPU on 2core in a die.
> > Guest side: run command:
> > taskset -c 1 ./redis-server --appendonly no
> > taskset -c 0 ./redis-benchmark -h 127.0.0.1 -d 1024 -n 10000000 -t get
> >
> > 1> without no-kvm-pvipi:
> > redis QPS: 193203.12 requests per second
> > kvm_pv_send_ipi exit: ~18K/s
> >
> > 2> with no-kvm-pvipi:
> > redis QPS: 196028.47 requests per second
> > avic_incomplete_ipi_interception exit: ~5K/s
>
> Numbers look sane, but I don't think that adding a guest-side kernel param is
> the correct "fix". As evidenced by Wanpeng's tests, PV IPI can outperform AVIC
> in overcommit scenarios, and there's also no guarantee that AVIC/APICv is even

Our evaluation is a dedicated scenario w/ big VM. The testing from
above is a one-sided view.

Wanpeng