Confirmed users
1,345
edits
Nnethercote (talk | contribs) (Created page with "Project Candle is a project that aims to reduce the power consumption of Firefox (on desktop and mobile) and Firefox OS. This will increase battery life for users on mobile de...") |
Nnethercote (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
Project Candle is a project that aims to reduce the power consumption of Firefox (on desktop and mobile) and Firefox OS. This will increase battery life for users on mobile devices. | Project Candle is a project that aims to reduce the power consumption of Firefox (on desktop and mobile) and Firefox OS. This will increase battery life for users on mobile devices. | ||
== Mailing list == | |||
The Project Candle mailing list [https://bugzilla.mozilla.org/show_bug.cgi?id=1200901 will be called dev-power]. | |||
Instead of having regular face-to-face meetings, this list will serve as the central point of contact for all discussions and bug triaging for Project Candle. While having no face-to-face meetings does reduce the immediacy of discussion, we hope this will be outweighed by other advantages. | |||
First, given that the reduction of power consumption potentially requires people with expertise in many parts of the codebase, it is important to avoid excluding anybody. A mailing list achieves this in the following ways. | |||
* Nobody needs to miss discussion due to being permanently in a particular timezone. | |||
* Nobody needs to miss discussion due to being temporarily unavailable at a particular time. | |||
* It's easy to "lurk", i.e. follow along in a low-commitment fashion. | |||
Second, there are some practical benefits. | |||
* All discussions are permanently archived. | |||
* Fewer meetings for everybody. | |||
== Bug triage and tracking == | |||
Bugs are triaged via periodic triage threads on the mailing list. These threads will have a title such as "Project Candle bug triage (7th September 2015)". The triage manager (currently nnethercote) will initiate these threads, listing each bug, asking relevant questions, and suggesting priorities. A few days later, after discussion has occurred, the triage manager will update the bugs appropriately. | |||
If you want a bug that is related to memory usage to be triaged in a MemShrink meeting, add "[Power]" to the bug whiteboard. These bugs will be prioritized by adding one of "Power:P1", "Power:P2", "Power:P3" or "Power:meta" to the whiteboard. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?status_whiteboard_type=regexp&query_format=advanced&list_id=577353&status_whiteboard=Power%5b%5e%3A%5d&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&resolution=---&resolution=DUPLICATE Unprioritized Power bugs]. These are triaged regularly on the mailing list. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=463753&resolution=---&resolution=DUPLICATE&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=Power%3AP1&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=bugs.bug_id Power:P1 bugs]. These are likely to be looked at and discussed regularly. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=463753&resolution=---&resolution=DUPLICATE&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=Power%3AP2&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=bugs.bug_id Power:P2 bugs]. These are likely to be looked at and discussed occasionally. P2 is the default priority. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=463753&resolution=---&resolution=DUPLICATE&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=Power%3AP3&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=bugs.bug_id Power:P3 bugs]. These are likely to be looked at and discussed rarely. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=463753&resolution=---&resolution=DUPLICATE&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=Power%3Ameta&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=bugs.bug_id Power:meta bugs]. These are likely to be looked at and discussed occasionally. | |||
Some other interesting bug lists that overlap with the ones above. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=463753&resolution=---&resolution=DUPLICATE&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=Power&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&order=bugs.bug_id All Power bugs]. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?status_whiteboard_type=allwordssubstr&query_format=advanced&list_id=1252875&status_whiteboard=Power&bug_status=UNCONFIRMED&resolution=---&resolution=DUPLICATE Unconfirmed Power bugs]. These are problems reported by users and generally require some kind of additional work to confirm. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?status_whiteboard_type=allwordssubstr&query_format=advanced&list_id=1252905&status_whiteboard=Power%20mentor&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&resolution=---&resolution=DUPLICATE Power bugs with a "mentor" annotation]. These are bugs that someone has identified as reasonable easy, and that person is willing to help a newcomer fix the bug. | |||
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=1252950&resolution=---&resolution=DUPLICATE&emailtype1=regexp&status_whiteboard_type=allwordssubstr&emailassigned_to1=1&query_format=advanced&status_whiteboard=Power&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=nobody%40%7Cgeneral%40js.bugs Unassigned Power bugs]. These need someone to work on them. | |||
== Tools == | |||
All the tools that we use to measure and improve memory usage are described [https://developer.mozilla.org/en-US/docs/Mozilla/Performance on MDN], under "Power profiling". | |||
== Progress tracking == | |||
We will need to set up some kind of automated system for tracking power consumption. This will let us measure progress and also detect regressions. | |||
There are several open questions relating to this. | |||
* Which platforms? (Note that dedicated hardware is best for power consumption measurement, because a lot of the tools do system-wide measurements.) | |||
* Which other browsers do we compare with? | |||
* Which metrics do we use? | |||
* What workloads do we test. | |||
Roberto Vitillo's [https://github.com/mozilla/energia Energia] [http://people.mozilla.org/~rvitillo/dashboard/ dashboard] may serve as a good starting point. (Note that this dashboard has not been updated in over a year and so its actual data should be ignored at this time.) | |||