Tiempo de ejecución de NNAPI

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 Neural Networks (NNAPI) de Android es una API de Android C diseñada con el objetivo de ejecutar operaciones con mucha carga de cálculo para aprendizaje automático en dispositivos móviles y habilita operaciones de inferencia aceleradas por hardware en dispositivos Android. Este módulo se puede actualizar, lo que significa que puede recibir actualizaciones de funcionalidad fuera del ciclo normal de lanzamiento 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 corregir errores en el tiempo de ejecución de la NNAPI, mejorar la interacción del tiempo de ejecución de la NNAPI con los controladores e implementar funciones nuevas que mejoren las capacidades, la estabilidad, el rendimiento y el estado de la NNAPI.

  • Los desarrolladores de apps mejoran la compatibilidad y el rendimiento de las apps con 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 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 de módulos

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 del entorno de ejecución de NNAPI, usa las pruebas del Conjunto de pruebas de compatibilidad (CTS) de Android y del Conjunto de pruebas de proveedores (VTS).