IV16006: DELAY IN APPLICATION PROCESSING
Closed as program error.
Error Message: The application may appear to pause for several seconds/minutes. Profiling data indicates that time is being spent in the JIT compiler. A JIT vlog will show a large number of synchronous compiles during the period when application processing is delayed. A verbose GC log is also likely to show a number of long GC periods. . Stack Trace: N/A . The problem occurs when a large number of JIT compiled methods are invalidated at the same time, causing the compiler to enter an extended period of recompilation. The subsequent clean-up of meta-data results in the secondary issue of extended GC periods.
This is an unusual performance issue which so far has only been seen when a class is loaded into the VM after an extended period during which many methods were compiled. The new class provided a second implementation of another method that was called from each of the compiled methods, invalidating an optimisation and requiring all the methods to be recompiled. This scenario can be avoided with the following command line option: -Xjit:disableInvariantArgumentPreexistence This may causes a slight loss of performance (in the 1% range).
When large numbers of methods need to be recompiled the total compilation time can be excessive and interfere with application processing.
This defect will be fixed in: 6.0.0 SR11 6.0.1 SR2 7.0.0 SR1 . The JIT has been modified to detect the case where a large number of methods need to be recompiled in a short space of time and to optimise this case so that the compilation is done more quickly. A new option has been added to set the threshold for the new behaviour: -Xjit:queuedInvReqThresholdToDowngradeOptLevel=NNN
Reported component name
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
Fixed component ID
Applicable component levels