qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v6 0/2] kvm: limited x86 CPU power management


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH v6 0/2] kvm: limited x86 CPU power management
Date: Wed, 27 Jun 2018 17:08:26 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0

On 22/06/2018 21:22, Michael S. Tsirkin wrote:
> This adds ability to expose some host CPU power management capabilities
> to guests. For intel guests, this is sufficient for guest to enable low
> power CPU states on idle. For AMD guests it isn't sufficient, deeper
> C-states are entered using System-IO.
> 
> When enabled this puts CPU in a low power state with exit latencies that
> can go up to multiple milliseconds, and makes host scheduler as well as
> host utilities such as top and powertop think the CPU is constantly
> busy.  Thus it has the effect of dedicating a host CPU for this guest.
> 
> mwait based power management is tied closely to specifics of CPUID,
> making migration challenging. At this point only the non-migrateable
> -cpu host is supported.
> 
> With this patch applied, VM latency is within the noise of
> baremetal for some benchmarks.
> 
> perf bench sched pipe results:
> Before:
>     6.452 sec
> After:
>     4.382 sec
> Baremetal:
>     4.136 sec
> 
> Changes since v5:
>     Typo fix.
> 
> Changes since v4:
>     See v3, now for real.
> 
> Changes since v3:
>     At Paolo's suggestion, rename -dedicated to -overcommit.
> 
> Changes since v2:
>     At Daniel's suggestion, don't use the -realtime flag.
> 
>     At Paolo's suggestion, group this with memory lock flag
>     which has a similar effect of dedicating memory to this VM.
> 
> Michael S. Tsirkin (2):
>   kvm: support -overcommit cpu-pm=on|off
>   i386/cpu: make -cpu host support monitor/mwait
> 
>  include/sysemu/sysemu.h |  1 +
>  target/i386/cpu.h       |  9 +++++++++
>  target/i386/cpu.c       | 19 ++++++++++++++-----
>  target/i386/kvm.c       | 32 ++++++++++++++++++++++++++++++++
>  vl.c                    | 32 +++++++++++++++++++++++++++++++-
>  qemu-options.hx         | 27 +++++++++++++++++++++++++--
>  6 files changed, 112 insertions(+), 8 deletions(-)
> 

Queued, thanks.

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]