NPU Manager Mobly testlerini çalıştırma

CtsNpuManagerMoblyTestCases paketi, Android 17'de (API düzeyi 37) eklenen NpuManager hizmetiyle cihaz uyumluluğunu doğrular. Mobly tabanlı bu testler, NPU iş yükü önceliklendirmesini değerlendirir, ön plandaki uygulama NPU iş yüklerinin arka plandakilerden daha yüksek öncelik almasını sağlar ve NPU erişim kontrolünü doğrular.

Test yapılandırması

Bu test paketi için genel varsayılan parametreler, referans cihazlar için optimize edilmiştir. NPU donanım özellikleri farklı cihazlarda değişiklik gösterebileceğinden, testlerin donanımınızda düzgün şekilde çalışmasını sağlamak için test yapılandırma parametrelerini ayarlayın.

Ayarlama neden gereklidir?

Önceliklendirme testinin temelinde, ön plandaki uygulamanın çıkarımlarını arka plandaki uygulamadan önce tamamlayıp tamamlamadığı değerlendirilerek bir yarış durumu oluşturulur. Testin, üç çalıştırmadan ikisini geçerek kararlılık şartını güvenilir bir şekilde karşılamasını sağlamak için bu parametreleri cihazınızın özel NPU hızlarına uyacak şekilde yapılandırın.test_foreground_app_finishes_first

Yapılandırma dosyası, Android kaynak ağacında packages/modules/NpuManager/tests/cts/mobly_config.yaml konumunda bulunur.

Yapılandırılabilir parametreler

Cihazınız için testleri ayarlarken YAML dosyasında aşağıdaki parametreleri düzenleyin. Tüm sayısal değerler sıfırdan büyük olmalıdır ve özellikle ön plan gecikmesi en az 0.5 seconds (varsayılan değer) olmalıdır.

  • foreground_delay_seconds

    • Açıklama: Ön plan uygulaması çıkarımını tetiklemeden önce arka plan uygulamasına verilen saniye cinsinden başlangıç avantajı. Sıra şöyledir: Arka planda uygulama çıkarım başlatır -> [test foreground_delay_seconds için bekler] -> ön planda uygulama çıkarım başlatır.
    • Varsayılan: 0.5
    • Ayarlama kılavuzu: Daha uzun bir gecikme, arka plan uygulamasına ön plan uygulaması başlamadan önce çıkarımları işlemesi için daha fazla zaman tanır. Ön plandaki uygulama, çıkarımlarını arka plandaki uygulamanın iş yükünün yaklaşık yarısında başlatmalıdır.
  • foreground_test_num_iterations_per_thread

    • Açıklama: Her bir iş parçacığının, hem ön plandaki hem de arka plandaki uygulama için test_foreground_app_finishes_first testi sırasında yürüttüğü ardışık çıkarım döngülerinin sayısı.
    • Varsayılan: 30
  • foreground_test_num_threads

    • Açıklama: Hem ön plandaki hem de arka plandaki uygulama için test_foreground_app_finishes_first testinde çıkarımların eşzamanlı olarak çalıştırılması amacıyla oluşturulan eşzamanlı iş parçacığı sayısı.
    • Varsayılan: 4

Testleri çalıştırma

Cihazınız yapılandırılıp bağlandıktan sonra paketi standart CTS Tradefed komutlarını kullanarak çalıştırın.

CTS Tradefed'i kullanarak modülü çalıştırmak için:

cts-tradefed run cts -m CtsNpuManagerMoblyTestCases