nsIDOMWindowUtils::startFrameTimeRecording isn't implemented for WebRender

RESOLVED FIXED in Firefox 64

Status

()

P1
normal
RESOLVED FIXED
2 months ago
2 months ago

People

(Reporter: mattwoodrow, Assigned: mattwoodrow)

Tracking

(Blocks: 2 bugs)

Trunk
mozilla64
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox64 fixed)

Details

Attachments

(1 attachment)

(Assignee)

Description

2 months ago
This is used for tscrollx and TART talos tests, and is silently recording 0's when WR is enabled.
(In reply to Matt Woodrow (:mattwoodrow) from comment #0)
> This is used for tscrollx and TART talos tests, and is silently recording
> 0's when WR is enabled.

Nice find! To clarify, is that making WR numbers better or worse than they should be?
(Assignee)

Comment 2

2 months ago
It makes the WR numbers look better than they are unforunately.

The main-thread scrolling results appear to be fairly comparable, with the exception of the svg subtest, which is almost an order of magnitude worse.

The APZ scrolling results are all 0s, so it roughly halves the combined average for the suite.
(Assignee)

Comment 3

2 months ago
Created attachment 9006753 [details]
Bug 1488980 - Implement StartFrameTimeRecording for WebRender. r?mstange

MozReview-Commit-ID: Ib5t0e8S6df
(Assignee)

Comment 4

2 months ago
The attached patch fixes all the APZ subtests except for iframe.svg, which I filed bug 1488996 for.
(In reply to Matt Woodrow (:mattwoodrow) from comment #2)
> The main-thread scrolling results appear to be fairly comparable, with the
> exception of the svg subtest, which is almost an order of magnitude worse.

Huh, that seems worth looking into. My understanding is that svg blob rasterization is slow, but once that's done, it seems like we should be able to blit it pretty fast on scrolls. I wonder what's going on?
(Assignee)

Comment 6

2 months ago
(In reply to Bobby Holley (:bholley) from comment #5)
> (In reply to Matt Woodrow (:mattwoodrow) from comment #2)
> > The main-thread scrolling results appear to be fairly comparable, with the
> > exception of the svg subtest, which is almost an order of magnitude worse.
> 
> Huh, that seems worth looking into. My understanding is that svg blob
> rasterization is slow, but once that's done, it seems like we should be able
> to blit it pretty fast on scrolls. I wonder what's going on?

The scrolling thing is inside the blob, which is why it doesn't work with APZ currently. Bug 1449634 is going to fix that.

My guess is that the same issue is causing us to re-rasterize the blob on each scroll, which would be painfully slow, but also might be fixed by the same patch. Doing a local build now to confirm.
(Assignee)

Comment 7

2 months ago
Indeed, the patch from bug 1449634 gives us a score for APZ scrolling, and improves the main thread scrolling score significantly.
Comment on attachment 9006753 [details]
Bug 1488980 - Implement StartFrameTimeRecording for WebRender. r?mstange

Markus Stange [:mstange] has approved the revision.
Attachment #9006753 - Flags: review+

Comment 9

2 months ago
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6d3db9b4da32
Implement StartFrameTimeRecording for WebRender. r=mstange

Comment 10

2 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/6d3db9b4da32
Status: NEW → RESOLVED
Last Resolved: 2 months ago
status-firefox64: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Depends on: 1489993
You need to log in before you can comment on or make changes to this bug.