RFR: 8327247: C2 uses up to 2GB of RAM to compile complex string concat in extreme cases

Thomas Stuefe stuefe at openjdk.org
Fri Apr 12 06:36:43 UTC 2024


On Tue, 9 Apr 2024 12:01:49 GMT, Claes Redestad <redestad at openjdk.org> wrote:

> There are a few trade-offs at play here which influence the choice of threshold. The simple high arity strategy will for example not see any reuse of LambdaForms but strictly always generate a class per indy callsite, which means we might end up with a higher total number of classes generated and loaded in applications if we set this value too low

Stupid question maybe, this would be one LambdaForm per argument set? E.g. would two invocations with the same arguments re-use the same LambdaForm?

I would like to get an understanding of the numbers of classes involved for these solutions, and whether they are bounded. Mostly for Lilliput reason.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/18690#issuecomment-2051082454


More information about the core-libs-dev mailing list