RFR: JDK-8255059: Regressions >5% in all Javadoc benchmarks in 16-b19 [v2]

Jonathan Gibbons jjg at openjdk.java.net
Fri Feb 12 00:05:39 UTC 2021


On Mon, 25 Jan 2021 14:25:59 GMT, Hannes Wallnöfer <hannesw at openjdk.org> wrote:

>> I have narrowed down the performance regression to the modularity check introduced in JDK-8240169. Since this check is not necessary if we know that the element list's modularity matches that of the library we can omit the modularity check when linking to platform libraries using our own element lists. 
>> 
>> Unfortunately, while recent element lists match the modular JDK libraries, the ones for JDK 9 and 10 do not. The patch therefore adds module tags to the lists for these two versions. For JDK 10, this is a relatively simple change because the packages were already ordered by module. For JDK 9 the change unfortunately requires changing the order of packages. I've written a small utility program to convert the list and have double-checked its content matches the old list.
>> 
>> Performance should be very close to where it was before the regression. I haven't run the benchmarks on the final version because I currently have some background tasks running, but I will do so eventually before integration.
>
> Hannes Wallnöfer has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix incorrect condition for JDK 9 and 10

OK, I see why the old code might be slow (checking all those package names), so I understand why this is a good fix.

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

Marked as reviewed by jjg (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/2221


More information about the javadoc-dev mailing list