Closed Bug 646737 Opened 13 years ago Closed 9 years ago

Heap profiling API - shortest path tree

Categories

(DevTools :: General, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 961323

People

(Reporter: dcamp, Unassigned)

References

Details

Build a shortest-path-to-root tree from a snapshot of the object graph.  This tree can be used to find objects that are retaining a lot of memory.

Not 100% sure how/if this should coexist with the dominator tree.  The dominator tree is more "correct" in some sense - if a subgraph is kept alive by two different nodes the shortest-path tree will ignore one of them.  But at first glance a shortest-path tree might be easier for a developer to understand, so it might be useful.
Assignee: nobody → dcamp
Depends on: heap
Assignee: dcamp → nobody
(In reply to Dave Camp (:dcamp) from comment #0)
> Build a shortest-path-to-root tree from a snapshot of the object graph. 
> This tree can be used to find objects that are retaining a lot of memory.
> 
> Not 100% sure how/if this should coexist with the dominator tree.  The
> dominator tree is more "correct" in some sense - if a subgraph is kept alive
> by two different nodes the shortest-path tree will ignore one of them.  But
> at first glance a shortest-path tree might be easier for a developer to
> understand, so it might be useful.
FWIW, I've implemented a lot of heap snapshot analysis tools:
  https://github.com/amccreight/heapgraph
Of course, these work on log dumps, outside of the browser.

I haven't actually implemented any shortest-path or dominator analysis.  I should probably do that.  I just pick paths using a simple flood fill.
(In reply to David Bruant from comment #1)
Sorry, comment 1 was a mistake. No comment for now, just watching with a good amount of hope :-)
Blocks: heap
No longer depends on: heap
Memory Tool APIs now tracked in bug 961331
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → DUPLICATE
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.