Responsibilities of the Quantum Profiling Pool
We would like to make the Quantum Profiling Pool a standard process. Dave Camp and engineering leadership believe increasing our capacity for profiling is essential to realizing our 2018 performance goals. This is where your help comes in. I would like one representative (at minimum) from each key component, as listed in the Sheet, to be on the Quantum Profiling Pool. The responsibilities of this group are as follows.
- They will serve for one Quantum Flow iteration (three firefox releases). The next iteration ends Mar 11, 2018 when FF60 leaves Nightly for Beta (https://wiki.mozilla.org/RapidRelease/Calendar ).
- They should be able to commit to at least half-a-day a week to profiling.
- Their work will come out of Quantum Release Criteria, Quantum Flow and other performance bugs that are marked with whiteboard: [qf:needs-analysis]. These will be assigned round-robin if a component is unknown.
- They will profile the bug until
- they are able to assign it to a component
- Suggest next steps to address it based on what they have seen in their analysis
- Suggest a [qf:p1], [qf:p3] , or [qf:p5] priority via comment.
- The whiteboard tag should transition from [qf:needs-analysis] to [qf:analyzed].
- If the Quantum Flow triage team agrees we will update the whiteboard priority. We may move it back to [qf:needs-analysis] if more information is needed to make the bug actionable.
- Members of the Quantum Profiling Pool can and should make use of all available resources to help them analyze a bug such as
- Performance wiki “How to gecko profile” - https://wiki.mozilla.org/Quantum/Release_Criteria#Resources_on_.22How_to_do_Gecko_Profiling.22
- How to use the profiler - https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Profiling_with_the_Built-in_Profiler
- Gecko Profiler FAQ - https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Gecko_Profiler_FAQ
- IRC #flow to ask for help if/when they get stuck on a particular profile
- Ultimately they are responsible for the [qf:needs-analysis] bugs they have been assigned to. Ensuring that their profile analysis leads to an actionable bug resolution.
Performance bugs often linger in Bugzilla with no activity for lack of profiling. We believe this process will help address that profiling capacity shortfall all performance bugs are experiencing. This process should also have the additional benefit of training our engineers to become more capable at diagnosing and correcting performance bugs over time. Both profiling and performance needs to continue as a discipline.