- Diğer Python profilleyicilerinin yapmadığı veya yapamadığı çeşitli işleri gerçekleştiren, Python için yüksek performanslı CPU, GPU ve bellek profilleyicisi
- Çok daha hızlı çalışırken aynı anda çok daha ayrıntılı bilgi sunar; ayrıca yapay zeka tabanlı optimizasyon önerilerini entegre eden ilk profilleyicidir
- CLI ve web tabanlı GUI sunar
- Hızlı ve doğru
- Hızlı: Enstrümantasyona veya Python'un izleme özelliklerine dayanmak yerine örnekleme kullanır. Ek yük genellikle %10~20'yi aşmaz ve çoğu zaman bunun da altındadır
- Doğru: Yapılan doğruluk testleri, Scalene'in en doğru profilleyicilerden biri olduğunu ve geçen süreyi doğru biçimde ölçtüğünü göstermiştir
- Satır düzeyinde ve fonksiyon bazında profilleme yaparak, programda çalışma süresinden sorumlu fonksiyonları ve belirli kod satırlarını gösterir
- CPU profilleme
- Geliştiricilerin gerçekten optimize edebileceği koda odaklanabilmesi için Python kodu ile yerel kodda (kütüphaneler dahil) harcanan zamanı ayrı ayrı ölçer
- CPU zamanı veya bellek tahsisinin önemli bir bölümünü oluşturan hotspot noktalarını kırmızıyla vurgular
- Sistem zamanını ayrıca ayırarak I/O darboğazlarını kolayca bulmayı sağlar
- GPU profilleme
- Yalnızca NVIDIA tabanlı sistemlerde GPU süresini raporlar
- Bellek profilleme
- Bellek kullanımı profillemesi yapar ve özel bir bellek ayırıcısı aracılığıyla bellek artışına neden olan belirli kod satırlarını tespit eder
- Python kodu ile yerel kodun bellek tüketim oranını ayrı ayrı gösterir
- Satır bazında bellek profili oluşturur
- Bellek sızıntısı oluşturma ihtimali olan satırları tespit eder
- Kopyalama hacmi profillemesiyle, Python/kütüphane sınırları arasında geçerken oluşan istenmeyen kopyaları (örneğin
numpy dizisinin yanlışlıkla Python dizisine dönüştürülmesi gibi) kolayca bulabilirsiniz
- Diğer özellikler
--reduced-profile seçeneğiyle CPU'nun %1'inden fazlasını tüketen veya en az 100 kez tahsis yapan satırları raporlayan azaltılmış profil oluşturulabilir
@profile dekoratörünü destekleyerek yalnızca belirli fonksiyonların profillenmesini sağlar
- Arka planda çalışan programların (
& ile çalıştırılan) profillemesini duraklatıp yeniden başlatabilir
2 yorum
Nsight'a kıyasla daha hafif ve kullanışlı görünüyor; kullanıp bir inceleme bırakacağım! Tanıtım için teşekkürler.
Yazarsanız memnun olurum. Bazen böyle haberler paylaşırken kaç kişinin baktığını merak ettiğim oluyor. haha