Confirmed users
1,345
edits
Nnethercote (talk | contribs) |
Nnethercote (talk | contribs) No edit summary |
||
| Line 21: | Line 21: | ||
| colspan="4" style="background: #eee" | Leak tools for large object graphs | | colspan="4" style="background: #eee" | Leak tools for large object graphs | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Leak_Gauge Leak Gauge] | ||
| Windows, documents, and docshells only | | Windows, documents, and docshells only | ||
| All platforms | | All platforms | ||
| Any build | | Any build | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/GC_and_CC_logs GC and CC logs] | ||
| JS objects, DOM objects, many other kinds of objects | | JS objects, DOM objects, many other kinds of objects | ||
| All platforms | | All platforms | ||
| Line 38: | Line 33: | ||
| colspan="4" style="background: #eee" | Leak tools for medium-size object graphs | | colspan="4" style="background: #eee" | Leak tools for medium-size object graphs | ||
|- | |- | ||
| [[ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/BloatView BloatView], [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Refcount_tracing_and_balancing refcount tracing and balancing] | ||
| Objects that implement nsISupports or use | | Objects that implement nsISupports or use MOZ_COUNT_{CTOR,DTOR} | ||
| All tier 1 platforms | | All tier 1 platforms | ||
| Debug build (or build opt with --enable-logrefcnt) | | Debug build (or build opt with --enable-logrefcnt) | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/TraceMalloc#Leaksoup Leaksoup] (part of TraceMalloc) | ||
| All objects? (or allocations?) | | All objects? (or allocations?) | ||
| All tier 1 platforms | | All tier 1 platforms | ||
| Line 50: | Line 45: | ||
| colspan="4" style="background: #eee" | Leak tools for simple objects and summary statistics | | colspan="4" style="background: #eee" | Leak tools for simple objects and summary statistics | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/TraceMalloc TraceMalloc] | ||
| All allocations | | All allocations | ||
| All tier 1 platforms | | All tier 1 platforms | ||
| Build with --enable-trace-malloc | | Build with --enable-trace-malloc | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Testing/Valgrind Valgrind] | ||
| All allocations | | All allocations | ||
| Mac, Linux | | Mac, Linux | ||
| Build with --enable-valgrind and some other options | | Build with --enable-valgrind and some other options | ||
|- | |- | ||
| [ | | [https://code.google.com/p/address-sanitizer/wiki/LeakSanitizer LSAN] | ||
| All allocations | | All allocations | ||
| Mac, Linux | | Mac, Linux | ||
| Any build | | Any build | ||
|- | |- | ||
| [ | | [http://developer.apple.com/documentation/Performance/Conceptual/ManagingMemory/Articles/FindingLeaks.html Apple tools] | ||
| ? | | ? | ||
| Mac | | Mac | ||
| Line 72: | Line 67: | ||
| colspan="4" style="background: #eee" | Leak tools for debugging memory growth that is cleaned up on shutdown | | colspan="4" style="background: #eee" | Leak tools for debugging memory growth that is cleaned up on shutdown | ||
|- | |- | ||
| [ | | [https://developer.mozilla.org/en-US/docs/Mozilla/Performance/TraceMalloc#Detecting_memory_usage_growth_in_a_running_process diffbloatdump] (part of TraceMalloc) | ||
| All allocations | | All allocations | ||
| Linux only? | | Linux only? | ||
| Build with --enable-trace-malloc | | Build with --enable-trace-malloc | ||
|} | |} | ||
== Common leak patterns == | == Common leak patterns == | ||