CPU Profiler ile CPU etkinliğini inceleme

Uygulamanızın CPU kullanımını optimize etmenin daha hızlı ve daha sorunsuz bir kullanıcı deneyimi sunma ve cihazın pil ömrünü koruma gibi birçok avantajı vardır.

Uygulamanızla etkileşimde bulunurken uygulamanızın CPU kullanımını ve iş parçacığı etkinliğini gerçek zamanlı olarak incelemek için CPU Profiler'ı kullanabilir veya kayıtlı yöntem izlerinde, işlev izlerinde ve sistem izlerinde ayrıntıları inceleyebilirsiniz.

CPU Profil Aracı'nın kaydettiği ve gösterdiği ayrıntılı bilgiler, seçtiğiniz kayıt yapılandırmasına göre belirlenir:

  • Sistem İzleme: Uygulamanızın sistem kaynaklarıyla nasıl etkileşimde bulunduğunu incelemenize olanak tanıyan ayrıntılı ayrıntıları yakalar.
  • Yöntem ve işlev izleri: Uygulama sürecinizdeki her bir iş parçacığı için belirli bir süre içinde hangi yöntemlerin (Java) veya işlevlerin (C/C++) yürütüldüğünü ve her yöntemin veya işlevin yürütülmesi sırasında tükettiği CPU kaynaklarını öğrenebilirsiniz. Arayanları ve arayanları tanımlamak için yöntem ve işlev izlerini de kullanabilirsiniz. Çağrı, başka bir yöntemi veya işlevi çağıran bir yöntem ya da işlevdir. çağrılan ise başka bir yöntem veya işlev tarafından çağrılan yöntem veya işlevdir. Bu bilgileri, yoğun kaynak kullanan belirli görevlerin çok sık çağrılmasından hangi yöntem veya işlevlerin sorumlu olduğunu belirlemek ve gereksiz işlerden kaçınmak için uygulamanızın kodunu optimize etmek için kullanabilirsiniz.

    Yöntem izlerini kaydederken örneklenmiş veya araçlı kaydı seçebilirsiniz. İşlev izlerini kaydederken, yalnızca örneklenmiş kaydı kullanabilirsiniz.

Bu izleme seçeneklerinin her birini kullanma ve belirlemeyle ilgili ayrıntılar için Kayıt yapılandırması seçme bölümüne göz atın.

CPU Profiler'a genel bakış

CPU Profiler'ı açmak için şu adımları uygulayın:

  1. Görünüm > Araç Pencereleri > Profil Aracı'nı seçin veya araç çubuğunda Profil simgesini tıklayın.

    Dağıtım Hedefi Seçin iletişim kutusu açılırsa uygulamanızı profil oluşturma için dağıtacağınız cihazı seçin. Bir cihazı USB ile bağladıysanız ancak listede görmüyorsanız USB hata ayıklamasını etkinleştirdiğinizden emin olun.

  2. CPU Profil Aracı'nı açmak için CPU zaman çizelgesinde herhangi bir yeri tıklayın.

CPU Profiler'ı açtığınızda, uygulamanızın CPU kullanımı ve iş parçacığı etkinliği hemen görüntülenmeye başlar. Şekil 1'e benzer bir şey görürsünüz.

Şekil 1. CPU Profil Aracı'ndaki zaman çizelgeleri.

Şekil 1'de belirtildiği gibi, CPU Profil Aracı için varsayılan görünüm aşağıdaki zaman çizelgelerini içerir:

  1. Etkinlik zaman çizelgesi: Yaşam döngüsü içinde farklı durumlardan geçerken uygulamanızdaki etkinlikleri gösterir. Ayrıca kullanıcıların cihazla etkileşimini (ekran döndürme etkinlikleri dahil) belirtir. Android 7.1 (API düzeyi 25) ve önceki sürümleri çalıştıran cihazlarda etkinlik zaman çizelgesini etkinleştirme hakkında bilgi edinmek için Gelişmiş profil oluşturmayı etkinleştirme bölümüne bakın.
  2. CPU zaman çizelgesi: Uygulamanızın gerçek zamanlı CPU kullanımını (toplam mevcut CPU süresinin bir yüzdesi olarak) ve uygulamanızın kullandığı toplam iş parçacığı sayısını gösterir. Zaman çizelgesi, diğer işlemlerin (sistem işlemleri veya diğer uygulamalar gibi) CPU kullanımını da gösterir. Böylece, bunu uygulamanızın kullanımıyla karşılaştırabilirsiniz. Farenizi zaman çizelgesinin yatay ekseni boyunca hareket ettirerek geçmiş CPU kullanım verilerini inceleyebilirsiniz.
  3. İleti dizisi etkinliği zaman çizelgesi: Uygulama işleminize ait her bir iş parçacığını listeler ve aşağıda listelenen renkleri kullanarak bir zaman çizelgesi boyunca etkinliğini belirtir. Bir iz kaydettikten sonra, bu zaman çizelgesinden bir iş parçacığı seçerek iz bölmesinde verilerini inceleyebilirsiniz.
    • Yeşil: İş parçacığı etkin veya CPU'yu kullanmaya hazır. Yani çalışıyor veya çalıştırılabilir durumdadır.
    • Sarı: İş parçacığı etkin ancak çalışmasını tamamlamadan önce bir G/Ç işlemi (örneğin, disk veya ağ G/Ç) bekliyor.
    • Gri: İş parçacığı uyku modundadır ve CPU zamanı kullanmıyordur. Bu durum bazen, iş parçacığı henüz kullanılabilir olmayan bir kaynağa erişim gerektirdiğinde ortaya çıkar. İş parçacığı isteğe bağlı uykuya geçer veya çekirdek, gerekli kaynak kullanılabilir hale gelene kadar iş parçacığını uyku moduna geçirir.

    CPU Profiler, Android Studio ve Android platformunun uygulama işleminize eklediği JDWP, Profile Saver, Studio:VMStats, Studio:Perfa ve Studio:Heartbeat gibi iş parçacıklarının CPU kullanımını da raporlar (ancak iş parçacığı etkinliği zaman çizelgesinde gösterilen tam adlar farklı olabilir). Android Studio bu verileri, iş parçacığı etkinliğinin ve CPU kullanımının gerçekte uygulamanızın kodundan ne zaman kaynaklandığını belirleyebilmeniz için bildirir.