commit | 8ba183864fee27353bee22f8f0f14e91eee3a1c4 | [log] [tgz] |
---|---|---|
author | Zim <zezeozue@google.com> | Fri Mar 22 11:12:13 2024 +0000 |
committer | Zim <zezeozue@google.com> | Fri Mar 22 15:10:28 2024 +0000 |
tree | ec236e92a8acc047f18a19c71526d7057d62e004 | |
parent | e705975ae3b5f68eaad7868595cd8b4b5104a75e [diff] |
[stdlib]: No-op critical path refactor In preparation for the rewrite with a more robust C++ graph algo, updated the initial tables to support the future rewrite. Notable changes 1. Utilized the newly added waker_id column in thread_states. 2. Removed waker_utid from the output tables (not useful in the future). 3. Removed unnecessary columns from the _wakeup table especially LAGs. 4. Added a _sleeping_span table, the inverse of thread_executing_span. 5. Converted some tables to PERFETTO TABLE and removed an INDEX. Test: tools/diff_test_trace_processor.py out/android/trace_processor_shell --name-filter '.*thread_executing_span.*' Change-Id: I58371ecce433149d9e4c010b35aeb6fdad6f4c8c
Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.