In order to prepare an allocation call tree, you have to click on the
calculate toolbar button
or choose View->Calculate allocation call tree from JProfiler's
main menu. If an allocation tree has already been calculated, the context sensitive menu
also gives access to this action.
Before the allocation call tree is calculated, the allocation options dialog is shown. The class or package selection as well as the selected liveness mode are displayed at the top of the allocation call tree view.
If URL splitting is enabled,
each request URL creates a new node with a
special icon and the prefix
URL:, followed by the part of the request URL on which the allocation call tree
was split. Note that URL nodes group request by the displayed URL.
You can disable both J2EE component detection as well as URL splitting on the Java Subsystems tab of the profiling settings. Also, the URL splitting method can be customized in the profiling settings or with a custom handler in the profiling API.
When you switch between two aggregation levels, JProfiler will make the best effort to preserve your current selection. When switching to a a more detailed aggregation level, there may not be a unique mapping and the first hit in the allocation call tree is chosen.
The allocation call tree doesn't display all method calls in the JVM, it only displays
Runnable.run()
and the main method are always displayed, regardless of
the filter settings.
A particular node is a bridge node if it would normally not be displayed in the view, but has descendant nodes that have to be displayed. The icons of bridge nodes are grayed out. For the allocation call tree view this is the case if the current node has no allocations, but there are descendant nodes that have allocations.
Note that the line number shows the line number of the invocation and not of the method itself.
The size and the allocation count are either cumulated for all calls below the associated node or not, depending on the corresponding cumulation view setting. Note that allocations performed in calls to filtered classes are consolidated in the first call into a filtered class.