El módulo del entorno de ejecución de NNAPI es una biblioteca compartida que se encuentra entre una app y los controladores de backend. La API de Android Neural Networks (NNAPI) es una API de Android C diseñada para ejecutar operaciones con mucha carga de cálculo para el aprendizaje automático en dispositivos móviles y habilita operaciones de inferencia con aceleración de hardware en dispositivos Android. Este módulo se puede actualizar, lo que significa que puede recibir actualizaciones de funciones fuera del ciclo normal de lanzamientos de Android.
Entre los beneficios de modularizar el entorno de ejecución de la NNAPI, se incluyen los siguientes.
Los usuarios finales obtienen coherencia y compatibilidad mejoradas.
Los desarrolladores de plataformas pueden aplicar parches a errores en el entorno de ejecución de NNAPI, mejorar la interacción del entorno de ejecución de NNAPI con los controladores y, además, implementar nuevas funciones que mejoren las capacidades, la estabilidad, el rendimiento y el estado de la NNAPI.
Los desarrolladores de apps obtienen una mejor compatibilidad y rendimiento de las apps con los kernels de CPU actualizados.
Límite del módulo
En el caso de Android 12 y versiones posteriores, la revisión de la HAL de NNAPI usa AIDL en lugar de HIDL.
En el caso de Android 11 y versiones anteriores, el límite del módulo del entorno de ejecución de NNAPI es platform/frameworks/ml/nn:libneuralnetworks.so
.
Formato del módulo
El módulo del entorno de ejecución de NNAPI (com.android.neuralnetworks
) está en formato APEX y está disponible para dispositivos que ejecutan Android 11 o versiones posteriores.
Dependencias del módulo
Este módulo del entorno de ejecución de la NNAPI depende de la HAL de la NNAPI y de AHardwareBuffer.
Prueba
Para verificar la funcionalidad del módulo de tiempo de ejecución de NNAPI, usa las pruebas del Conjunto de pruebas de compatibilidad (CTS) y del Conjunto de pruebas de proveedores (VTS) de Android.