Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 542de11c authored by Alec Mouri's avatar Alec Mouri
Browse files

[TimeStats] reduce aggregated stats size for shared timeline-based stats

Shared timeline tracks transaction-level jank, where a transaction is
not necessarily associated with a buffer. But, in general transactions
have debugging names that are not intended to be aggregated if there was
no buffer. E.g., they include things like hash codes, and systemui
generates a lot of different layer names (e.g., there is a separate
animation leash used per app on app launch).

As a workaround, to avoid needing to impose a restriction on all
transaction callers on layer names, we'll do the following:
* Layers that do not have buffers associated with them are collected
into a generic bucket keyed by the app uid, with a layer name == "none".
Because we enforce a minimum layer name, this is suitable as a default
choice for a layer name. This way we can continue to collect
transaction-level jank associated with things like animation leashes.
* Layers that already associated with buffers are collected as normal,
so as to preserve existing data fidelity.

Bug: 173018067
Bug: 171309796
Test: adb shell dumpsys SurfaceFlinger --timestats -enable
Test: adb shell dumpsys SurfaceFlinger --timestats -dump
Change-Id: I8fa57ac99de14f17464d6b5d6bb4d719bd7ad9a3
parent 7c3b12f1
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment