profiler-start
Komut için seçenekler vardır cpu
, mem
ve cpu+mem
. Bir komutu geçen süreye göre profil oluşturmanın bir yolu var mı?
profiler-start
Komut için seçenekler vardır cpu
, mem
ve cpu+mem
. Bir komutu geçen süreye göre profil oluşturmanın bir yolu var mı?
Yanıtlar:
Bunu profiler.el kullanarak bir örnekleme profilleyici olarak yapabileceğinizden emin değilim . Aslında bir işlevin ne kadar süre çalıştığını ölçmez, şu anda hangi işlevin yürütülmekte olduğunu görmek ve tüm bu örnekleri toplamak için periyodik olarak kontrol eder.
ELP veya EmacsLispProfiler bir alet derleyicisidir. Enstrümantasyonu etkinleştirmek için bir veya daha fazla fonksiyonda M-x elp-enstrüman işlevini kullanın. Enstrümantasyon fonksiyonlarını çağıran kodu çalıştırdıktan sonra M-x elp sonuçlarını çalıştırın . Bu, her enstrümanlı fonksiyon için toplam çağrı sayısını ve geçen süreyi gösteren bir tampon görüntüler. Daha fazla bilgi için M-x find-libary elp'e göz atın .
Hangi işlevi profillemek istediğinizi tam olarak biliyorsanız, karşılaştırma kitaplığı da yararlı olabilir.
benchmark
Bir komutun ne kadar süreceğini belirlemek için kullanabilirsiniz
.
(benchmark 100 (command))
100 tekrar sayısıdır, sonuçların anlamlı olması için yeterince büyük yapın. Ve bunu interaktif olarak da adlandırabileceğinizi unutmayın.
(kıyaslama REPETITIONS FORM)
FORM'un REPETITIONS uygulaması için geçen süreyi yazdırın.
Etkileşimli olarak, REPETITIONS ön ek argümanından alınır.
Sadece tek bir komut için değil, herhangi bir keyfi form için de kullanabilirsiniz.
(benchmark 100 (form to (be evaluated))