-
Notifications
You must be signed in to change notification settings - Fork 331
Use NI mode by default unless an env variable is set #12501
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
Conversation
The memory options work for Native Image as well (I believe - at least seem to), and are useful so would be better to have these as separate options. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not really convinced about this change. People tend to set their options globally or reuse them in various scripts. So this can cause more harm than good by leading to some unexpected behaviour. I'd rather we make this explicit.
How do you set memory options work for Native Image? Btw. I've noticed that That's quite confusing and it will have to be changed anyway. |
|
a6b5790
to
b6f3d00
Compare
…eWhenEnsoJvmOpts12483
Some of our users are using this flag as it is what we have provided so far - we can provide an alternative to adjust the memory settings which would allow us more control. |
With the change in this PR such users should see (completely) compatible behavior. If they have
The GraalVM Launcher API differentiates between Such a scheme is standard for all GraalVM language launchers and we should mimic it. We couldn't do it so far, as the scheme only works if the native mode is the default one. A bit more investigation into behavior of the GraalVM launchers is needed as we aren't directly using the launcher infrastructure ... ... just trying to mimic it ourselves. |
Nightly release CI run scheduled.
Not sure where exactly the problem is. When I do:
e.g. the |
James has just provided a link to https://www.graalvm.org/latest/reference-manual/native-image/optimizations-and-performance/MemoryManagement/#java-heap-size
Thus I assume following example is the way to set memory options work for Native Image with enso$ export ENSO_LAUNCHER=native
enso$ export ENSO_JVM_OPTS=-Xms2m -Xmx10m -Xmn1m
enso$ ./project-manager The above then launches |
Closing unmerged as:
|
Pull Request Description
Changes
project-manager
to executeenso
launcher in native image mode by default. Provides an opt-out (as requested by #12483) by honoringENSO_JVM_OPTS
in theproject-manager
. IfENSO_JVM_OPTS
variable is provided, theenso
launcher is executed in JVM mode (as was the case so far).Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:
ENSO_JVM_OPTS
is mostly development only propertyScala,