stable: cherry-pick for v55.3 (#5964) - Cherry pick change log update - Cherry pick proto descriptor relaxation - Cherry pick gitignore - Cherry pick all changes in ui/src/plugins/dev.perfetto.HeapProfile and ui/src/plugins/com.android.HeapDumpExplorer since the last commit in stable (#5641) c14f6359e9 ui: Add initial page plumbing (#5869) 5dba463ad4 ui: Add bitmap metadata to the HeapDumpExplorer page (#5861) b91e5ce379 ui: Control HeapDumpExplorer auto-opening via feature flag (#5845) 212831ccaf ui: Keep timeline default for native profiles and perf samples (#5843) 80b19a4841 ui: Stop auto-selecting heap-graph dumps on the timeline (#5836) 53c4d475f4 ui: Rename HeapDumpExplorer CSS classes from ah- to pf-hde- (#5830) d5be6be6a8 ui: Prefix HeapDumpExplorer setting ID with com.android (#5787) b63d370819 ui: Default to Heapdump Explorer for traces with heap-graph data (#5761) e2b8a81392 ui: Show tooltips on the HeapDumpExplorer columns (#5757) facb3b4026 ui: Embed flamegraph viewer in Heap Dump Explorer (#5731) d4061d1507 ui: Extract FlamegraphPanel widget from QueryFlamegraph (#5730) 4725cd793b ui: Encapsulate plugin state in HeapDumpExplorerSession (#5679) fde1f8d625 ui: add matching-slice action to selection flamegraph (#5667) - To get this to work also cherry-pick be16f77f16 (#5659) - It is a hard dependency of fde1f8d625 . The "Find matching slices" action needs openDistributionTab and sliceDistributionCellRenderers which are defined here.
Perfetto is an open-source suite of SDKs, daemons and tools which use tracing to help developers understand the behaviour of complex systems and root-cause functional and performance issues on client and embedded systems.
It is a production-grade tool that is the default tracing system for the Android operating system and the Chromium browser.
Perfetto is not a single tool, but a collection of components that work together:
Perfetto was designed to be a versatile and powerful tracing system for a wide range of use cases.
ftrace, allowing you to visualize scheduling, syscalls, interrupts, and custom kernel tracepoints on a timeline.chrome://tracing. Use it to debug and root-cause issues in the browser, V8, and Blink.We‘ve designed our documentation to guide you to the right information as quickly as possible, whether you’re a newcomer to performance analysis or an experienced developer.
New to tracing? If you're unfamiliar with concepts like tracing and profiling, start here:
Ready to dive in? Our “Getting Started” guide is the main entry point for all users. It will help you find the right tutorials and documentation for your specific needs:
Want the full overview? For a comprehensive look at what Perfetto is, why it's useful, and who uses it, see our main documentation page:
For users interested in the Debian distribution of Perfetto, the official source of truth and packaging efforts are maintained at Debian Perfetto Salsa Repository
Have questions? Need help?
We follow Google's Open Source Community Guidelines.