kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Lieven <pl@dlh.net>
To: Vadim Rozenfeld <vrozenfe@redhat.com>
Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org,
	Gleb Natapov <gleb@redhat.com>
Subject: Re: win7 bad i/o performance, high insn_emulation and exists
Date: Tue, 21 Feb 2012 15:10:22 +0100	[thread overview]
Message-ID: <4F43A5CE.4080306@dlh.net> (raw)
In-Reply-To: <652e3025-0341-4d2c-b40f-212fd4c63eb7@zmail09.collab.prod.int.phx2.redhat.com>

On 21.02.2012 14:56, Vadim Rozenfeld wrote:
>
> ----- Original Message -----
> From: "Peter Lieven"<pl@dlh.net>
> To: "Gleb Natapov"<gleb@redhat.com>
> Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, vrozenfe@redhat.com
> Sent: Tuesday, February 21, 2012 2:05:25 PM
> Subject: Re: win7 bad i/o performance, high insn_emulation and exists
>
> On 21.02.2012 12:46, Gleb Natapov wrote:
>> On Tue, Feb 21, 2012 at 12:16:16PM +0100, Peter Lieven wrote:
>>> On 21.02.2012 12:00, Gleb Natapov wrote:
>>>> On Tue, Feb 21, 2012 at 11:59:23AM +0100, Peter Lieven wrote:
>>>>> On 21.02.2012 11:56, Gleb Natapov wrote:
>>>>>> On Tue, Feb 21, 2012 at 11:50:47AM +0100, Peter Lieven wrote:
>>>>>>>> I hope it will make Windows use TSC instead, but you can't be sure
>>>>>>>> about anything with Windows :(
>>>>>>> Whatever it does now it eates more CPU has almost equal
>>>>>>> number of exits and throughput is about the same (15MB/s).
>>>>>>> If pmtimer is at 0xb008 it still reads it like hell.
>>>>>>>
>>>>>>> I checked with bcedit /v that useplatformclock is set to "No".
>>>>>> Yeah, today I noticed that it is likely virtio drivers that hammer
>>>>>> on PM timer (at least rip of the instruction that access it is
>>>>>> very close to rip of the instruction that access virtio pio).
>>>>>> Vadim, Windows driver developer,  is CCed.
>>>>> Ok, I will switch to IDE and e1000 to confirm this? Or does it not
>>>>> make sense?
>>>>>
>>>> It make perfect sense! Please try it.
>>> ~10MB/s. still a lot of 0xb008 reads.
>>>
> [VR]
> Could it be that you have Driver Verifier running in you system?
>
unfortunately not.

i found the following in an old knowledge base article 
(http://support.microsoft.com/kb/938448):

"Only Windows Server 2003 with Service Pack 2 uniprocessor ACPI HALs use 
*PMTIMER* for QPC by default. Multiprocessor ACPI HALs will use 
*PMTIMER* only if *USE_PLATFORM_CLOCK *flag is set by the BIOS or if the 
*/usepmtimer *boot.ini option is used. Other HAL types don’t support 
*PMTIMER* and will use *TSC* by default for QPC

By default, Windows Server 2003 Service Pack 2 (SP2) uses the PM timer 
for all Advanced Configuration and Power Interface (ACPI) HALs unless 
one of the following conditions aretrue:

    * The check process to determine whether the BIOS supports the APIC
      or ACPI HALs fails.
    * *


      Note:* If the BIOS does not support the ACPI HAL, contact the
      original equipment manufacturer to determine whether a BIOS update
      is available that will resolve the problem. If a BIOS update is
      not available, you must use the PM timer by using the
      */usepmtimer* switch.

If you are not running Windows Server 2003 SP2, you must force the AMD 
computer to use the PM timer by using the */usepmtimer* switch.

*Note* The decision to use the PM timer or the TSC timer is made during 
a check that is performed at startup to query the BIOS and to determine 
whether the BIOS will support the PM timer functions. This check is not 
completely accurate on AMD chipsets. Therefore, you must use the 
*/usepmtimer* switch.

In Windows Server 2003 SP2, this section of code was rewritten. 
Therefore, the correct performance monitor data appears on AMD chipsets 
that have Windows Server 2003 SP2 installed, and you do not have to use 
the */usepmtimer* switch.

For more information about ACPI and APCI hardware support, click the 
following article number to view the article in the Microsoft Knowledge 
Base:
309283 <http://support.microsoft.com/kb/309283>  HAL options after 
Windows XP or Windows Server 2003 Setup
The third-party products that this article discusses are manufactured by 
companies that are independent of Microsoft. Microsoft makes no 
warranty, implied or otherwise, about the performance or reliability of 
these products."

-

so it seems windows prefers pmtimer over tsc. has anyone an idea/hack to 
make the acpi_pm timer fail without disabling acpi completely?

thanks,
peter

  reply	other threads:[~2012-02-21 14:10 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-20 18:17 win7 bad i/o performance, high insn_emulation and exists Peter Lieven
2012-02-20 18:40 ` Gleb Natapov
2012-02-20 19:04   ` Gleb Natapov
2012-02-20 19:24     ` Peter Lieven
2012-02-20 19:59     ` Peter Lieven
2012-02-20 20:45       ` Gleb Natapov
2012-02-21 10:50         ` Peter Lieven
2012-02-21 10:56           ` Gleb Natapov
2012-02-21 10:59             ` Peter Lieven
2012-02-21 11:00               ` Gleb Natapov
2012-02-21 11:16                 ` Peter Lieven
2012-02-21 11:46                   ` Gleb Natapov
2012-02-21 12:05                     ` Peter Lieven
2012-02-21 13:56                       ` Vadim Rozenfeld
2012-02-21 14:10                         ` Peter Lieven [this message]
2012-02-21 16:48                           ` Vadim Rozenfeld
2012-02-21 18:21                             ` Peter Lieven
2012-02-20 19:15   ` Peter Lieven
2012-02-20 20:42     ` Gleb Natapov

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=4F43A5CE.4080306@dlh.net \
    --to=pl@dlh.net \
    --cc=gleb@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --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).