Changes

Jump to: navigation, search

AWSY/Tests

2,787 bytes added, 13:11, 8 November 2017
Add AWSY Docs
All of the values we report to Perfherder for memory come from [https://developer.mozilla.org/docs/Mozilla/Performance/about:memory about:memory]. It might be helpful to run that locally to get an idea of what we measure.

== Test Descriptions ==
=== Explicit Memory summary ===

* This is memory explicitly reported by a memory reporter. It includes all the memory allocated via explicit calls to heap allocation functions (such as malloc and new) and to non-heap allocations functions (such as mmap and VirtualAlloc).

==== Possible regression causes ====
* A regression in this usually means a new feature is using or retaining more memory and should be looked at. These are easier to diagnose as we can compare memory reports.

See the about:memory [https://developer.mozilla.org/docs/Mozilla/Performance/about:memory#Explicit_Allocations mdn page] for more details.

=== Heap Unclassified summary ===

* The "heap-unclassified" value represents heap-allocated memory that is not measured by any memory reporter. This is typically 10--20% of "explicit".

==== Possible regression causes ====
* A regression in this can indicate that we're leaking memory or that additional memory reporters should be added.
* An improvement can indicate that leaks have been fixed or that we added new memory reporters.

See the about:memory [https://developer.mozilla.org/docs/Mozilla/Performance/about:memory#Explicit_Allocations mdn page] for more details.

=== Images summary ===

* This is a subset of the "explicit" measurement that focuses on memory used to render images.

==== Possible regression causes ====
* A regressions in this can indicate leaks or poor memory usage in the image subsystem. In the past this was persistent problem.

=== JS summary ===

* This is the "js-main-runtime/" value in about:memory which is all the memory attributed to the javascript engine.

==== Possible regression causes ====
* A regression in this number can indicate leaks in the JS engine, optimizations that take performance into consideration at the expense of more memory, or problems with the garbage collector.

=== Resident Memory summary ===

* This is a higher level measurement provided by the operating system. We sum the "resident" memory ([https://en.wikipedia.org/wiki/Resident_set_size RSS]) with the [https://en.wikipedia.org/wiki/Unique_set_size resident-unique] memory of the content processes. It's pretty noisy and large so it's not very useful in detecting smaller regressions.

==== Possible regression causes ====
* Regressions in this often track regressions in explicit and heap unclassified. If we see a regression in resident, but not in other reports this can indicate we are leaking untracked memory (perhaps through shared memory, graphics allocations, file handles, etc).
160
edits

Navigation menu