Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Other
3.28k
stars
721
forks
source link
High rate of compilation requests after caches full #20618
Version: reproduced with 17.0.12.1 on Power, but likely applies to all versions and platforms.
While working on https://github.com/eclipse-openj9/openj9/issues/20615 I noticed that after the code caches are marked full performance is degraded well below the rate seen with -Xint, and a possible explanation is that there is a very high rate of compilation request/compilation failure messages generated that show no sign of slowing down. Using verbose option compile* generated just under one million failure messages in a little over 1 minute of runtime:
tail failures.txt
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
#FAILURE: t=68025 <WARNING: JIT Compilations are suspended>
Version: reproduced with 17.0.12.1 on Power, but likely applies to all versions and platforms.
While working on https://github.com/eclipse-openj9/openj9/issues/20615 I noticed that after the code caches are marked full performance is degraded well below the rate seen with -Xint, and a possible explanation is that there is a very high rate of compilation request/compilation failure messages generated that show no sign of slowing down. Using verbose option
compile*
generated just under one million failure messages in a little over 1 minute of runtime: