Closed Bug 1654398 Opened 5 years ago Closed 2 years ago

ts_paint is using firstPaint to measure time to first paint. It should use firstPaint2 instead.

Categories

(Testing :: Talos, task, P3)

task

Tracking

(firefox126 fixed)

RESOLVED FIXED
126 Branch
Tracking Status
firefox126 --- fixed

People

(Reporter: mconley, Assigned: bradwerth)

References

Details

Attachments

(1 file)

This should be using firstPaint2: https://searchfox.org/mozilla-central/rev/3b6958c26049c1e27b2790a43154caaba9f6dd4a/testing/talos/talos/startup_test/tspaint_test.html#29

firstPaint2 was introduced in bug 1556568 as the successor to firstPaint, and is a more accurate measurement. We should use that instead.

Alternatively, we could maybe use this as an opportunity to port ts_paint to mozperftest.

Severity: -- → S4
Priority: -- → P3
Whiteboard: [perftest:triage]
Whiteboard: [perftest:triage]
See Also: → 1885376

I'll do it. This will be an interesting argument with perf-checking automation...

Assignee: nobody → bwerth

As noted in Bug 1556568, firstPaint records when we complete the first
render that the OS tells us to do (in nsViewManager::Refresh). This
sometimes can happen much later than we would like, skewing results. It
also is sensitive to whether or not the call to FlushRendering is sync
or async, since it fires as soon as the call is complete. For these
reasons, we'd like ts_paint to measure something more consistent, which
this patch accomplishes by changing the measurement to use firstPaint2.

firstPaint2 records in nsView::DidCompositeWindow, which measures that
the pixels have been put on the screen, no matter who asked us to do it.
This solves both problems and is the superior measure.

Because this most always measure ts_paint at a later time than current
code, this will get flagged as a performance regression. We need to
instead treat it as a measurement recalibration.

Blocks: 1882358
Pushed by bwerth@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bb41b62cad53 Make ts_paint measurement check firstPaint2 timings instead of firstPaint. r=perftest-reviewers,sparky
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 126 Branch

Maybe perf team is running interference on it, disabled the alert.

It takes time for the alert to be produced, and then it takes additional time for a sheriff to investigate it. The alert has been produced, and is being triaged now.

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

Attachment

General

Created:
Updated:
Size: