QueryPerformanceCounter işlevini kullanan programlar düşük performans gösterebilir

Bu makale, BIOS'ta AMD Cool'n'Quiet teknolojisinin etkinleştirildiği 32 bit bilgisayarlarda ve x64 tabanlı bilgisayarlarda oluşan bir sorunun çözümünü sağlar.

Şunlar için geçerlidir: Windows Server 2012 R2, Windows 10 - tüm sürümler
Özgün KB numarası: 895980

Belirtiler

Aşağıdaki işletim sistemlerinde:

  • Windows Server 2000
  • Windows XP
  • Windows Server 2003
  • Windows Server 2000 konuk işletim sistemi.
  • Windows XP konuk işletim sistemi
  • Windows Server 2003 konuk işletim sistemi.

Sistem saatini sorgulamak QueryPerformanceCounter için işlevini kullanan bir program düşük performans gösterebilir.

Örneğin:

Uzak bir bilgisayara İnternet Denetim İletisi Protokolü (ICMP) paketleri göndermek için ping komutunu kullandığınızda, yanıt negatif yanıt süreleri gösterebilir. Örneğin, aşağıdaki ping komutu aşağıdaki yanıtları oluşturabilir:

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

Çıkış:

32 bayt veri ile x.x.x.x ping işlemi:

x.x.x.x yanıt: bytes=32 time=-59ms TTL=128
x.x.x.x yanıt: bytes=32 time=-59ms TTL=128
x.x.x.x yanıt: bytes=32 time=-59ms TTL=128
x.x.x.x yanıt: bytes=32 time=-59ms TTL=128

Ayrıca, Mantıksal Disk için performans sayaçları kullanıyorsanız veya Fiziksel Disk yanlış bir şekilde yüksek gecikme süresi değeri gösterebilir.

Not

Bu sorun, Windows'un x86 tabanlı sürümünü veya x64 tabanlı bir Windows sürümünü çalıştıran bir bilgisayarda oluşur.

Neden

Bu sorun, bilgisayarda BIOS'ta veya bazı Intel çok çekirdekli işlemcilerde AMD Cool'n'Quiet teknolojisi (AMD çift çekirdek) etkinleştirildiğinde oluşur. Çok çekirdekli veya çok işlemcili sistemler, farklı çekirdekler arasındaki süre eşitlenmediğinde Zaman Damgası Sayacı (TSC) kaymasıyla karşılaşabilir. TSC'yi bir zaman tutma kaynağı olarak kullanan işletim sistemleri sorunla karşılaşabilir.

Çözüm

Bu sorunu çözmek için donanım satıcısına danışın ve sorunu çözmek için yeni bir sürücü/üretici yazılımı güncelleştirmesi olup olmadığını denetleyin.

Not

Sürücü yüklemesi Boot.ini dosyasına /usepmtimer anahtarını ekleyebilir. Bu anahtar , "Geçici Çözüm" bölümünde ele alın almaktadır.

Geçici Çözüm

Bu sorunu geçici olarak çözmek için bilgisayardaki BIOS'ları güncelleştirin. Veya Boot.ini dosyasını /usepmtimer anahtarını kullanacak şekilde değiştirin. Bunu yapmak için şu adımları uygulayın:

  1. Yönetici kimlik bilgilerine sahip bir hesap kullanarak bilgisayarda oturum açın.

  2. Başlat'a tıklayın, Çalıştır'a tıklayın, yazın notepad c:\boot.inive ardından Tamam'a tıklayın.

  3. Boot.ini dosyasında, "[boot loader]" bölümünde "default" ile başlayan bir satır bulunur. Bu satır, varsayılan işletim sisteminin konumunu belirtir. Satır aşağıdaki gibi görünebilir:

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

    "[operating systems]" bölümünde, işletim sisteminin "varsayılan" satırına karşılık gelen satırını bulun. Örneğin, bilgisayar Microsoft Windows Server 2003, Enterprise x64 Edition çalıştırıyorsa, satır aşağıdakine benzer olmalıdır:

    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003 Enterprise x64 Edition" /fastdetect /NoExecute=OptIn
    
  4. Satırın sonuna bir boşluk ekleyin ve /usepmtimer yazın. Çizgi artık aşağıdakine benzer olmalıdır.

    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003 Enterprise x64 Edition" /fastdetect /NoExecute=OptIn /usepmtimer
    
  5. Dosyayı kaydedin ve Not Defteri'ni kapatın.

  6. Bilgisayarınızı yeniden başlatın.

Aşağıda, /usepmtimer anahtarını içeren bir sistem için örnek bir Boot.ini dosyası verilmiştir.

[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

Not

Boot.ini dosyası, sistem sürücüsünün kök klasöründe bulunur.
/UsePmTimer ayarının kullanılması performansta düşüşe neden olabilir.

Microsoft Windows'un x64 tabanlı sürümleri için teknik destek

Donanımınız zaten yüklü bir Windows x64 sürümüyle geldiyse, donanım üreticiniz Windows x64 sürümü için teknik destek ve yardım sağlar. Bu durumda, donanımınızla birlikte bir Windows x64 sürümü geldiği için donanım üreticiniz destek sağlar. Donanım üreticiniz, benzersiz bileşenler kullanarak Windows x64 sürümü yüklemesini özelleştirmiş olabilir. Benzersiz bileşenler, donanımın performansını en üst düzeye çıkarmak için belirli aygıt sürücülerini veya isteğe bağlı ayarları içerebilir. Windows x64 sürümüyle ilgili teknik yardıma ihtiyacınız olursa Microsoft uygun bir miktarda yardım sağlayacaktır. Ancak, doğrudan ürün üreticinizle iletişime geçmeniz gerekebilir. Üreticiniz, üreticinizin donanıma yüklediği yazılımı desteklemek için en nitelikli mecradır. Microsoft Windows Server 2003 x64 sürümü gibi bir Windows x64 sürümünü ayrıca satın aldıysanız teknik destek için Microsoft ile iletişime geçin.

Üçüncü taraf bilgileri hakkında yasal uyarı

Bu makalede adı geçen üçüncü taraf ürünleri Microsoft'tan bağımsız şirketler tarafından üretilmektedir. Microsoft, bu ürünlerin performansı veya güvenilirliği ile ilgili örtük veya başka türlü hiçbir garanti vermez.