Closed Bug 1817965 Opened 2 years ago Closed 2 years ago

Consider adding telemetry for helper thread task latency

Categories

(Core :: JavaScript Engine, task, P2)

task

Tracking

()

RESOLVED FIXED
112 Branch
Tracking Status
firefox112 --- fixed

People

(Reporter: jonco, Assigned: jonco)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Our helper thread system is pretty complex. It's built on top of TaskController which is itself complicated and it has limits on the number of tasks that can run concurrently for different kinds of task. These limits apply to all tasks created in the process, not just to a single runtime. This means it's possible to kick off a task but have it blocked by other helper thread work going on in the system.

It's possible we are causing jank because tasks we start don't run soon enough, so it would be useful to know how long we end up waiting for tasks to start.

This might not be a problem in practice, or it might predominately affect machines with few cores. It's probably mostly applicable to tasks that we start and then wait for on the main thread, for example some GC tasks.

Severity: -- → N/A
Priority: -- → P2

I initially tried to do this for all helper thread tasks but most of them don't
have any associated runtime to send the telemetry to and this resulted in a
much larger set of changes.

What do you think?

Assignee: nobody → jcoppeard
Status: NEW → ASSIGNED
Attachment #9321298 - Flags: data-review?(tlong)

Comment on attachment 9321298 [details]
data_collection_request.txt

Data Review

  1. Is there or will there be documentation that describes the schema for the ultimate data set in a public, complete, and accurate way?

Yes, through the Histograms.json file and the Probe Dictionary.

  1. Is there a control mechanism that allows the user to turn the data collection on and off?

Yes, through the telemetry preference in the application settings.

  1. If the request is for permanent data collection, is there someone who will monitor the data over time?

Permanent collection to be monitored by Jon Coppeard

  1. 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 Data

  1. Is the data collection request for default-on or default-off?

Default-on

  1. Does the instrumentation include the addition of any new identifiers (whether anonymous or otherwise; e.g., username, random IDs, etc. See the appendix for more details)?

No

  1. Is the data collection covered by the existing Firefox privacy notice?

Yes

  1. Does the data collection use a third-party collection tool?

No

Result

data-review+

Attachment #9321298 - Flags: data-review?(tlong) → data-review+
Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/41f8f9a43e5e Add telemetry to monitor how quickly GC tasks run after being queued r=jandem
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 112 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: