Eliminate temporary surface reference "OWNERSHIP" |
|||
Issue descriptionWe introduced the notion of "OWNERSHIP" for temporary references in order to allow parent FrameSinks to go away and to immediately take associated temporary references with them. However, we also have a timer that expires temporary references after a period of time. The FrameSink invalidating case is quite rare. However, ownership assignment incurs MANY additional IPCs: OnFirstSurfaceActivation from Viz => Viz host, and then AssignTemporaryReference from Viz host => Viz. On Android, this happens ON EVERY SCROLL when surface synchronization (and OOP-D) are enabled. This seems like a silly, and unnecessary overhead that we can avoid.
,
Oct 1
I'm looking at stable UMA numbers between 5% to 7% (depending on the platform) of temporary references are removed due to invalidation soon than they expire. Getting rid of the ownership and ability to invalidate temporary references could result in a memory regression.
,
Oct 1
Why does this happen on every scroll? We don't need surface sync except for top controls (i.e. only when they are visible) and selection handles, right?
,
Oct 5
(fsamuel: if you don't mind, when filing new issues, can you mark them available and not untriaged?)
,
Oct 12
This is fixed. https://chromium-review.googlesource.com/c/chromium/src/+/1259470 Also, sorry Enne about filing untriaged. Will avoid in the future. |
|||
►
Sign in to add a comment |
|||
Comment 1 by fsam...@chromium.org
, Sep 30