Called methods

The Called methods tab shows the methods that were called by the highlighted method. In other words, the tab shows where the highlighted method is doing its work.

If only the highlighted method is shown, no methods called by that method were sampled. Either the methods called ran quickly, or (if Java) those methods were inlined.

If the method has children in the tree, the percentages typically do not add up to 100%. The percentages for child methods never add up to more than 100%. The difference in percentages indicates the time spent in the body of the highlighted method.

In the following example, the method JobListeners.done() calls two methods, newEvent() and doNotify(). For 64.1% of the time that JobListeners.done() was on the stack, newEvent() was also on the stack. For 12.8% of the time that JobListeners.done() was on the stack, doNotify() was also on the stack. Therefore, 23.1% (that is 100% -64.1% -12.8%) of the time was spent in JobListeners.done() itself.

Java™ example: Methods called by jobListeners.done()
  • done
    • newEvent (64.1%)
    • doNotify (12.8%)
      • notify (96.5%)
        • done
Note: Percentages refer only to the immediate parent node, hence for 96.5% of the time that doNotify() was on the stack, notify() was also on the stack.

The Called methods tab is less useful for performance tuning than the Invocation paths tab. Time spent processing children is not counted as time spent processing the parent. A lightweight method calling some inefficient children is not placed high in the method profile table. Any inefficient child methods typically show up in the method profile table anyway.





© Copyright IBM Corporation 2007, 2016.
© Copyright 1997, 2016, Oracle and/or its affiliates.
US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.