Open Bug 1500465 Opened 11 months ago Updated 2 months ago

Need APIs to measure touch scrolling input latency on desktop and GeckoView

Categories

(Core :: Panning and Zooming, enhancement, P3)

enhancement

Tracking

()

REOPENED
Tracking Status
firefox64 --- affected
firefox70 --- affected

People

(Reporter: mstange, Assigned: ccheung256)

References

(Blocks 1 open bug)

Details

(Whiteboard: [gfx-noted])

Attachments

(1 file, 6 obsolete files)

The performance team wants to add level 1 telemetry probes for touch scrolling latency, most importantly on Windows and Android/GeckoView. We may also want to have a Talos test that measures this latency.

We will need to have APIs to get the time that passes between the OS touch event and the composite that presents this touch move to the screen.
The touch events already have a timestamp on them (if not we can add one), so those can be used to track the time from when the OS gives us the event to the point where APZ uses that event to mutate the scroll position. However past that point there's a many-to-one collapsing where multiple touch events can have their effect show up on the screen in a single composite. So we'd somehow have to track all the touch events that were processed by APZ between samplings, and hand that bag of information to the compositor at sample time (or just expose it via an API to be read after a sampling). Then when the compositor presents the frame it can record the telemetry probes for those touch events.

This assumes we only care about touch events that are eventually processed by APZ, and not touch events that preventDefault()'d but then drive some JS scrolling. That would be much harder to track.
Priority: -- → P3
Whiteboard: [gfx-noted]
Blocks: 1505256

Depends on D34912

Depends on D34913

Attachment #9072253 - Attachment is obsolete: true
Attachment #9071953 - Attachment is obsolete: true
Attachment #9071954 - Attachment is obsolete: true
Attachment #9071955 - Attachment is obsolete: true
Attachment #9072258 - Attachment is obsolete: true
Assignee: mstange → ccheung256
Attachment #9075413 - Attachment is obsolete: true
Attachment #9074622 - Attachment description: Bug 1500465 - Measure touch scroll latency and connect to telemetry. r=mstange → Bug 1500465 - Measure touch scroll latency and connect to telemetry.
Pushed by mstange@themasta.com:
https://hg.mozilla.org/integration/autoland/rev/40010303c474
Measure touch scroll latency and connect to telemetry. r=kats
Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
Regressions: 1564995

Given the OOM crashes in both automation and affecting real-world users, I'd like to get this backed out unless a fix is forthcoming today. Anybody have objections?

(In reply to Kartikaya Gupta (email:kats@mozilla.com) (away 17-Jul-2019 to Feb-2020) from comment #11)

Given the OOM crashes in both automation and affecting real-world users, I'd like to get this backed out unless a fix is forthcoming today. Anybody have objections?

Yes, we will need to ask for a back out.

Backout by aiakab@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/c4b20b18bf97
Backed out changeset 40010303c474 on request of christina_ for causing OOM crashes in automation. a=backout

Thanks!

Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Target Milestone: mozilla70 → ---
You need to log in before you can comment on or make changes to this bug.