Closed Bug 1500465 Opened 2 years ago Closed 6 months ago
Need APIs to measure touch scrolling input latency (Non-Web
Render call path) on desktop and Gecko View
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
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 email@example.com: https://hg.mozilla.org/integration/autoland/rev/40010303c474 Measure touch scroll latency and connect to telemetry. r=kats
Backout by firstname.lastname@example.org: https://hg.mozilla.org/mozilla-central/rev/c4b20b18bf97 Backed out changeset 40010303c474 on request of christina_ for causing OOM crashes in automation. a=backout
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
11 months ago
Target Milestone: mozilla70 → ---
Assignee: ccheung256 → sefeng
Summary: Need APIs to measure touch scrolling input latency on desktop and GeckoView → Need APIs to measure touch scrolling input latency (Non-WebRender call path) on desktop and GeckoView
Comment on attachment 9113058 [details] data_collection_review_1500465.txt Thanks for flagging this for review. DATA COLLECTION REVIEW RESPONSE: Is there or will there be documentation that describes the schema for the ultimate data set available publicly, complete and accurate? Yes. This collection is Telemetry so is documented in its definitions file [Histograms.json](https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/Histograms.json) and the [Probe Dictionary](https://telemetry.mozilla.org/probe-dictionary/). Is there a control mechanism that allows the user to turn the data collection on and off? Yes. This collection is Telemetry so can be controlled through Firefox's Preferences. If the request is for permanent data collection, is there someone who will monitor the data over time? Yes, :sefeng is responsible. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under? Category 1, Technical. Is the data collection request for default-on or default-off? Default on for all channels. Does the instrumentation include the addition of any new identifiers? No. Is the data collection covered by the existing Firefox privacy notice? Yes. Does there need to be a check-in in the future to determine whether to renew the data? No. This collection is permanent.
Attachment #9113058 - Flags: data-review?(tdsmith) → data-review+
Pushed by email@example.com: https://hg.mozilla.org/integration/autoland/rev/283c7696cf3a Measure touch scroll latency and connect to telemetry. r=mstange,botond
You need to log in before you can comment on or make changes to this bug.