-
-
Notifications
You must be signed in to change notification settings - Fork 314
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
Consolidate openjdk tests for openj9 and hotspot #2198
Conversation
- Set paramaters in mk file for j9 and hotspot Signed-off-by: Longyu Zhang <longyu.zhang@ibm.com>
Test Links: jdk16: jdk11: jdk8: |
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.
LGTM
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.
LGTM, the change should also work in AdoptOpenJDK. I would prefer to have some grinders in AdoptOpenJDK so the reviewer can take a look at.
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.
Thanks @LongyuZhang and @llxia - I am very happy these are re-consolidated! We should make sure to announce broadly on OpenJ9 channels, in case people have grown accustomed to the _j9 target names.
I actually have one more question. Targets like jdk_lang against hotspot is running with Mode150 (-XX:+UseCompressedOops ), which looks no harm with this specific option. However as a strategy if later we need use a different mode Mode***, which is specific to openj9). What would it happen? Actually I will launch a grinder with arm32, will this work? it may work if Mode150 is "no" to 32. Faied with Mode1000, not sure. https://ci.adoptopenjdk.net/view/work-in-progress/job/grinder_sandbox/243/console Mode*** is kind of openj9 options adding to hotspot may or may not work. |
Openj9 specific modes should not be used against hotspot. If we need to add an additional openj9 specific mode, then we need to create a separate target for it. Similar to tests in special.system. The purpose of this PR is to consolidate the targets if it is possible. At this point, Mode150, Mode650, Mode1000, and NoOptions are common modes that can be used for both openj9 and hotspot. |
Ok, I forgot Mode150 and Mode 650 are introduced on purpose by #2146 |
For the time being there is no plan to repeat this set of tests with variations that are not common to all. In the event that someone wants to add Noting the behaviour of the different implementations are different. If you run with an option that hotspot does not recognize, it will hard stop and not run. On the reverse, if openj9 encounters an unrecognized option it warns about it and continues to run. |
Not a blocker for merging this PR. Just throw out some thoughts for discussion. If we need to add an additional openj9 specific mode, then we need to create a separate target for it. That means it will depends on developer's knowledge to judge if the Mode*** is vendor specific. And based no that or based on the PR build results to decide if separate target need to be added. There is no extra documents to tell other developers or testers or triagers this information. I think it might be helpful if we can document this information( Mode*** ---> vendor). If we will continue to use Mode story I think https://github.com/AdoptOpenJDK/TKG/blob/master/resources/modes.xml could help. All modes defined here are actually define key-value Mode150:
Is it possible we use envVar to discriminate different Vendor/impl's JAVA_OPTIONS? or adding an element |< vendor> to define which the Mode works with which impl | vendor? Similar to the use of |< vendor> in playlist.xml. This way we will not need to separate targets based on if Mode works or not. Though there will be extra jobs for TKG. Just my two cents. |
Good notes - I had thought about vendor specific variants (and leveraging the modes.xml / ottawa.csv mechanism that already skips for platforms to have TKG skip for impls, strip out modes that can't be used for a particular impl). We can watch to see if we have a use case for having to solve for this problem or not... it could be something lurking in the future. Employing that approach would allow us to utilize more of the functional suite against the hotspot impl, which would be in itself a worthy reason (some functional tests would still be tagged as only openj9/ibm because they use internals, etc, but many are just tagged that way because of the modes in use). |
I believe we are all good on this change, with the follow-up task of announcing it in Slack channels (for awareness of people who may be affected by the reunification of target names). |
@smlambert Thanks for merging this PR. jdk11: jdk8: |
thanks @LongyuZhang ! |
Signed-off-by: Longyu Zhang longyu.zhang@ibm.com