-XX:[+|-]JITServerLocalSyncCompiles
When you specify this JITServer option, synchronous JIT compilations are downgraded to cold
optimization level and compiled locally, with a remote asynchronous recompilation scheduled at a later point.
Syntax
-XX:[+|-]JITServerLocalSyncCompiles
Setting | Effect | Default |
---|---|---|
-XX:+JITServerLocalSyncCompiles |
Enable | yes |
-XX:-JITServerLocalSyncCompiles |
Disable |
The option -XX:[+|-]JITServerLocalSyncCompiles
is enabled by default in most cases. The option remains disabled when you specify -Xjit:count=0
and in a few advanced use cases such as running the JVM in debug mode (as described in the Improved JVM debug mode based on OSR post in the Eclipse OpenJ9™ blog).
Explanation
During a synchronous compilation, Java™ application threads have to wait for the compilation to complete. Because remote compilations usually take longer, due to network latency, remote synchronous compilations can result in large pauses in the client application.
If you enable this option, the client performs synchronous compilations locally at cold
optimization level and later recompiles asynchronously at a higher level remotely. This behavior can be beneficial for real-time applications.