We have our own memory profiler tool written in python that imports the snapshots and then crawls the GC heap, builds a dependency graph of allocations (so that you can traverse dependency hierarchies to GC roots along the dependency chain), and finally allows you to diff memory dumps in various ways.
I was hoping that the Memory Profiler could replace this, so that I don’t have to be maintaining this tool going forward. In order for it to work well for our workflow, some things seem to be missing (or maybe I just don’t know how to get them out of the tool?):
- display stats counts on types of allocated objects between dumps…
say … +10 HaxorRoxor.SwissArmyKnife objects
-100 System.String objects
this for me is the number one step in starting to find memory leaks
- be able to traverse from object to it’s root via the full dependency chain
Is there a way to do this in the existing tool somehow or is there a plan to support such features in the future?
Cheers,
Jani