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

Add Deprecated warning for using Xlp, and Xlp<size> using Java 11+ #9187

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

AlenBadel
Copy link
Contributor

Adding warning for any users using -Xlp, and -Xlp<size> using Java 11+.
Per Docs, these options are slated to be deprecated in all versions above Java 8. Since the functionality needs to be supported for Java 8, this should be a warning until support for Java 8 officially ends.

See: https://www.eclipse.org/openj9/docs/xlp/

Signed-off-by: AlenBadel [email protected]

@AlenBadel
Copy link
Contributor Author

FYI @pshipton

Adding warning for any users using -Xlp, and -Xlp<size> using Java 11+.
Per Docs, these options are slated to be deprecated in all versions above Java 8. Since the functionality needs to be supported for Java 8, this should be a warning until support for Java 8 officially ends.

Signed-off-by: AlenBadel <[email protected]>
@pshipton
Copy link
Member

pshipton commented Apr 8, 2020

What is the equivalent option to -Xlp?

Not sure if there are still tests which use these options. If there are, the tests may start failing due to the warning.

@AlenBadel
Copy link
Contributor Author

What is the equivalent option to -Xlp?

Well the doc mentions to use -Xlp:codecache:pagesize=<size>, and -Xlp:objectheap:pagesize=<size>. Which is equivalent to -Xlp<size>.
However, -Xlp has no equivalent.
The proposed -XX:+UseLargePages is the closest impact. See: #4930.

Not sure if there are still tests which use these options. If there are, the tests may start failing due to the warning.

I'll double check sanity on my side to verify this.

@pshipton
Copy link
Member

pshipton commented Apr 8, 2020

Seems we should get -XX:+UseLargePages merged, and update any tests using -Xlp to use it before starting to print a warning.

@pshipton
Copy link
Member

pshipton commented Apr 8, 2020

I'll double check sanity on my side to verify this.

We also have extended.functional testing that may use it.

@andrewcraik
Copy link
Contributor

-Xlp:codecache:pagesize=, and -Xlp:objectheap:pagesize= are the same? They are talking about the JIT codecache and the heap - I didn't think they were the same and could be adjusted independently... FYI @vijaysun-omr

@AlenBadel
Copy link
Contributor Author

AlenBadel commented Apr 9, 2020

-Xlp:codecache:pagesize=, and -Xlp:objectheap:pagesize= are the same? They are talking about the JIT codecache and the heap - I didn't think they were the same and could be adjusted independently... FYI @vijaysun-omr

The parsing code translates -Xlp<size> to exactly -Xlp:codecache:pagesize=<size> and -Xlp:objectheap:pagesize=<size>. So they should be exactly equivalent.

NOTE: On Z/OS the equivalent assortment would be -Xlp:codecache:pagesize=<size>,pageable and -Xlp:objectheap:pagesize=<size>,nonpageable.

-Xlp itself sets the page size to a series of pre-configured sizes if that page is provisioned on the system. This option only applies to the objectheap, and has no impact on the codecache. While the proposed -XX:+UseLargePages would equivalently change the objectheap size, additionally changing the codecache page size in the same fashion.

The only other difference is that on Z/OS. Where -Xlp1M utilized fixed 1M pages over pageable. That behaviour would cease with the deprecation of this option. Since the proposed -XX:+UseLargePages would favor pageable over fixed.

@dmitripivkine
Copy link
Contributor

The parsing code translates -Xlp<size> to exactly -Xlp:codecache:pagesize=<size> and -Xlp:objectheap:pagesize=<size>. So they should be exactly equivalent.

This is not accurate statement. For some platforms (ZOS for instance) -Xlp<size> and '-Xlp:objectheap:pagesize=' behaves differently.

@pshipton
Copy link
Member

pshipton commented Apr 9, 2020

@joransiu fyi

@AlenBadel
Copy link
Contributor Author

This is not accurate statement. For some platforms (ZOS for instance) -Xlp<size> and '-Xlp:objectheap:pagesize=' behaves differently.

Could you elaborate?

@dmitripivkine
Copy link
Contributor

dmitripivkine commented Apr 9, 2020

This is not accurate statement. For some platforms (ZOS for instance) -Xlp<size> and '-Xlp:objectheap:pagesize=' behaves differently.

Could you elaborate?

Sorry, don't mind please. I thought about omitted parts of -Xlp like <size> or pageable. The only formal difference on ZOS is -Xlp:objectheap:pagesize= must have [non]pageable modifier which old format -Xlp does not have

@AlenBadel
Copy link
Contributor Author

Not sure if there are still tests which use these options. If there are, the tests may start failing due to the warning.

functional sanity/extended system sanity/extended seems to pass on my end with the warning.

This is simply a warning that echos what has already been published in our docs. I don't think we have any strong justification to wait on merging this given our tests haven't broken.

@pshipton
Copy link
Member

It doesn't seem reasonable to print a warning for a deprecated option when the replacement option -XX:+UseLargePages is not yet available. What action to you expect someone to take when they see the warning?

@genie-openj9
Copy link

Can one of the admins verify this patch?

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

Successfully merging this pull request may close these issues.

5 participants