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

(0.47.0) Disable TLH prefetching for portable AOT code #20051

Merged
merged 1 commit into from
Aug 23, 2024

Conversation

mpirvu
Copy link
Contributor

@mpirvu mpirvu commented Aug 23, 2024

Current code for x86 disables TLH prefething globally for Intel CPUs newer than Broadwell architecture and enables it globally for Broadwell or older CPUs.
If a container image is generated on a newer architecture, then TLH prefetch will be off and this information is written into the AOT header for the shared class cache embedded in the container. If that container image is run on an older architecture, the JVM will set TLH prefetch off, and the AOT compatibility check will fail, rendering the embedded AOT code useless.

This commit disables TLH prefething for portable AOT code.

Current code for x86 disables TLH prefething globally for
Intel CPUs newer than Broadwell architecture and enables it
globally for Broadwell or older CPUs.
If a container image is generated on a newer architecture,
then TLH prefetch will be off and this information is written
into the AOT header for the shared class cache embedded in the
container. If that container image is run on an older architecture,
the JVM will set TLH prefetch off, and the AOT compatibility
check will fail, rendering the embedded AOT code useless.

This commit disables TLH prefething for portable AOT code.

Signed-off-by: Marius Pirvu <mpirvu@ca.ibm.com>
@mpirvu mpirvu requested a review from dsouzai as a code owner August 23, 2024 16:36
@mpirvu
Copy link
Contributor Author

mpirvu commented Aug 23, 2024

This commit is a cherry-pick from PR #20027

@mpirvu
Copy link
Contributor Author

mpirvu commented Aug 23, 2024

@tajila PR for porting the TLHPrefetch fix into 0.47.0

@tajila tajila merged commit 94a324c into eclipse-openj9:v0.47.0-release Aug 23, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants