NPU Manager Mobly テストを実行する

CtsNpuManagerMoblyTestCases スイートは、Android 17(API レベル 37)で追加された NpuManager サービスとのデバイスの互換性を検証します。これらの Mobly ベースのテストでは、NPU ワークロードの優先順位付けを評価し、フォアグラウンド アプリの NPU ワークロードがバックグラウンド アプリの NPU ワークロードよりも高い優先度を受け取るようにし、NPU アクセス制御を検証します。

テスト構成

このテストスイートのグローバル デフォルト パラメータは、リファレンス デバイス用に最適化されています。NPU ハードウェアの機能はデバイスによって異なる可能性があるため、テスト構成パラメータを調整して、ハードウェアでテストが適切に実行されるようにしてください。

チューニングが必要な理由

優先順位付けテスト test_foreground_app_finishes_first のコアは、フォアグラウンド アプリがバックグラウンド アプリよりも先に推論を完了するかどうかを評価することで、競合状態に依存しています。テストが 3 回の実行のうち 2 回合格するという安定性の要件を確実に満たすようにするには、デバイスの特定の NPU 速度に合わせてこれらのパラメータを構成します。

構成ファイルは、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