|
|
| Line 42: |
Line 42: |
| * [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=MemShrink&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=nobody%40%7Cgeneral%40js.bugs Unassigned MemShrink bugs]. These need someone to work on them. | | * [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=MemShrink&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=nobody%40%7Cgeneral%40js.bugs Unassigned MemShrink bugs]. These need someone to work on them. |
|
| |
|
| == Tools and Benchmarks == | | == Tools == |
|
| |
|
| === about:memory and memory reporters ===
| | All the tools that we use to measure and improve memory usage are described [[Performance/MemShrink/Tools|here]]. |
| | |
| about:memory is the primary tool for understanding Firefox's memory consumption. It displays a large number of measurements that are made by numerous ''memory reporters'' implemented within Firefox. A basic guide to using about:memory is [[Performance/MemShrink/about:memory|here]].
| |
| | |
| Documentation on how to write a memory reporter is [[Memory_Reporting|here]].
| |
| | |
| === DMD ===
| |
| | |
| DMD is a tool that helps improve the coverage of memory reporters. Documentation on using it is [[Performance/MemShrink/DMD|here]].
| |
| | |
| === areweslimyet.com ===
| |
| | |
| http://arewefastyet.com is a very successful site used to track the performance of Firefox's JavaScript engine. Why was arewefastyet.com so successful? Some key characteristics.
| |
| * The benchmarks were easy to choose: everybody already used SunSpider and V8, and then Mozilla released [[Kraken]]. They run quickly, too, which is nice for devs, and allows expensive tools (like Cachegrind) to be used.
| |
| * The metrics were easy to choose. SS time, V8 time, Kraken time. They can be measured easily, precisely, and fairly repeatably. You can break the total time down into per-benchmark times, which really helps with understanding improvements and regressions. They're easy for devs to run on their own machine.
| |
| * There was a well-defined goal: match or beat the other browsers.
| |
| | |
| In comparison, for memory consumption there is no good and/or standard benchmark suite; metrics are less clear and harder to measure (especially across different browsers); and most importantly, there's no well-defined goal w.r.t. any benchmarks.
| |
| | |
| Nonetheless, we've created a memory benchmark and are tracking Firefox's performance on it over time, to provide a sense of MemShrink progress and detect regressions. It is available at http://areweslimyet.com/.
| |
|
| |
|
| == Meeting Minutes, Progress Reports and Presentations == | | == Meeting Minutes, Progress Reports and Presentations == |