commit | b0f4019352d230a34672074b63070576666ad22b | [log] [tgz] |
---|---|---|
author | Lalit Maganti <lalitm@google.com> | Mon Apr 01 17:21:54 2019 +0100 |
committer | Lalit Maganti <lalitm@google.com> | Mon Apr 01 17:21:54 2019 +0100 |
tree | b0b8995bccbba45d16b6319d3150dd73b6e725a2 | |
parent | 279ecde8beb8b7e483e481c90aa9003f758a9ab9 [diff] |
perfetto: refactor and massively speed up gen_build This CL does 2 things: 1. Refactors all functions related to touching build, proto_build or looking at desc into their own class to allow us to not have to pass these three variables between functions. This significantly reduces the cruft in gen_build of passing variables between functions repeatedly. 2. Massively speed up the generation script reducing run time from 8.3s to <0.5s by caching the files generated by actions. This info is repeatedly queried by the build script (once for each depedency link) so caching this in a set reduces the run time from O(n*m) to O(1) (n being number of dependencies, m being number of targets). Bug: 127775946 Change-Id: Ifc421b4765c918f69b799cb0cee39a36f1029850
Perfetto is an open-source project for performance instrumentation and tracing of Linux/Android/Chrome platforms and user-space apps.
See www.perfetto.dev for docs.