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

Queued methods not reset during code cache flush #20629

Open
JamesKingdon opened this issue Nov 18, 2024 · 1 comment
Open

Queued methods not reset during code cache flush #20629

JamesKingdon opened this issue Nov 18, 2024 · 1 comment

Comments

@JamesKingdon
Copy link
Contributor

JamesKingdon commented Nov 18, 2024

Tested with 17.0.12.1 on Power linux, but problem is likely common to all versions and platforms.

When running in FSD mode class redefinition causes all methods to be unloaded from the code cache. However the existing code fails to reset the extra field for methods that have been queued but not yet compiled. This means that the queued methods can never be compiled during the remainder of the run and this can cause a significant performance penalty. For example,

Before #20628:

Threads     Throughput
    1         3653
    2         7501
    3        11334
    4        16511

After #20628:

Threads     Throughput
    1         6702
    2        14574
    3        21913
    4        29225

I have created #20628 for this problem.

Copy link

Issue Number: 20629
Status: Open
Recommended Components: comp:vm, comp:test, comp:build

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

No branches or pull requests

1 participant