HPjmeter 4.3 User's Guide

Table 3 Supported -Xeprof options
Specifies the time in seconds between the application start and the time when
the profile data collection will start. If no time_on option is present, the data
collection begins at the VM initialization.
time_on=integer
Specifies which signal will cause profiling to begin (profile data collection).time_on=sigusr1|sigusr2
Be aware that the application or the VM may already be using the sigusr
signals for their own purposes.
It is possible to specify a signal and a timeout at the same time by using
both forms of the time_on option in one command.
Only one of the two signals can be declared to use as the signal to start
profiling.
During the application's run, the specified signal can be delivered to the
Java process multiple times.
Specifies the time in seconds between the profiling start and the time when
profiling will be terminated.
time_slice=integer
When the profiling is terminated, the profile data is written to a file. The
application will continue running.
If time_slice is not specified, or if the application terminates before the
specified time elapses, but the profiling has started, the profile data will be
written out after the termination of the application.
Specifies which signal will cause profiling termination and the profile data
output.
time_slice=sigusr1|sigusr2
The signals for profiling start and profiling termination can be the same. It
is possible to specify a signal and a timeout at the same time by using both
forms of the time_slice option in one command.— termination of profiling
occurs when the first qualifying event takes place. The application will
continue running.
Only one of the two signals can be declared to use as the signal to terminate
profiling.
During the application's run, the signal to terminate profiling can be delivered
to the Java process multiple times. However, profiling will only be terminated
and a result file generated if profiling is active when the termination signal
is delivered.
The profile data will be written to the named file.
If time_on=sig... has not been specified, the default is
filename.eprof
If a signal has been specified to start profiling, several data files can be
created, with names filename_t.eprof, wheret is the time in seconds
between the application start and the profiling start.
file=filename
The compiler in the HotSpot VM optimizes Java applications by inlining
frequently called methods. Execution of an inlined method is not reported as a
inlining=disable|enable
call” because the actual call has been eliminated. Instead, the time spent in
an inlined method is attributed to its “caller” The consequences of inlining for
profiling can be characterized as follows:
The obtained profile data does not reflect faithfully all the calls within the
Java code as written by the programmer, but rather as it is actually executed
by the VM. For most performance analysis cases, this is a desired feature.
As the calls within the Java application are eliminated, the corresponding
calls to the profiler are eliminated too, resulting in lower profiling overhead.
The count of created objects cannot be reliably estimated from the call graph
in the presence of inlining, because the calls to the constructors may have
been inlined.
Collecting Profile Data 73