Start of Content Area

Background documentation VM Container Trace Flags  Locate the document in its SAP Library structure

When you choose VM Tracing on the VM Overview screen (transaction SM52), and confirm the subsequent prompt with Yes, the screen below appears.

This graphic is explained in the accompanying text

You can now activate the trace flags that you need for your error analysis.

Caution

Be aware that tracing reduces the performance of the VM Container. Deactivate tracing once you have the information you were searching for.

Each trace flag causes additional trace output in the developer trace (work process trace files dev_w*). In the table below you can see precisely what is written to the trace for each trace flag.

Both blocks of trace flags relate to the activities within the VM. The lower block consists of trace flags for the JIT Compiler.

VM Trace Flags in the VM Overview

Trace Flag

Trace Output

OP Execution

Each single Java opcode is executed; tracing takes an extremely long time

Meth Execution

Entry/exit for each Java method; tracing takes a very long time

Interpret. Loop

Status of the upper Java frame following each method call or return.

Java Sync (fast)

Lock/unlock operations on Java objects without rivalry (over 99% of all synchronization operations)

Java Sync (det)

Lock/unlock on Java objects with rivalry and all wait/notify operations on Java objects

Mutex locking

Lock/unlock operations of native locks

Consit. State

Achievement of a consistent state (currently used only for the GC)

GC Start/Stop

Start and end of the garbage collector

GC Root scans

Processing details of Java heap roots during the GC

GC Heap scans

Processing details of objects in the Java heap during the GC

GC Obj alloc

Details of each object created

GC internals

Internal GC processes

GC safe/unsafe

Displays switches between gc-safe/gc-unsafe

Class static init

Static initialization of Java classes

Java Exceptions

All Java exceptions raised or intercepted

Misc (init, exit)

Start/end phases of a VM

VM closes with an exit

JNI routines searched

GC barriers

Presently not used

Stackmap gen

Creates Java stackmaps (method data structures required for the garbage collection)

Class loading

Loads Java classes

Class lookup

Searches for Java classes in the class loader cache; tracing takes a very long time

Type system

All operations of the type ID system (manages class, field, and method names, and method signatures

Java Verifier

Byte code verification of Java classes (verified when linking to)

Weak ref handling

VM internal handling of objects with special garbage collection from java.lang.ref.reference (weak, soft, phantom) and finalization

Class unloading

Garbage collection unloads Java classes

Class linking

Links Java classes

LVM

Not used

Controls

Handling of controls

Controls (int)

Internal handling of controls (tracing takes a long time)

Debugging

Life cycle of debugging on demand

JVMDI

Traces the most important JVMDI functions

JVMDI (int)

Traces the less important JVMDI functions

Thread sched

Supplies the view of the thread scheduler via the current status of the thread

This contains the following information:

     Why a thread can no longer be executed (for instance, it is waiting for I/O,  is blocking synchronization objects)

     Why a thread is now executable (for instance I/O is available, synchronization object notified)

     CPU use of a thread

     Current status of I/O calls

     Roll status of the Java VM

     Interaction with the task handler

Thread sched(int)

Supplies information about:

     C stack creation

     C stack assignment to a thread

     Closing of file descriptors that are being used by other threads

     Non blocking I/O calls

Basic File IO

Opening and closing of files

File IO (r/w)

All read and write operation and their results, but does not log the data read or written.

File IO (data)

All read and written data

File IO (int)

Internal data handling functions

Basic Network IO

Bind/accept/listen/connect sockets

Net IO (send/rec)

All send, receive, and associated operations but does not display the data sent

Net IO (data)

All data sent

Net IO(int)

Internal socket handling functions

JPDA

More important JPDA library functions (debugging)

JDPA (int)

Less important JPDA library functions (debugging)

JDWP

All packets exchanged between the debugger and the VM (in readable format)

VM attach/detach

Attachment of a VM to an work process, an detachment from a work process

Trace symb. names

Determination and display of symbolic names for external functions, which can only be passed to the VM using a pointer rather than a symbolic name.

Ext Mutex

Lock/unlock system-wide locks ( Shared Locks and VM-internal locks), excludes some that are frequently used

Ext Mutex (int)

Lock/unlock system-wide locks frequently used internally in VMs (trace takes a long time)

GC statistics

Displays key information about each garbage collection in readable format

Surviving objects

Displays the number and total size of surviving objects sorted by class for each completed GC.

Configuration

Displays VM configuration when VM is started

Shared GC

Start, end, and status changes of the Shared Garbage Collector

Shared GC (int)

Internal implementation details of the shared garbage collector (trace takes a very long time)

Shared Closure

Shared Closure operations

Shr Closure (det)

Internal implementation details of shared closures (trace takes a very long time)

 

JIT Compiler Trace Flags in the VM Overview

Trace Flag

Trace Output

JIT Status

Translation activities of the JIT compiler

JIT BC to IR

Translation of Java byte code into the internal intermediate representation

JIT code generation

Machine code generation

JIT statistics

Code generation statistics

JIT IR opt

Block local optimizations in the intermediate representation

JIT inlining

Storage of methods

JIT on stack replacement

Replacement of the interpreted execution of a method with execution of the translated method

JIT CFG

Generation of the control flow graph

JIT DFA

Data flow-based optimizations on the intermediate representation

JIT DEOPT

Deoptimization of executions of compiled methods

 

More Information

General information on tracing in the SAP Application Server can be found under Trace Functions.

An overview of administration functions in the VM Container can be found under Administration of the VM Container.

 

 

End of Content Area