A partir del 27 de marzo de 2025, te recomendamos que uses android-latest-release
en lugar de aosp-main
para compilar y contribuir a AOSP. Para obtener más información, consulta Cambios en AOSP.
Herramientas de rendimiento del sistema
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta página, se describen las herramientas que puedes usar para medir las métricas de rendimiento.
Tiempo de inicio
Para generar perfiles de los tiempos de inicio, usa la documentación de
Simpleperf.
config.yaml
para incluir los eventos que deseas buscar. config.yaml
debería aparecer de la siguiente manera:
stop_event: <logcat log message which will terminate log collection after reboot>
events:
event1_name: <pattern that matches log message>
event2_
...
En algunos dispositivos, es posible que el inicio del reloj muestre una hora incorrecta durante los primeros segundos. Si bien la herramienta bootanalyze puede admitir una corrección de hora lista para usar, puedes proporcionar un patrón de corrección de hora opcional en config.yaml
.
En Cómo optimizar los tiempos de inicio, se explica cómo mejorar el tiempo de inicio con componentes como el bootloader, el kernel del dispositivo, la optimización de E/S, la animación de inicio y la política de SELinux.
Tiempo de inicio de la app
Los usuarios esperan que las apps se carguen rápido y sean responsivas.
En Tiempo de inicio de la app, se detallan los aspectos internos del proceso de inicio y se analiza cómo generar perfiles y optimizar el rendimiento del inicio.
Interfaz de usuario
Las pruebas de rendimiento de la interfaz de usuario (IU) garantizan que tu app cumpla con los requisitos funcionales y que las interacciones del usuario con ella sean fluidas y se ejecuten a una velocidad constante de 60 fotogramas por segundo (consulta Android Performance Patterns: Why 60fps?), todo sin perder ni retrasar fotogramas.
Para obtener más información, consulta Cómo probar el rendimiento de la IU y JankTest.
Memoria
Puedes inspeccionar el uso de memoria de la app de dos maneras:
- Con el tiempo, con
procstats
- Toma una instantánea en el tiempo con
meminfo
.
Para obtener detalles, consulta:
Unidad central de procesamiento
Puedes usar las siguientes herramientas para consultar la CPU.
- Para generar perfiles de apps para Android y procesos nativos que se ejecutan en Android, usa la documentación de Simpleperf.
una herramienta de generación de perfiles de unidad central de procesamiento (CPU) nativa para Android. Simpleperf puede generar perfiles del código Java y C++ en Android. El ejecutable de Simpleperf se puede ejecutar en versiones de Android posteriores a L, y las secuencias de comandos de Python se pueden usar en versiones de Android posteriores a N.
Documentación de Simpleperf.
Para obtener más información, consulta la documentación de Simpleperf.
- Para inspeccionar el uso de la CPU y la actividad de subprocesos de tu app en tiempo real mientras interactúas con ella, usa el Generador de perfiles de CPU.
Hacerlo tiene muchas ventajas, como proporcionar una experiencia del usuario más rápida y fluida, y prolongar la duración de batería del dispositivo. Además, puedes inspeccionar los detalles de los seguimientos registrados del método, la función y el sistema.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-07-27 (UTC)"],[],[],null,["# System performance tools\n\nThis page describes the tools you can use to measure performance metrics.\n\nBoot time\n---------\n\nTo profile boot timing, use the\n[Simpleperf](https://android.googlesource.com/platform/system/extras/+/android16-release/simpleperf/doc/README.md)\ndocumentation.\n`config.yaml` file to include events you want to search for. `config.yaml`\nshould appear as follows: \n\n```scdoc\n stop_event: \u003clogcat log message which will terminate log collection after reboot\u003e\n events:\n event1_name: \u003cpattern that matches log message\u003e\n event2_\n ...\n```\n\nOn some devices, booting the clock may display an incorrect time for the first few seconds. While\nthe bootanalyze tool can accommodate a time correction out-of-the-box, you can provide an optional\ntime correction pattern in `config.yaml`.\n[Optimizing boot times](/devices/tech/perf/boot-times) explains how to improve boot\ntime using components such as Bootloader, Device Kernel, I/O tuning, Boot animation, and the\nSELinux policy.\n\nApp start-up time\n-----------------\n\nUsers expect apps to be quick to load and responsive.\n[App Startup Time](https://developer.android.com/topic/performance/vitals/launch-time)\ndetails the internals of the launch process and discusses how to profile and optimize startup\nperformance.\n\nUser interface\n--------------\n\nUser interface (UI) performance testing ensures that your app meets functional requirements and\nthat user interactions with your app are smooth, run at a consistent 60 frames per second (see\n[Android\nPerformance Patterns: Why 60fps?](https://www.youtube.com/watch?v=CaMTIgxCSqU&index=25&list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE)), and all without dropping or delaying frames.\n\nFor more information, see [Test\nUI Performance](https://developer.android.com/training/testing/performance) and\n[JankTest](https://developer.android.com/reference/android/support/test/jank/JankTest).\n\nMemory\n------\n\nYou can inspect app memory usage in one of two ways:\n\n- Over time, using `procstats`.\n- Snapshot in time, using `meminfo`.\n\nFor details, see:\n\n- To measure memory usage, see [View\n Memory Allocations](https://developer.android.com/studio/command-line/dumpsys.html#ViewingAllocations).\n- To use the Android Studio IDE to inspect memory, Android Studio provides a GUI-based memory usage tool. For details, see [View the Java Heap and\n Memory Allocations with Memory Profiler](https://developer.android.com/studio/profile/memory-profiler).\n- To conduct performance instrumentation and tracing on the Linux, Android, and Chrome platform and in user-space apps, use open source [Perfetto](https://perfetto.dev/#/).\n\nCentral processing unit\n-----------------------\n\nYou can use the following tools to query the CPU.\n\n- To profile Android apps *and* native processes running on Android, use [Simpleperf](https://android.googlesource.com/platform/system/extras/+/android16-release/simpleperf/doc/README.md) documentation.\na native central processing unit (CPU) profiling tool for Android. Simpleperf can profile Java and C++ code on Android. The Simpleperf executable can run on Android releases later than L and Python scripts can be used on Android releases later than N. \n\n[Simpleperf](https://android.googlesource.com/platform/system/extras/+/android16-release/simpleperf/doc/README.md) documentation. For details, see the [Simpleperf](https://android.googlesource.com/platform/system/extras/+/android16-release/simpleperf/doc/README.md) documentation.\n- To inspect your app's CPU usage and thread activity in real time while interacting with your app, use the [CPU Profiler](https://developer.android.com/studio/profile/cpu-profiler). Doing so has many advantages, such as providing a faster and smoother user experience and preserving device battery life. In addition, you can inspect the details of recorded method, function, and system traces."]]