SORU
4 Ocak 2009, Pazar


Kronometre kıyaslama kabul edilebilir mi?

Kimse kıyaslama kronometre kullanın, ya da bir performans aracı her zaman kullanılmalıdır? Herhangi bir iyi ücretsiz araçlar Java için vardır? Araçlar kullanıyorsunuz?

Benim endişeleri açıklığa kavuşturmak için, kronometre kıyaslama işletim sistemi zamanlama nedeniyle hata tabidir. Programınızın belirli bir işletim sistemi başka bir işlem (veya birkaç) zamanlamanız çok işlevi ortasında zamanlama olabilir. Java JVM şeyler eğer zamanlayıcı karışımı içine biraz daha küçük bir rastgelelik atar gibi dişli bir uygulama zamanı için çalışıyor, eğer birazcık bile daha kötü.

Nasıl kıyaslama işletim sistemi zamanlama Adres musunuz?

CEVAP
4 Ocak 2009, Pazar


Kronometre kıyaslama güzel, anlamlı olması için yeterli yineleme ölçmek şartıyla. Tipik olarak, tek haneli saniye sayısı toplam geçen bir zaman dilimidir. Aksi takdirde, sonuçlar, kolayca önemli ölçüde zamanlama tarafından çarpıtılmış, ve diğer O/süreci kesintiye.

Bunun için statik yöntemleri küçük bir set kullanıyorum System.currentTimeMillis() dayanan uzun bir zaman önce inşa ettim.

Profil oluşturma çalışmaları için birkaç yıl için jProfiler kullandım ve çok iyi bulduk. Son zamanlarda Web sitesinden harika görünüyor YourKit, baktım, ama her işi bizzat kullandım.

Zamanlama kesintileri, bu soruyu cevaplamak için, kıvam elde edilinceye kadar tekrarlanan koşusu/gözlenen deneme fırsatı işlem zamanlama gelen anormal sonuçları ayıklamak için çalışır. Ben de iş parçacığı planlama 5 ila 30 saniye ishal için pratik bir etkiye sahip olduğunu bulmak. Son olarak, sonra bana birkaç saniye zamanlama eşik var, benim deneyim, ihmal edilebilir etkisi sonucu bulduğum bir 5 saniye çalıştırın sürekli ortalamalar aynı olarak 5 dakika çalıştırmak için zaman/yineleme.

Ayrıca "TAM zamanında, kaç kez test kodu gerçek hayatta. zamanla beklenenden göre ısıtmak için yaklaşık 10.000 kez test kodu prerunning düşünebilirsiniz

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • huyked

    huyked

    28 Mart 2008
  • Tinkernut

    Tinkernut

    28 Aralık 2006
  • YouChewBu

    YouChewBu

    26 Ocak 2009