İçeriğe atla

RDTSCP

Mimari referansıFeex

RDTSCP, tanimli siralama ozelliklerine sahip x86 zaman damgasi sayacini (time-stamp counter) ve yardimci bir islemci tanimlaci degerini okur. Tamamen serilestirici (serializing) bir komut veya otomatik bir kiyaslama (benchmark) altyapisi degildir.

Bilmeniz gerekenler

RDTSCP, tanimli siralama ozelliklerine sahip x86 zaman damgasi sayacini (time-stamp counter) ve yardimci bir islemci tanimlaci degerini okur. Tamamen serilestirici (serializing) bir komut veya otomatik bir kiyaslama (benchmark) altyapisi degildir.

Nasıl çalışır

RDTSCP, sayaci EDX:EAX icinde ve IA32_TSC_AUX degerini ECX icinde dondurur. Siralama kurallari bazi onceki islemleri kisitlar, ancak sonraki komutlar okuma tamamlanmadan once baslayabilir ve onceki yazma islemleri (stores) ek gorunurluk hususlarina sahiptir. Dogru fence (cit) siralamasi, olcumun neyi sinirlandirmayi hedefledigine baglidir.

Nerede yararlıdır

Dusuk seviyeli zamanlama kodu, isletim sistemi uygun sekilde yapilandirdiginda bir islemci degisikligini tespit etmeye yardimci olmak icin yardimci degeri kullanabilir. Guclu bir kiyaslama yine de derlemeyi, is yuku isinmasini (warmup), kesintileri, zamanlamayi, sayac kalibrasyonunu ve siralanan islemleri kontrol eder.

Destek ve etkinleştirme durumu nasıl kontrol edilir

CPUID.80000001H:EDX 27. biti RDTSCP'yi numaralandirir. Gercek isletim sisteminde veya hipervizorde sayac politikasini dogrulayin ve gerekli fence komutlariyla belgelenmis bir zamanlama yontemi kullanin. Uygulama gecen zamani (elapsed time) icin isletim sisteminin monotonik saatini tercih edin.

Sorulan soruya göre bir saat seçin: geçen süre, iş parçacığı CPU süresi ve döngüler farklı ölçümlerdir. İşletim sisteminin saat arayüzleri, ham bir komut örneğinin atlayabileceği platform ilkelerini içerir.

Özelliğin sağlamadığı durumlar

RDTSCP destegi, degismez (invariant) veya senkronize TSC davranisi saglamaz. Yardimci degerin yorumlanmasi isletim sistemi tarafindan tanimlanir. Siralamayi anlamadan iki ornegi birbirinden cikarmak, hedeflenenden farkli bir araligi olcebilir.

Uygulamada uyumluluk ve performans

Bir kıyaslama testi ayrıca doğru derleyici sınırlarına, ısınma aşamasına, temsili verilere ve geçiş ile zamanlama süreçlerinin anlaşılmasına ihtiyaç duyar. Kötü sıralanmış bir ölçümü tekrarlamak onu doğru kılmaz. Herhangi bir sonuçla birlikte ortamı ve belirsizliği de bildirin.

Pratik bir doğrulama kontrol listesi

  1. İlgili tam işlemci veya platform modelini ve uygulama, işletim sistemi ve çalışma zamanı sürümlerini kaydedin. Gerçek hatanın veya gereksinimin metnini koruyun.
  2. Bu tam model için üretici referansını kontrol edin, ardından programın çalıştığı ortamda geçerli yeteneği ve etkinleştirilmiş durumu inceleyin.
  3. Seçilen ikili dosyanın veya arka ucun her gereksinimini karşılaştırın. Benzer şekilde adlandırılmış bir özellik, diğer ad veya genel teknoloji etiketi yeterli değildir.
  4. Uygulamanın hedeflenen uygulamayı seçtiğini onaylayın. Gereksinimler karşılanmadığında belgelenmiş tanılamalarını ve desteklenen bir geri dönüşü kullanın.
  5. Her seferinde desteklenen bir değişiklik yapın ve aynı iş yükünü tekrarlayın. Orijinal yapılandırmayı ve kurtarma yolunu kullanılabilir durumda tutun.

Özellik listeleniyor ancak yazılım kullanamıyorsa

Hata veren tam bileşenle başlayın. Bir donanım veritabanı kayıtlı yeteneği açıklar; işletim sistemi veya hipervizör farklı bir geçerli ortam sunabilir. Geçersiz komut hatası, gerçek hatalı komutun ve ikili yapının da incelenmesini gerektirir, çünkü bozulma veya ilgisiz, desteklenmeyen bir komut benzer bir belirti üretebilir.

Tam platform için desteklenen uygulama, sürücü veya çalışma zamanı sürümünü yükleyin ve gerekirse satıcının belgelenmiş temel veya geri dönüş derlemesini kullanın. Bir yazılım güncellemesi, işlemcide eksik olan bir komutu oluşturamaz. Bellenim ve güvenlik politikası değişiklikleri, genel bir optimizasyon tarifi yerine sistem üreticisinin prosedürünü ve bir kurtarma planını izlemelidir.

Bu açıklamanın kaynakları ve kapsamı

Intel 64 ve IA-32 Mimarileri Yazılım Geliştirici Kılavuzu

Bu referanslar mimari davranışı ve yazılım gereksinimlerini belirler. Bağlantılı bir donanım modeli sayfasındaki her özellik değerini bağımsız olarak doğrulamazlar. Model desteği için ilgili sayfanın üretici kanıtlarını kullanın ve geçerli sistem yapılandırmasını kontrol edin. Bu makale bir kıyaslama, sertifikasyon veya bağımsız inceleme tarihi sağlamaz.

Kaynaklar ve doğrulama

Editoryal mülkiyet: Feex. Bağımsız bir inceleme tarihi kaydedilmemiştir. Nasıl araştırıyoruz.

Bu makale yararlı oldu mu?

Evet veya hayır yeterlidir. İsterseniz bir neden seçin veya kısa bir not ekleyin.

Bu makale yararlı oldu mu?