Guía de inicio rápido del Inspector de GPU para Android

En este tema, se describe cómo realizar la generación de perfiles del sistema y de fotogramas en tu app para Android con el Inspector de GPU de Android (AGI).

Esta guía de inicio rápido está dirigida a los desarrolladores familiarizados con el desarrollo de gráficos en Android.

Requisitos de la computadora

La computadora que ejecuta AGI debe cumplir con estos requisitos:

Cómo descargar e instalar AGI

Descarga e instala AGI para tu sistema operativo.

Requisitos de la app para Android

En esta sección, se describen los requisitos de la app para Android de la que se genera el perfil:

  • Tu app para Android debe ser depurable; el atributo debuggable en el manifiesto de Android de la app debe establecerse en true. Este atributo permite instrumentaciones adecuadas desde el controlador de gráficos. Para las aplicaciones de Vulkan, este atributo permite que AGI agregue su propia capa de Vulkan cuando se inicia la aplicación.

    <application [...] android:debuggable="true">
    

Si tu app usa Vulkan de forma nativa, AGI también requiere lo siguiente:

  • Tu app debe tener habilitadas las capas de validación de Vulkan. Si no están habilitadas, puedes ejecutar los siguientes comandos para forzar la ejecución de tu app con las capas de validación que se incluyen en el APK de AGI (com.google.android.gapid.<abi>):

    app_package=<YOUR APP PACKAGE NAME HERE>
    abi=arm64v8a # Possible values: arm64v8a, armeabi-v7a, x86
    
    adb shell settings put global enable_gpu_debug_layers 1
    adb shell settings put global gpu_debug_app ${app_package}
    adb shell settings put global gpu_debug_layer_app com.google.android.gapid.${abi}
    adb shell settings put global gpu_debug_layers VK_LAYER_KHRONOS_validation
    

    Cuando termines de generar el perfil, puedes inhabilitar estas capas de validación con los siguientes comandos:

    adb shell settings delete global enable_gpu_debug_layers
    adb shell settings delete global gpu_debug_app
    adb shell settings delete global gpu_debug_layers
    adb shell settings delete global gpu_debug_layer_app
    
  • Tu app no debe informar ninguna advertencia ni error cuando se ejecuta con las capas de validación de Vulkan habilitadas. Corrige cualquier error de validación de Vulkan antes de generar el perfil.

  • Si usas controladores de GPU beta, incluye los siguientes metadatos en la <application> etiqueta del manifiesto de Android:

    <meta-data
              android:name="com.android.graphics.developerdriver.enable"
              android:value="true" />
    

Requisitos del dispositivo Android

AGI tiene los siguientes requisitos del dispositivo Android:

  • Un dispositivo Android compatible con Android 11 o versiones posteriores.

  • Un cable USB

  • La depuración de adb debe estar habilitada, y se debe poder acceder al dispositivo a través de adb. Si la opción Install via USB está presente, habilítala.

Validación del dispositivo

AGI requiere un controlador de GPU compatible. Para garantizar que proporcione datos de generación de perfiles válidos, AGI ejecuta una verificación de validación la primera vez que conectas un dispositivo nuevo, lo que tarda unos diez segundos. Después de pasar la verificación, puedes usar el dispositivo para generar perfiles de apps para Android.

No interrumpas el dispositivo mientras la validación esté en curso. Esto puede hacer que el dispositivo falle en la validación. Si un dispositivo falla en la validación, pero está configurado correctamente, puedes volver a intentarlo seleccionando el dispositivo.

La validación es un paso único para un dispositivo, y los resultados se almacenan en caché para el uso futuro de AGI. Sin embargo, AGI volverá a ejecutar la validación si cambia la configuración del dispositivo, por ejemplo, si se actualiza el controlador de GPU o la versión de Android.

Si un dispositivo aparece como un dispositivo compatible, puedes esperar que AGI pase la validación. Si el dispositivo no aparece en la lista, es probable que su controlador de GPU no sea compatible con AGI.

Si tu dispositivo es compatible, pero falla en la validación

Asegúrate de haber cumplido con todos los requisitos de Android y requisitos de la computadora que se describen en las secciones anteriores, y de que el dispositivo esté conectado correctamente a la computadora con un cable USB.

Si se cumplen todos los requisitos, presenta un problema en nuestro repositorio de GitHub en el que se describa el comportamiento.

Si tu dispositivo no es compatible

Estamos trabajando con nuestros socios del OEM para agregar compatibilidad con más dispositivos. Puedes presentar un problema en nuestro repositorio de GitHub para solicitar compatibilidad con un dispositivo.

Cómo capturar datos de generación de perfiles

En las siguientes secciones, se describe cómo capturar datos de generación de perfiles y abrir el archivo de seguimiento resultante para que puedas analizar los resultados.

Cómo configurar los parámetros de configuración de Android

Antes de comenzar a generar perfiles, debes configurar estos parámetros de configuración de la app para Android y del dispositivo, que especifican la app y el dispositivo para generar el perfil.

  1. Con un cable USB, conecta tu dispositivo Android a la computadora.

  2. Inicia AGI en tu computadora.

    La primera vez que inicias AGI, se muestra la pantalla de bienvenida, que te solicita la ruta de acceso al ejecutable de adb. AGI guarda esta configuración en el archivo .agic de tu carpeta HOME. Si ya lo hiciste, puedes omitir este paso.

    Pantalla de bienvenida
    Figura 1: Pantalla de bienvenida
  3. Ingresa la ruta de acceso al ejecutable de adb en el campo Path to adb. Las casillas de verificación que siguen a este campo son opcionales.

  4. Haz clic en Get Started para mostrar la pantalla de inicio.

    Pantalla de inicio de AGI
    Figura 2: Pantalla de inicio principal del Inspector de GPU de Android.
  5. En la pantalla de inicio, haz clic en Capture a new trace. Se muestra el diálogo Capture A New Trace. Como alternativa, puedes hacer clic en el botón Capture System Profile trace.

    Diálogo Capture A New Trace
    Figura 3: Capture A New Trace diálogo.
  6. En la sección Device and Type, selecciona el dispositivo Android del que deseas generar el perfil. Si no aparece en la lista Device, haz clic en la flecha de recarga para actualizar la lista.

  7. En la sección Application, selecciona la app de la que deseas generar el perfil. Si solo hay una actividad en el paquete, puedes seleccionar el paquete en lugar de la actividad.

    AGI incluye una app de ejemplo de Vulkan. Para usar la app de ejemplo en lugar de la tuya, sigue estos pasos:

    1. Haz clic en el botón ... junto al campo Application.

      Se muestra el diálogo Select an Application to Trace, que muestra una lista de apps que se pueden rastrear en el dispositivo seleccionado.

    2. En el cuadro de texto Filter, escribe gapid para mostrar solo las aplicaciones que contienen gapid en su nombre de paquete.

    3. Expande el paquete, selecciona com.google.android.gapid.VkSampleActivity y, luego, haz clic en OK.

      Esto te devuelve al diálogo Capture A New Trace, con el campo Application completado con la app que seleccionaste.

  8. En la sección Application, deja los otros campos vacíos.

  9. Haz clic en Aceptar.

Ahora tienes todo listo para usar AGI para realizar la generación de perfiles del sistema y de fotogramas.

Cómo generar un perfil del sistema

Para generar un perfil del sistema, sigue estos pasos:

  1. En la pantalla de inicio de AGI, haz clic en Capture a new trace para mostrar el diálogo Capture System Profile.

  2. En la lista Type, selecciona System profile.

  3. En la sección Start and Duration, establece Start at en Manual, y Duration en 2.

  4. En la sección Trace Options, haz clic en Configure. Se muestra una lista de opciones de generación de perfiles.

    Cuadro de diálogo Capture Config
    Figura 4: Las opciones de generación de perfiles en el diálogo Capture System Profile.
  5. Selecciona los datos de generación de perfiles que deseas capturar.

  6. En la sección GPU, haz clic en Select.

    Se muestra una lista de contadores para seleccionar.

    Configuración del contador
    Figura 5: Selección de contadores.
  7. Haz clic en default para seleccionar el conjunto de contadores predeterminados y haz clic en OK para volver a las opciones de generación de perfiles.

  8. Haz clic en OK para volver al diálogo principal Capture System Profile.

  9. En la sección Output, selecciona un Output Directory para almacenar los archivos de seguimiento que se generan durante la generación de perfiles. El campo File Name debería completarse automáticamente, pero también puedes editarlo.

  10. Haz clic en Aceptar. Esto inicia la app seleccionada en el dispositivo Android y muestra una ventana emergente con un botón Start.

  11. Haz clic en el botón Start para comenzar a capturar datos de generación de perfiles y espera unos segundos para que finalice el proceso.

  12. Haz clic en Open Trace. La vista inicial que se muestra es similar a systrace.

    Seguimiento del perfil del sistema
    Figura 6: La IU de System Profiler.

    Además de los datos disponibles en systrace, AGI también muestra información sobre el rendimiento de la GPU. Para obtener más información sobre cómo ver los datos de generación de perfiles del sistema, consulta Cómo ver un perfil del sistema de AGI.

Para obtener información sobre la configuración adicional, consulta Opciones de generación de perfiles del sistema.

Cómo generar un perfil de fotogramas

Para generar un perfil de un fotograma individual de tu app, sigue estos pasos:

  1. En la pantalla de inicio de AGI, haz clic en Capture a new trace para mostrar el diálogo Capture A New Trace. Como alternativa, puedes hacer clic en el botón Capture Frame Profile trace.

  2. En la lista Type, selecciona Vulkan o OpenGL on ANGLE según la API de Graphics que use tu app. Asegúrate de elegir la correcta; de lo contrario, AGI no capturará ningún comando de gráficos.

  3. En la sección Start and Duration, establece Start at en Manual. Si hiciste clic en el botón Capture Frame Profile trace, este paso ya se completó.

  4. En la sección Output, selecciona un Output Directory para almacenar los archivos de seguimiento. El campo File Name debería completarse automáticamente, pero también puedes editarlo.

  5. Opcional: Algunas apps generan un proceso diferente que realiza todo el procesamiento de gráficos. Para capturar ese proceso, especifica su nombre.

  6. Haz clic en Aceptar. Esto inicia tu app en el dispositivo Android y muestra una ventana emergente con un botón Start.

  7. Haz clic en el botón Start y espera unos segundos para que se complete la generación de perfiles.

  8. Haz clic en Open Trace para ver los datos de generación de perfiles. Para obtener información sobre cada panel en la IU de Frame Profiler, consulta la descripción general de la generación de perfiles de fotogramas.

Para obtener información sobre la configuración adicional, consulta Opciones de generación de perfiles de fotogramas.