Steal time in KVM

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

 



Hi,

I am trying to get the steal time with 2 VMs (each with 1 Vcpu) pinned
to same core.

While finding documentation on this, I came across your patches and
posts related to the implementation of this feature, so I thought it
would be best to ask you.

I run the same application on these 2 VMs simultaneously and see the
performance difference. I am trying to read the steal time from inside
the guest using top, vmstat etc.

Both, top and vmstat -s report the steal time (st) as 0. I also
checked that procps is in latest version. I am using virtio-net. I
suspect that the steal time is not being updated well. Is there
something which I need to configure for this to work? My Linux version
for guest image is:

Linux server-147 2.6.35-24-virtual #42-Ubuntu SMP Thu Dec 2 05:15:26
UTC 2010 x86_64 GNU/Linux

And /proc/cpuinfo shows i:

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 2
model name	: QEMU Virtual CPU version 0.14.0
stepping	: 3
cpu MHz		: 2992.498
cache size	: 4096 KB
fpu		: yes
fpu_exception	: yes
cpuid level	: 4
wp		: yes
flags		: fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pse36 clflush mmx fxsr sse sse2 syscall nx lm up rep_good pni cx16
hypervisor lahf_lm
bogomips	: 5984.99
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management:


Another question I had was that is there a way to programmatically get
the value of steal cycles (e.g. from a  C program) ?
Thanks,

Abhishek

On Monday, June 13, 2011 6:40:02 PM UTC-5, Glauber Costa wrote:
> Hi,
>
> This series is a repost of the last series I posted about this.
> It tries to address most concerns that were raised at the time,
> plus makes uses of the static_branch interface to disable the
> steal code when not in use.
>
>
> Glauber Costa (7):
>   KVM-HDR Add constant to represent KVM MSRs enabled bit
>   KVM-HDR: KVM Steal time implementation
>   KVM-HV: KVM Steal time implementation
>   KVM-GST: Add a pv_ops stub for steal time
>   KVM-GST: KVM Steal time accounting
>   KVM-GST: adjust scheduler cpu power
>   KVM-GST: KVM Steal time registration
>
>  Documentation/kernel-parameters.txt   |    4 ++
>  Documentation/virtual/kvm/msr.txt     |   33 +++++++++++++
>  arch/x86/Kconfig                      |   12 +++++
>  arch/x86/include/asm/kvm_host.h       |    8 +++
>  arch/x86/include/asm/kvm_para.h       |   15 ++++++
>  arch/x86/include/asm/paravirt.h       |    9 ++++
>  arch/x86/include/asm/paravirt_types.h |    1 +
>  arch/x86/kernel/kvm.c                 |   72 +++++++++++++++++++++++++++++
>  arch/x86/kernel/kvmclock.c            |    2 +
>  arch/x86/kernel/paravirt.c            |    9 ++++
>  arch/x86/kvm/x86.c                    |   60 +++++++++++++++++++++++-
>  kernel/sched.c                        |   81 +++++++++++++++++++++++++++++----
>  kernel/sched_features.h               |    4 +-
>  13 files changed, 296 insertions(+), 14 deletions(-)
>
> --
> 1.7.3.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/



On Monday, June 13, 2011 6:40:02 PM UTC-5, Glauber Costa wrote:
> Hi,
>
> This series is a repost of the last series I posted about this.
> It tries to address most concerns that were raised at the time,
> plus makes uses of the static_branch interface to disable the
> steal code when not in use.
>
>
> Glauber Costa (7):
>   KVM-HDR Add constant to represent KVM MSRs enabled bit
>   KVM-HDR: KVM Steal time implementation
>   KVM-HV: KVM Steal time implementation
>   KVM-GST: Add a pv_ops stub for steal time
>   KVM-GST: KVM Steal time accounting
>   KVM-GST: adjust scheduler cpu power
>   KVM-GST: KVM Steal time registration
>
>  Documentation/kernel-parameters.txt   |    4 ++
>  Documentation/virtual/kvm/msr.txt     |   33 +++++++++++++
>  arch/x86/Kconfig                      |   12 +++++
>  arch/x86/include/asm/kvm_host.h       |    8 +++
>  arch/x86/include/asm/kvm_para.h       |   15 ++++++
>  arch/x86/include/asm/paravirt.h       |    9 ++++
>  arch/x86/include/asm/paravirt_types.h |    1 +
>  arch/x86/kernel/kvm.c                 |   72 +++++++++++++++++++++++++++++
>  arch/x86/kernel/kvmclock.c            |    2 +
>  arch/x86/kernel/paravirt.c            |    9 ++++
>  arch/x86/kvm/x86.c                    |   60 +++++++++++++++++++++++-
>  kernel/sched.c                        |   81 +++++++++++++++++++++++++++++----
>  kernel/sched_features.h               |    4 +-
>  13 files changed, 296 insertions(+), 14 deletions(-)
>
> --
> 1.7.3.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux