Features of SAP Memory Analyzer
Features which our users considered very helpful are marked with an .
User Interfaces
- SWT-based GUI
- Batch mode - parse a heap dump and run leak suspects report from the command lne
GUI
- Leak suspects report (see blog post "Finding Memory Leaks with One Click")
- Class histogram of a single heap dump with grouping by Class/ClassLoader
- Class histogram of the difference between two heap dumps with grouping by Class/ClassLoader
- Dominator Tree used to find the biggest distinct objects and allowing to explore the keep-alive tree of the object graph (Shallow Size and Retained Size) with grouping by Class/ClassLoader
- Immediate Dominators on an object set with exclude pattern for faster problem recognition and grouping by Class/ClassLoader
- Retained size for single object
- Compute precise retained size for an object set
- Compute minimum retained size for an object set very fast
- Show retained set by RegEx for class name or specific ClassLoader
- Execute OQL query (SQL-like Object Query Language)
- Outbound References from one single object
- Inbound References to one single object
- Outbound References from a set of objects grouped by class
- Inbound References to a set of objects grouped by class
- Object Lists
- Object Inspector (Address, Class, ClassLoader, Shallow Size, Retained Size, GCInfo, static and instance fields with types, names, and values)
- Find object by address
- Open selected object in the dominator tree
- Paths from the GC roots/threads to one single object
- Shortest paths from the GC roots to a set of objects
- Heap Dump Info (Size, 32/64 Bit, #Objects, #Classes, #ClassLoaders, #GCRoots)
- Heap Dump History of last opened heap dumps
Online Help
- Welcome Page
- Manual
- New and Noteworthy
- Tutorials (Basic Analysis, Unique Features, OQL in 1 minute, Console, How to find memory problems?)
- Icon Assist
SAP Specifics
- ClassLoader will show name of deployment unit if detected as SAP JEE class loader
- Registered Loaders Query listing all ClassLoaders which are registered in the ClassLoader registry of the SAP JEE Engine
- Leaking Loaders Query listing all ClassLoaders which are NOT registered in the ClassLoader registry of the SAP JEE Engine (see blog)
- Query showing the JEE Cache Regions
- Query displaying the JEE Session
Convenience Features
- Instant reopen of once parsed heap dumps
- Default extractors for Java standard collections (LinkedList, ArrayList, Vector, HashSet, HashMap/Hashtable Keys/Values)
- Copy address, value or class name via context menu or press CTRL+C for class name
- Copy whole view to clipboard (helps you to avoid huge screenshots and is handy for postings)
- Export whole table to CSV
- Auto-expand object reference chains until more than one object is found
- Totals tool-tip of the selected rows above a hovered column
- Totals line for any table
- Store once calculated retained size per class in the class histogram along with the heap dump
- Free-text notes view which will be stored along with the heap dump for your notes
- Auto-detection of deleted heap dumps cleaning up the history