Working in the Sequence Diagram view

Depending on the hierarchy of the resources in the Profiling Monitor view of the Profiling and Logging Perspective, different types of sequence diagrams are available from the different nodes in this view.

The Sequence Diagram view is available only if the collection of execution flow information has been enabled, which you do when launching or attaching to the application to be profiled.  Select the profiling option, My application is too slow then, from the Details options, select Show Execution flow graphical details.  

Viewing interactions

The visualization of host and process interactions in the Sequence Diagram views of the Profiling and Logging Perspective helps in workload administration of distributed applications. The representation of time in these views helps in determining bottlenecks in application performance as well as network communication.

From the monitor's level, all interaction diagrams from the monitor downward are available. That is, you can view sequence diagrams for interactions among hosts, among processes, among threads, among objects, and among classes. From the process level, only thread interactions, object interactions, and class interactions are available, and so on.

Host interactions

Use host interaction diagrams to view interactions among methods that execute on different hosts, which participate in the execution of a distributed application. Host interactions diagram provides the highest level of abstraction in a sequence diagram presentation. The flow of interactions presents the execution of these methods across machines. It provides a high level of visualization of the workload for specific hosts.

To view host interaction diagrams, follow these steps:

  1. Select the monitor that represents the application cluster in the Profiling Monitor view.
  2. Right click, then select Open With  > Host interactions.

The Sequence Diagram view opens and shows entities that correspond to hosts in the monitor.

Process interactions

Use process interaction diagrams to view interactions of methods that execute in different processes, which participate in the execution of an application.

To view process interaction diagrams, follow these steps:

  1. Select the monitor that represents the application cluster or the host of interest in the Profiling Monitor view.
  2. Right click, then select Open With  > Process interactions. The Sequence Diagram view opens and shows entities that correspond to processes in the monitor or the host.

Thread interactions

Use thread interaction diagrams to view interactions of methods that execute in different threads, which participate in the execution of an application.

To view thread interaction diagrams, follow these steps:

  1. Select the monitor that represents the application cluster, host, or process of interest in the Profiling Monitor view.
  2. Right click, then select Open With  > Thread interactions. The Sequence Diagram view opens and shows entities that correspond to threads in the monitor, host, or process.

Class interactions

Use class interaction diagrams to view interactions of class methods that participate in the execution of an application.

To view class interaction diagrams, follow these steps:

  1. Select the monitor that represents the application cluster, host, or process of interest in the Profiling Monitor view.
  2. Right click, then select Open With  > Class interactions. The Sequence Diagram view shows entities that correspond to classes in the monitor, host, or process.

Object interactions

Use object interaction diagrams to view interactions of object methods that participate in the execution of an application.

To view object interaction diagrams, follow these steps:

  1. Select the monitor that represents the application cluster, host, or process of interest in the Profiling Monitor view.
  2. Right click, then select Open With  > Object interactions. The Sequence Diagram view shows entities corresponding to objects in the monitor, host, or process.

Viewing performance bottlenecks

The hot spot may provide accurate indication as to which part of the method consumes the most time. It may be located between two calls, at a call and method entry or exit, or it may cover a whole method.  See an example of how to proceed in Viewing performance bottlenecks.

Verifying the execution flow of the application

The Sequence Diagram tool generates graphs which represent the execution flow of applications. Those generated graphs can be compared to the sequence diagrams from the application's design documentation to verify conformance.

Verifying number of objects taking part in execution

To improve the memory footprint of an application, check that the number of class instances taking part in the execution is appropriate. The Package Statistics view of the monitored data provides numerical values of the number of object instances taking part in execution as well as the execution time consumption imposed by them.

Identifying memory consumption by the objects

The Instance Statistics view provides numerical values of the memory consumption by class instances taking part in execution. This information is critical for memory optimization work.

Identifying time-consuming methods

To improve performance time of the monitored application, the execution time of the invoked methods must be carefully verified. This information is provided in the Method Statistics view of the Profiling and Logging Perspective.

 

Related concepts
Overview of the Log Analyzer
Log file correlation
Log interactions view
Log thread interactions view

Related tasks
Working with log files
Synchronizing time

Related reference
Log view