執行 NPU Manager Mobly 測試

CtsNpuManagerMoblyTestCases 套件會驗證裝置是否與 Android 17 (API 級別 37) 新增的 NpuManager 服務相容。這些以 Mobly 為基礎的測試會評估 NPU 工作負載優先順序,確保前景應用程式 NPU 工作負載的優先順序高於背景工作負載,並驗證 NPU 存取控制。

測試設定

這項測試套件的全域預設參數已針對參考裝置進行最佳化。由於不同裝置的 NPU 硬體功能可能有所差異,請調整測試設定參數,確保測試能在硬體上正常執行。

為什麼需要調整

優先順序測試的核心是評估前景應用程式是否在背景應用程式之前完成推論,藉此判斷競爭條件。為確保測試可靠地符合穩定性規定,並在三次執行中通過兩次,請設定這些參數,以符合裝置的特定 NPU 速度。test_foreground_app_finishes_first

設定檔位於 Android 來源樹狀結構的 packages/modules/NpuManager/tests/cts/mobly_config.yaml

可設定的參數

為裝置調整測試時,請在 YAML 檔案中調整下列參數。所有數值都必須大於零,且前景延遲時間必須至少為 0.5 seconds (預設值)。

  • foreground_delay_seconds

    • 說明:前景應用程式觸發推論前,提供給背景應用程式的提前啟動時間 (以秒為單位)。順序如下: 背景應用程式開始推論 -> [測試等待 foreground_delay_seconds] -> 前景應用程式開始推論。
    • 預設值: 0.5
    • 調整指引:延遲時間越長,背景應用程式在前景應用程式啟動前,處理推論的時間就越長。前景應用程式應在大約一半的背景應用程式工作負載完成後,開始推論。
  • foreground_test_num_iterations_per_thread

    • 說明:每個個別執行緒為test_foreground_app_finishes_first測試執行的連續推論迴圈數,適用於前景和背景應用程式。
    • 預設值: 30
  • foreground_test_num_threads

    • 說明:為前景和背景應用程式的測試同時執行推論而產生的並行執行緒數量。test_foreground_app_finishes_first
    • 預設值: 4

執行測試

設定並連線裝置後,請使用標準 CTS Tradefed 指令執行測試套件。

如要使用 CTS Tradefed 執行模組,請按照下列步驟操作:

cts-tradefed run cts -m CtsNpuManagerMoblyTestCases