NNAPI 运行时模块是位于应用和后端驱动程序之间的共享库。Android Neural Networks API (NNAPI) 是一个 Android C API,专为在移动设备上运行计算密集型运算从而实现机器学习而设计,并支持在 Android 设备上执行硬件加速的推断运算。该模块可更新,即可在 Android 常规发布周期外的时间接收功能更新。
对 NNAPI 运行时进行模块化处理具有以下优势:
为最终用户提升了一致性和兼容性。
平台开发者可以修补 NNAPI 运行时中的错误,优化 NNAPI 运行时与驱动程序的交互,并部署可优化 NNAPI 的功能、稳定性、性能和运行状况的新功能。
随着 CPU 内核的更新,应用开发者可获得更好的应用兼容性和性能。
模块边界
对于 Android 12 及更高版本,NNAPI HAL 修订版本使用 AIDL 而不是 HIDL。
对于 Android 11 及更低版本,NNAPI 运行时模块边界为 platform/frameworks/ml/nn:libneuralnetworks.so
。
模块格式
NNAPI 运行时模块 (com.android.neuralnetworks
) 采用 APEX 格式,适用于搭载 Android 11 或更高版本的设备。
模块依赖项
NNAPI 运行时模块依赖于 NNAPI HAL 和 AHardwareBuffer。
测试
要验证 NNAPI 运行时模块的功能,请使用 Android 兼容性测试套件 (CTS) 和供应商测试套件 (VTS) 进行测试。