Open Bug 1321859 Opened 8 years ago Updated 2 years ago

Mark dropped frames for FPS analysis

Categories

(Core :: Gecko Profiler, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: Harald, Unassigned)

References

Details

Dropped frames are a key measure for performance. The browser does not draw static pages at 60 FPS most of the time and is smart about avoiding steps in the painting pipeline.

IRC log from mstange that highlights the issue:

> there are so many shortcuts in the painting pipeline
> but yes, "what is a dropped frame" is a very good question
> basically you need a list of "source events" that required composites, then you need to assign those to vsync slices, and then if one composite contains the results from source events that were assigned to N different vsync slices, you dropped N-1 frames
> but you can't know whether a "source event" required a composite until you actually do that composite
> and even then, a refresh driver tick might have processed multiple "source events" of which only the last one required a composite, but the other ones will then also be counted as having required a composite, so those will drive your N up

We would mark dropped frames and maybe add more information about the state of the pipeline and if any steps in the frame were avoided.
So from what I'm understanding, when you drop a frame you would then emit a profiler marker with the details on why it was dropped. We could then use that information plus other markers to smartly display information in a graph on perf.html.
Priority: -- → P1
Moving to p3 because no activity for at least 24 weeks.
Priority: P1 → P3
Severity: normal → N/A
Type: defect → enhancement
You need to log in before you can comment on or make changes to this bug.