Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ZGC JIT Support Lost on GraalVM 23 and 21 #10646

Open
shanoaice opened this issue Feb 9, 2025 · 2 comments
Open

ZGC JIT Support Lost on GraalVM 23 and 21 #10646

shanoaice opened this issue Feb 9, 2025 · 2 comments
Assignees
Labels

Comments

@shanoaice
Copy link

shanoaice commented Feb 9, 2025

Describe the issue
On both GraalVM CE and EE builds of JDK 23 (both on Windows and Linux), enabling ZGC will cause JVMCI to be disabled (JIT disabled). On snapshots with Java 25 it seems to go away, but I need Java 23 for some compatibility reason. This also seems to happen on Java 21 (LTS)
Steps to reproduce the issue

  1. Run JVM with the following arguments: -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:+UseZGC --version
  2. Reports EnableJVMCI set to false:
> ./java.exe -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:+UseZGC --version
[0.003s][warning][gc,jvmci] Setting EnableJVMCI to false as selected GC does not support JVMCI: z gc
java 23.0.2 2025-01-21
Java(TM) SE Runtime Environment Oracle GraalVM 23.0.2+7.1 (build 23.0.2+7-jvmci-b01)
Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 23.0.2+7.1 (build 23.0.2+7-jvmci-b01, mixed mode)

Describe GraalVM and your environment:

  • GraalVM version (latest snapshot builds can be found here), or commit id if built from source: EE 23.0.2+7.1, CE 23.0.2+7.1
  • JDK major version: 23 / 21
  • OS: Windows 11 24H2 / Linux (Arch Linux)
  • Architecture: AMD64
@shanoaice shanoaice added the bug label Feb 9, 2025
@shanoaice shanoaice changed the title ZGC JIT Support Lost on GraalVM 23 ZGC JIT Support Lost on GraalVM 23 and 21 Feb 9, 2025
@oubidar-Abderrahim oubidar-Abderrahim self-assigned this Feb 10, 2025
@oubidar-Abderrahim
Copy link
Member

Hi, Thank you for reporting this, you shared that this issue happens as well on JDK21, can you share the exact version you've tested?
I tested with Oracle GraalVM for JDK 21.0.6 on Windows machine and do not see this issue

@shanoaice
Copy link
Author

Hi, Thank you for reporting this, you shared that this issue happens as well on JDK21, can you share the exact version you've tested? I tested with Oracle GraalVM for JDK 21.0.6 on Windows machine and do not see this issue

Oh I forgot a detail. Non-generational ZGC seems to be fine on JDK 21, but if I add the extra parameter -XX:+ZGenerational the problem shows up again. I think this happens on JDK 23 because Generational ZGC has become the default over non-generational one?

I have also tested with Oracle GraalVM 23.0.2+7.1, if I use ./java.exe -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:+UseZGC -XX:-ZGenerational --version to turn off generational ZGC, JVMCI become normal again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants