kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@redhat.com>
To: Peter Lieven <pl@dlh.net>
Cc: Vadim Rozenfeld <vrozenfe@redhat.com>,
	David Cure <kvm@cure.nom.fr>, Avi Kivity <avi@redhat.com>,
	kvm@vger.kernel.org
Subject: Re: performance trouble
Date: Tue, 27 Mar 2012 14:26:46 +0200	[thread overview]
Message-ID: <20120327122645.GW22368@redhat.com> (raw)
In-Reply-To: <4F71B087.8060008@dlh.net>

On Tue, Mar 27, 2012 at 02:20:23PM +0200, Peter Lieven wrote:
> On 27.03.2012 12:00, Gleb Natapov wrote:
> >On Tue, Mar 27, 2012 at 11:26:29AM +0200, Peter Lieven wrote:
> >>On 27.03.2012 11:23, Vadim Rozenfeld wrote:
> >>>On Tuesday, March 27, 2012 10:56:05 AM Gleb Natapov wrote:
> >>>>On Mon, Mar 26, 2012 at 10:11:43PM +0200, Vadim Rozenfeld wrote:
> >>>>>On Monday, March 26, 2012 08:54:50 PM Peter Lieven wrote:
> >>>>>>On 26.03.2012 20:36, Vadim Rozenfeld wrote:
> >>>>>>>On Monday, March 26, 2012 07:52:49 PM Gleb Natapov wrote:
> >>>>>>>>On Mon, Mar 26, 2012 at 07:46:03PM +0200, Vadim Rozenfeld wrote:
> >>>>>>>>>On Monday, March 26, 2012 07:00:32 PM Peter Lieven wrote:
> >>>>>>>>>>On 22.03.2012 10:38, Vadim Rozenfeld wrote:
> >>>>>>>>>>>On Thursday, March 22, 2012 10:52:42 AM Peter Lieven wrote:
> >>>>>>>>>>>>On 22.03.2012 09:48, Vadim Rozenfeld wrote:
> >>>>>>>>>>>>>On Thursday, March 22, 2012 09:53:45 AM Gleb Natapov wrote:
> >>>>>>>>>>>>>>On Wed, Mar 21, 2012 at 06:31:02PM +0100, Peter Lieven wrote:
> >>>>>>>>>>>>>>>On 21.03.2012 12:10, David Cure wrote:
> >>>>>>>>>>>>>>>>		hello,
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>Le Tue, Mar 20, 2012 at 02:38:22PM +0200, Gleb Natapov
> >>>ecrivait :
> >>>>>>>>>>>>>>>>>Try to add<feature policy='disable' name='hypervisor'/>
> >>>>>>>>>>>>>>>>>to cpu definition in XML and check command line.
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>	ok I try this but I can't use<cpu model>       to map the
> >>>>>>>>>>>>>>>>	host cpu
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>(my libvirt is 0.9.8) so I use :
> >>>>>>>>>>>>>>>>      <cpu match='exact'>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>        <model>Opteron_G3</model>
> >>>>>>>>>>>>>>>>        <feature policy='disable' name='hypervisor'/>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>      </cpu>
> >>>>>>>>>>>>>>>>	
> >>>>>>>>>>>>>>>>	(the physical server use Opteron CPU).
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>	The log is here :
> >>>>>>>>>>>>>>>>http://www.roullier.net/Report/report-3.2-vhost-net-1vcpu-cp
> >>>>>>>>>>>>>>>>u.tx t.gz
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>	And now with only 1 vcpu, the response time is 8.5s, great
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>improvment. We keep this configuration for production : we
> >>>>>>>>>>>>>>>>check the response time when some other users are
> >>>>>>>>>>>>>>>>connected.
> >>>>>>>>>>>>>>>please keep in mind, that setting -hypervisor, disabling hpet
> >>>>>>>>>>>>>>>and only one vcpu
> >>>>>>>>>>>>>>>makes windows use tsc as clocksource. you have to make sure,
> >>>>>>>>>>>>>>>that your vm is not switching between physical sockets on
> >>>>>>>>>>>>>>>your system and that you have constant_tsc feature to have a
> >>>>>>>>>>>>>>>stable tsc between the cores in the same socket. its also
> >>>>>>>>>>>>>>>likely that the vm will crash when live migrated.
> >>>>>>>>>>>>>>All true. I asked to try -hypervisor only to verify where we
> >>>>>>>>>>>>>>loose performance. Since you get good result with it frequent
> >>>>>>>>>>>>>>access to PM timer is probably the reason. I do not recommend
> >>>>>>>>>>>>>>using -hypervisor for production!
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>@gleb: do you know whats the state of in-kernel hyper-v
> >>>>>>>>>>>>>>>timers?
> >>>>>>>>>>>>>>Vadim is working on it. I'll let him answer.
> >>>>>>>>>>>>>It would be nice to have synthetic timers supported. But,  at
> >>>>>>>>>>>>>the moment, I'm only researching  this feature.
> >>>>>>>>>>>>So it will take months at least?
> >>>>>>>>>>>I would say weeks.
> >>>>>>>>>>Is there a way, we could contribute and help you with this?
> >>>>>>>>>Hi Peter,
> >>>>>>>>>You are welcome to add  an appropriate handler.
> >>>>>>>>I think Vadim refers to this HV MSR
> >>>>>>>>http://msdn.microsoft.com/en-us/library/windows/hardware/ff542633%28
> >>>>>>>>v=vs .85 %29.aspx
> >>>>>>>This one is pretty simple to support. Please see attachments for more
> >>>>>>>details. I was thinking about synthetic  timers
> >>>>>>>http://msdn.microsoft.com/en-
> >>>>>>>us/library/windows/hardware/ff542758(v=vs.85).aspx
> >>>>>>is this what microsoft qpc uses as clocksource in hyper-v?
> >>>>>Yes, it should be enough for Win7 / W2K8R2.
> >>>>To clarify the thing that microsoft qpc uses is what is implemented by
> >>>>the patch Vadim attached to his previous email. But I believe that
> >>>>additional qemu patch is needed for Windows to actually use it.
> >>>You are right.
> >>>bits 1 and 9 must be set to on in leaf 0x40000003 and HPET
> >>>should be completely removed from ACPI.
> >>could you advise how to do this and/or make a patch?
> >>
> >>the stuff you send yesterday is for qemu, right? would
> >>it be possible to use it in qemu-kvm also?
> >>
> >No, they are for kernel.
> i meant the qemu.diff file.
> 
Yes, I missed the second attachment.

> if i understand correctly i have to pass -cpu host,+hv_refcnt to qemu?
> 
Looks like it.

--
			Gleb.

  reply	other threads:[~2012-03-27 12:26 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-23  8:28 performance trouble David Cure
2012-01-23 10:04 ` David Cure
2012-01-30 15:36 ` David Cure
2012-01-30 16:20   ` Brian Jackson
2012-01-30 16:51     ` David Cure
2012-01-30 17:21       ` Avi Kivity
2012-01-31 17:15         ` David Cure
2012-01-31 17:21           ` Avi Kivity
2012-02-02 10:41             ` David Cure
2012-02-03  8:59               ` David Cure
2012-02-05  9:38                 ` Avi Kivity
2012-02-10 10:09                   ` David Cure
2012-02-14 13:32                     ` Avi Kivity
2012-02-14 13:40                       ` Gleb Natapov
2012-02-16  8:55                         ` David Cure
2012-02-16  9:01                           ` Gleb Natapov
2012-02-17  8:59                             ` David Cure
2012-02-17 10:07                               ` Gleb Natapov
2012-02-17 14:01                                 ` David Cure
2012-02-19  9:13                                   ` Gleb Natapov
2012-02-22 16:33                                     ` David Cure
2012-02-22 16:58                                       ` David Cure
2012-02-23  8:38                                       ` Gleb Natapov
2012-03-16 10:13                                         ` David Cure
2012-03-19 10:51                                           ` Gleb Natapov
2012-03-20  9:32                                             ` David Cure
2012-03-20  9:45                                               ` Gleb Natapov
2012-03-20 11:18                                                 ` David Cure
2012-03-20 12:38                                                   ` Gleb Natapov
2012-03-21 11:10                                                     ` David Cure
2012-03-21 17:31                                                       ` Peter Lieven
2012-03-22  7:53                                                         ` Gleb Natapov
2012-03-22  7:57                                                           ` Peter Lieven
2012-03-22  8:35                                                             ` David Cure
2012-03-22  8:33                                                           ` David Cure
2012-03-22  8:50                                                             ` Peter Lieven
2012-03-22  8:48                                                           ` Vadim Rozenfeld
2012-03-22  8:52                                                             ` Peter Lieven
2012-03-22  9:38                                                               ` Vadim Rozenfeld
2012-03-26 17:00                                                                 ` Peter Lieven
2012-03-26 17:46                                                                   ` Vadim Rozenfeld
2012-03-26 17:52                                                                     ` Gleb Natapov
2012-03-26 18:36                                                                       ` Vadim Rozenfeld
2012-03-26 18:54                                                                         ` Peter Lieven
2012-03-26 20:11                                                                           ` Vadim Rozenfeld
2012-03-27  8:56                                                                             ` Gleb Natapov
2012-03-27  9:23                                                                               ` Vadim Rozenfeld
2012-03-27  9:24                                                                                 ` Gleb Natapov
2012-03-27  9:26                                                                                 ` Peter Lieven
2012-03-27 10:00                                                                                   ` Gleb Natapov
2012-03-27 12:20                                                                                     ` Peter Lieven
2012-03-27 12:26                                                                                       ` Gleb Natapov [this message]
2012-03-27 12:28                                                                                         ` Peter Lieven
2012-03-27 12:29                                                                                           ` Gleb Natapov
2012-03-27 12:30                                                                                             ` Peter Lieven
2012-03-27 14:06                                                                                             ` Peter Lieven
2012-03-27 15:44                                                                                               ` Vadim Rozenfeld
2012-03-27 15:58                                                                                                 ` Peter Lieven
2012-03-27 16:12                                                                                                   ` Vadim Rozenfeld
2012-03-27 16:16                                                                                                     ` Peter Lieven
2012-03-27 17:06                                                                                                       ` Vadim Rozenfeld
2012-03-28  8:38                                                                                                         ` Peter Lieven
2012-03-27 10:40                                                                                   ` Vadim Rozenfeld
2012-03-27 10:49                                                                                     ` Peter Lieven
2012-03-27 11:43                                                                                       ` Vadim Rozenfeld
2012-03-27 14:44                                                                                         ` Peter Lieven
2012-03-27 15:37                                                                                           ` Vadim Rozenfeld
2012-03-27 15:39                                                                                             ` Peter Lieven
2012-03-27 15:55                                                                                               ` Vadim Rozenfeld
2012-03-22  8:31                                                         ` David Cure
2012-03-22  8:47                                                           ` Peter Lieven
2012-02-14 13:48                       ` Vadim Rozenfeld
2012-02-16  9:10                         ` David Cure
2012-02-17 15:27                         ` David Cure

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120327122645.GW22368@redhat.com \
    --to=gleb@redhat.com \
    --cc=avi@redhat.com \
    --cc=kvm@cure.nom.fr \
    --cc=kvm@vger.kernel.org \
    --cc=pl@dlh.net \
    --cc=vrozenfe@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).