RFR: 8332457: Examine startup overheads from JDK-8294961 [v19]
Adam Sotona
asotona at openjdk.org
Wed Jun 5 12:14:58 UTC 2024
On Wed, 5 Jun 2024 12:00:25 GMT, Adam Sotona <asotona at openjdk.org> wrote:
>> [JDK-8294961](https://bugs.openjdk.org/browse/JDK-8294961) changed to use classfile API for reflection proxy-generation. Actual implementation of `ProxyGenerator` is focused on performance, however it causes JDK bootstrap regressions. `ProxyGenerator.TEMPLATE` class model is statically created and each proxy class is transformed from the template.
>>
>> This patch is intended to examine plain proxy generation impact on performance and JDK bootstrap (vs proxy transformation from template).
>>
>> The generated proxy is migrated from static initialization to CONDY bootstrap.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request incrementally with one additional commit since the last revision:
>
> An assortment of potential improvements
>
> Co-authored-by: Claes Redestad <redestad at openjdk.org>
Name Cnt Base Error Test Error Unit Change
Perfstartup-JMH 20 40.000 ± 0.000 40.000 ± 0.000 ms/op 1.00x (p = 0.000 )
:.cycles 236365197.300 ± 3630668.331 224263724.700 ± 4160144.635 cycles 0.95x (p = 0.000*)
:.instructions 602001346.250 ± 3134647.039 574894340.900 ± 2297441.310 instructions 0.95x (p = 0.000*)
:.taskclock 60.000 ± 0.000 58.500 ± 3.181 ms 0.98x (p = 0.083 )
* = significant
-------------
PR Comment: https://git.openjdk.org/jdk/pull/19410#issuecomment-2149681885
More information about the core-libs-dev
mailing list