Change FMP swap timestamp to reflect swap time of FMP candidate
The swap-promise used to compute the GPU swap timestamp for FMP was not queued until SetFirstMeaninfulPaint is called, but this method is called with a timestamp that was computed before the network quiet timer fired and FMP was decided. The implications are that (1) when the swap promise is fulfilled, it's because of some other paint, and (2) there might not be any subsequent paints, and so we don't get a swap timestamp for FMP. This CL fixes the problem by having the FMP detector queue the swap-promise in when the FMP candidate is selected, which is on the Paint path. PaintTiming reports the swap time to the FMP detector when the swap-promise is fulfilled. The FMP detector now reports both the swap and non-swap FMP timestamps to PaintTiming when the FMP is finally chosen. Bug: 741961 Change-Id: I0fa9d396f6b46c90acea9f1a46e6d7cbbf5d7ef7 Reviewed-on: https://chromium-review.googlesource.com/570488Reviewed-by:Kentaro Hara <haraken@chromium.org> Reviewed-by:
Kunihiko Sakamoto <ksakamoto@chromium.org> Commit-Queue: Scott Haseley <shaseley@google.com> Cr-Commit-Position: refs/heads/master@{#487172}
Showing
Please register or sign in to comment