Closed Bug 1602923 Opened 4 years ago Closed 4 years ago

Collect telemetry on time spent in IPC method when Fission is enabled

Categories

(Core :: Performance, enhancement, P2)

enhancement

Tracking

()

RESOLVED WONTFIX
Fission Milestone M6

People

(Reporter: ccd, Assigned: barret)

References

Details

Attachments

(1 file)

Collect telemetry on the time spent on sync IPC methods when Fission is enabled. There are
big IPC methods in early Fission development and determining their impact is key.

Attachment #9114983 - Flags: data-review+

Tracking for Fission dogfooding (M5)

Fission Milestone: --- → M5

Sean said he'll work on adding this.

Assignee: nobody → sefeng
Status: NEW → ASSIGNED

It isn't clear what this bug is about. P2 because this is assigned, but neha, could you perhaps provide a bit
more context here so that also whoever will review this knows what we should be measuring.
(or forward the ni? to who might know :) )

Flags: needinfo?(nkochar)
Priority: -- → P2

The Performance team recommends we measure how much time we spend blocked in sync IPC. OTOH, I'm not sure what we will compare those measurements against to decode whether the sync IPC time is too long or good enough. And if we see lots of time in sync IPC, will we know which sync IPC messages are causing the most delays?

@ Corey, what questions do we want to answer with this probe?

Flags: needinfo?(nkochar) → needinfo?(cdowhygelund)

Why is this sync IPC any more horrible in Fission vs. non-Fission?
(of course currently session-history-in-parent-process uses sync IPC, but we can't ship any of that)

Blocks: fission-perf

One use of this probe is measure how we are doing in time reducing being block in sync IPC through time, as development in Fission progresses. As per Kris, we are adding a lot of these methods early on in Fission development. As these are removed, or changes are added to reduce the blockage, this probe would be useful in measuring the impact. We cannot know which IPC methods are causing the most delays; however, we will know the impact of the ones that get removed, or changes are made to affect their blockage.

Kris, could provide additional information as to why this probe would useful?

Flags: needinfo?(cdowhygelund) → needinfo?(kmaglione+bmo)
Flags: needinfo?(kmaglione+bmo)
Flags: needinfo?(kmaglione+bmo)
Blocks: fission-telemetry
No longer blocks: fission-perf

Move Fission telemetry probe bugs from M5 dogfooding milestone to M6 Nightly.

Fission Milestone: M5 → M6
Assignee: sefeng → nobody
Status: ASSIGNED → NEW
Assignee: nobody → brennie

:ccd, what exactly should the telemetry be capturing? Should this be submitting scalars of durations spent in all each sync IPC method? eg inside SendGetLoadedInThisProcess?

Flags: needinfo?(cdowhygelund)

:barret I believe that is the intention of the probe. To submit a scalar of durations spent in all sync IPC methods.

Flags: needinfo?(cdowhygelund)
Comment on attachment 9114983 [details]
fission_ipc_methods.txt

:ccd is not a data steward, rerequesting data-review
Attachment #9114983 - Flags: data-review+ → data-review?(chutten)
Comment on attachment 9114983 [details]
fission_ipc_methods.txt

PRELIMINARY NOTES:
In the future please request Data Collection Review around the time the code is under review. That way I can e.g. check that it is indeed a Histogram and thus is documented automatically and has opt-out controls instead of a custom collection that would need to provide both of those things itself.

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, Corey Dow-Hygelund 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.

---
Result: datareview+
Attachment #9114983 - Flags: data-review?(chutten) → data-review+

I talked with :nika about this, and we have existing telemetry that can be used (IPC_SYNC_MAIN_LATENCY_MS) which can be correlated with telemetry for the telemetry for fission.autostart.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WONTFIX
Flags: needinfo?(kmaglione+bmo)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: