On 21.02.2012 14:56, Vadim Rozenfeld wrote:
----- Original Message -----
From: "Peter Lieven"<pl@xxxxxxx>
To: "Gleb Natapov"<gleb@xxxxxxxxxx>
Cc: qemu-devel@xxxxxxxxxx, kvm@xxxxxxxxxxxxxxx, vrozenfe@xxxxxxxxxx
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
--
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