NNAPI Runtime

NNAPI Runtime モジュールは、アプリとバックエンド ドライバの間にある共有ライブラリです。Android Neural Networks API(NNAPI)は、モバイル デバイス上で演算負荷の高い機械学習処理を実行するために設計された Android C API であり、Android デバイスでのハードウェア アクセラレーションによる推論処理を可能にします。このモジュールは更新可能です。つまり、通常の Android リリース サイクル外で機能のアップデートを受信できます。

NNAPI Runtime をモジュール化することの利点は次のとおりです。

  • エンドユーザーにとっての一貫性と互換性が高まります。

  • プラットフォーム デベロッパーは、NNAPI ランタイムのバグにパッチを適用し、ドライバと NNAPI ランタイムの連携を改善し、NNAPI の機能、安定性、パフォーマンス、正常性を改善する新機能を導入できます。

  • アプリ デベロッパーは、更新された CPU カーネルを使用して、アプリの互換性とパフォーマンスを向上させることができます。

モジュールの境界

Android 12 以降では、NNAPI HAL 版は、HIDL ではなく AIDL を使用します。

Android 11 以前では、NNAPI Runtime モジュールの境界は platform/frameworks/ml/nn:libneuralnetworks.so です。

モジュールの形式

NNAPI Runtime モジュール(com.android.neuralnetworks)は APEX 形式であり、Android 11 以降を搭載したデバイスで使用できます。

モジュールの依存関係

この NNAPI Runtime モジュールは、NNAPI HALAHardwareBuffer に依存します。

テスト

NNAPI Runtime モジュールの機能を確認するには、Android 互換性テストスイート(CTS)テストとベンダー テストスイート(VTS)テストを使用します。