RFR: 8332457: Examine startup overheads from JDK-8294961 [v19]

Adam Sotona asotona at openjdk.org
Wed Jun 5 12:21:59 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>

Benchmark                                 Mode  Cnt   Score   Error  Units
ProxyGenBench.generate100Proxies(master)    ss   10  15.295 ? 5.435  ms/op
ProxyGenBench.generate100Proxies(#19410)    ss   10  11.761 ? 3.323  ms/op
Finished running test 'micro:.+ProxyGenBench.+'

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

PR Comment: https://git.openjdk.org/jdk/pull/19410#issuecomment-2149694078


More information about the core-libs-dev mailing list