Programme, die die QueryPerformanceCounter-Funktion verwenden, können eine schlechte Leistung aufweisen.

Dieser Artikel bietet eine Lösung für ein Problem, das auf 32-Bit-Computern und x64-basierten Computern auftritt, auf denen die AMD Cool'n'Quiet-Technologie im BIOS aktiviert ist.

Gilt für: Windows Server 2012 R2, Windows 10 – alle Editionen
Ursprüngliche KB-Nummer: 895980

Symptome

In den folgenden Betriebssystemen:

  • Windows Server 2000
  • Windows XP
  • Windows Server 2003
  • Windows Server 2000-Gast-O.S.
  • Windows XP-Gast-O.S.
  • Windows Server 2003-Gast-O.S.

Ein Programm, das die -Funktion zum Abfragen der QueryPerformanceCounter Systemzeit verwendet, kann eine schlechte Leistung erbringen.

Zum Beispiel:

Wenn Sie den Ping-Befehl verwenden, um ICMP-Pakete (Internet Control Message Protocol) an einen Remotecomputer zu senden, werden in der Antwort möglicherweise negative Antwortzeiten angezeigt. Der folgende Pingbefehl kann beispielsweise die folgenden Antworten generieren:

C:\>ping x.x.x.x

Ausgabe:

Pingen von x.x.x.x mit 32 Bytes an Daten:

Antwort von x.x.x.x: bytes=32 time=-59ms TTL=128
Antwort von x.x.x.x: bytes=32 time=-59ms TTL=128
Antwort von x.x.x.x: bytes=32 time=-59ms TTL=128
Antwort von x.x.x.x: bytes=32 time=-59ms TTL=128

Wenn Sie Leistungsindikatoren für logische Datenträger oder physische Datenträger verwenden, wird möglicherweise fälschlicherweise ein Hoher Latenzwert angezeigt.

Hinweis

Dieses Problem tritt auf einem Computer auf, auf dem eine x86-basierte Version von Windows oder eine x64-basierte Version von Windows ausgeführt wird.

Ursache

Dieses Problem tritt auf, wenn auf dem Computer die AMD Cool'n'Quiet-Technologie (AMD Dual Cores) im BIOS oder einige Intel Multi-Core-Prozessoren aktiviert ist. Bei Mehrkern- oder Mehrprozessorsystemen kann es zu TSC-Abweichungen (Time Stamp Counter) kommt, wenn die Zeit zwischen verschiedenen Kernen nicht synchronisiert wird. Bei Den Betriebssystemen, die TSC als Zeitnahmeressource verwenden, kann das Problem auftreten.

Lösung

Um dieses Problem zu beheben, wenden Sie sich an den Hardwarehersteller, um festzustellen, ob ein neues Treiber-/Firmwareupdate verfügbar ist, um das Problem zu beheben.

Hinweis

Bei der Treiberinstallation wird möglicherweise der Schalter /usepmtimer in der Boot.ini-Datei hinzugefügt. Dieser Schalter wird im Abschnitt "Problemumgehung" erläutert.

Problemumgehung

Um dieses Problem zu umgehen, aktualisieren Sie das BIOS auf dem Computer. Oder ändern Sie die Boot.ini Datei, um den Schalter /usepmtimer zu verwenden. Gehen Sie dazu wie folgt vor:

  1. Melden Sie sich mit einem Konto mit Administratoranmeldeinformationen am Computer an.

  2. Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie ein notepad c:\boot.ini, und klicken Sie dann auf OK.

  3. In der Boot.ini-Datei befindet sich eine Zeile, die mit "default" beginnt, im Abschnitt "[Bootloader]". Diese Zeile gibt den Speicherort des Standardbetriebssystems an. Die Zeile kann wie folgt aussehen:

    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    

    Suchen Sie im Abschnitt "[Betriebssysteme]" die Zeile für das Betriebssystem, die der Standardzeile entspricht. Wenn auf dem Computer beispielsweise Microsoft Windows Server 2003 Enterprise x64 Edition ausgeführt wird, sollte die Zeile wie folgt aussehen:

    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003 Enterprise x64 Edition" /fastdetect /NoExecute=OptIn
    
  4. Fügen Sie am Ende der Zeile ein Leerzeichen hinzu, und geben Sie dann /usepmtimer ein. Die Zeile sollte nun wie folgt aussehen.

    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003 Enterprise x64 Edition" /fastdetect /NoExecute=OptIn /usepmtimer
    
  5. Speichern Sie die Datei, und beenden Sie dann Editor.

  6. Starten Sie den Computer neu.

Im Folgenden finden Sie ein Beispiel Boot.ini Datei für ein System, das den Schalter /usepmtimer enthält.

[boot loader]  
timeout=0  
default=multi(0)disk(0)rdisk(0)partition(2)\\WINDOWS  
[operating systems]  
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003 Enterprise x64 Edition" /fastdetect /NoExecute=OptIn /usepmtimer

Hinweis

Die Boot.ini Datei befindet sich im Stammordner des Systemlaufwerks.
Die Verwendung der Einstellung /UsePmTimer kann zu einer Leistungsminderung führen.

Technischer Support für x64-basierte Versionen von Microsoft Windows

Wenn Ihre Hardware bereits mit einer Windows x64-Edition geliefert wurde, bietet Ihr Hardwarehersteller technischen Support und Unterstützung für die Windows x64 Edition. Da eine Windows-x64-Edition zusammen mit Ihrer Hardware geliefert wurde, ist der Hersteller der Hardware für den technischen Support zuständig. Möglicherweise hat der Hersteller der Hardware die Windows x64 Edition durch einzelne Komponenten verändert. Dazu gehören beispielsweise bestimmte Gerätetreiber oder optionale Einstellungen zur Leistungsoptimierung der Hardware. Wenn Sie technische Hilfe zu einer Windows x64 Edition benötigen, bietet Microsoft in diesem Fall Unterstützung in angemessenem Rahmen. Sie müssen sich jedoch möglicherweise direkt an den Hersteller wenden. Der Hersteller kann Ihnen den besten Support für die von ihm auf der Hardware installierte Software bieten. Wenn Sie eine Windows x64-Edition (zum Beispiel eine Microsoft Windows Server 2003 x64-Edition) separat erworben haben, wenden Sie sich an Microsoft, um technischen Support zu erhalten.

Informationen zum Haftungsausschluss von Drittanbietern

Die in diesem Artikel genannten Drittanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.