A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
Ferramentas de desempenho do sistema
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Esta página descreve as ferramentas que podem ser usadas para medir as métricas de performance.
Tempo de inicialização
Para criar um perfil do tempo de inicialização, use a
documentação do
Simpleperf.
config.yaml
para incluir os eventos que você quer pesquisar. O config.yaml
vai aparecer assim:
stop_event: <logcat log message which will terminate log collection after reboot>
events:
event1_name: <pattern that matches log message>
event2_
...
Em alguns dispositivos, a inicialização do relógio pode mostrar um horário incorreto nos primeiros segundos. Embora
a ferramenta bootanalyze possa acomodar uma correção de tempo pronta para uso, você pode fornecer um
padrão de correção de tempo opcional em config.yaml
.
Otimização dos tempos de inicialização explica como melhorar o tempo
de inicialização usando componentes como o carregador de inicialização, o kernel do dispositivo, a otimização de E/S, a animação de inicialização e a
política do SELinux.
Tempo de inicialização do app
Os usuários esperam que os apps sejam rápidos para carregar e responsivos.
Tempo de inicialização do app
descreve os detalhes internos do processo de inicialização e discute como criar um perfil e otimizar o desempenho
de inicialização.
Interface do usuário
O teste de desempenho da interface do usuário (IU) garante que o app atenda aos requisitos funcionais e
que as interações do usuário com o app sejam suaves, executadas de forma consistente a 60 quadros por segundo (consulte
Padrões de desempenho do
Android: por que 60 QPS?), e tudo sem perder ou atrasar frames.
Para mais informações, consulte Testar
o desempenho da interface e
JankTest.
Memória
É possível inspecionar o uso de memória do app de duas maneiras:
- Ao longo do tempo, usando
procstats
.
- Snapshot no tempo, usando
meminfo
.
Para obter informações, consulte:
Unidade de processamento central
É possível usar as ferramentas a seguir para consultar a CPU.
- Para criar o perfil de apps Android e processos nativos em execução nesse SO, use a
documentação do
Simpleperf.
uma ferramenta nativa de criação de perfil de unidade central de processamento (CPU) para Android. O Simpleperf pode criar perfis de código Java e
C++ no Android. O executável do Simpleperf pode ser executado em versões do Android mais recentes que a L, e os scripts
Python podem ser usados em versões do Android mais recentes que a N.
Documentação do
Simpleperf.
Para mais detalhes, consulte a
documentação do
Simpleperf.
- Para inspecionar o uso da CPU e a atividade da linha de execução do app em tempo real durante a interação com o
app, use o CPU Profiler.
Isso oferece muitas vantagens, como uma experiência do usuário mais rápida e uniforme e a preservação
da duração da bateria do dispositivo. Além disso, é possível inspecionar os detalhes de rastreamentos de método, função e
sistema gravados.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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."]]