Overview

Several facilities are provided in iWay Service Manager (iSM) to assist in measuring execution performance. However, no single tool provided neither by iWay Software nor an external source will do a complete job of providing a performance analysis. Only some approaches and techniques used frequently by application developers are discussed in this appendix. iWay Software provides tools to assist in such analysis, which are also discussed in this appendix.

The following list of principals apply to any performance measurement, and must be considered in any experimental design.

  1. Java is designed to learn as it goes, which means that it has a heuristic optimizer that requires many passes through code to determine the best compilation and execution path. As a result, you must run many setup transactions before actually taking measurements. The initial transactions will be far slower than later transactions, and the measurements of those transactions will include the Java analysis time as the Java Virtual Machine (JVM) gathers information for later optimization.
  2. You must run many experiments. One experiment can be configured to deviate from the expected result, so that a wide range of statistical data can be acquired.
  3. All extraneous effects must be avoided. For example, running performance tools with tracing enabled will simply measure tracing, which is provided to help debug problems, and will skew any results.
  4. You will need some understanding of the dynamics of a JVM, its optimization, and the tools available with the JVM. These are not further discussed in this appendix.

iWay Software