Closed Bug 1700697 Opened 4 years ago Closed 4 years ago

Times in profiler FIrstContentPaint markers do not match fcp times reported to perfherder

Categories

(Core :: Web Painting, defect)

defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: sfink, Unassigned)

References

Details

I have a profiled imgur browsertime job that I was trying to use to figure out why my patch changed timing. But when I look at the FirstContentfulPaint markers' durations, they don't match the numbers in perfherder-data.json. The markers for the 3 warm runs give 182 179 280, but perfherder-data.json contains 165 162 261. (I can't cross-check with perfherder itself, because it doesn't seem to contain the data from profiled runs? But I have verified that the JSON data exactly matches what is displayed in perfherder for non-profiled runs, so I'm pretty sure I'm doing it right.)

I will note that each of those markers is 17ms longer than what is reported to perfherder, and 17ms just happens to be the period between 60fps frames. Could it be waiting to record the marker until the following frame? (Which is perhaps correct, in which case: is the fcp reported to perfherder the right thing?)

I don't think discrepancy is restricted to FirstContentfulPaint, by the way.

ni? jesup as it looks like he implemented fcp.

Flags: needinfo?(rjesup)
Component: Layout → Web Painting

Yeah, they aren't the same thing basically. FirstContentPaint is reported when the actual paint has happened in the compositor, whereas the fcp marker in perfherder-data.json is generated when we detect there's a contentful frame while building the display list.

So the discrepancy makes sense and expected. There's a bug to rename FirstContentPaint to FirstContentfulComposite.

Depends on: 1675640
Flags: needinfo?(rjesup)

Closing as WFM based on comment 2, feel free to reopen if there are more related issues.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME

Thank you for the excellent explanation. I agree with marking this bug WFM.

My issue is that I'm trying to diagnose a regression that perfherder reports in fcp, by using a profiled build and seeing what's happening in the profile. It would be nice to have matching events for this usage. I'll file: bug 1701710.

You need to log in before you can comment on or make changes to this bug.