JDK-8283324 : CLDRConverter run time increased by 3x
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util:i18n
  • Affected Version: 19
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2022-03-17
  • Updated: 2022-04-21
  • Resolved: 2022-04-21
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 19
19 masterFixed
Related Reports
Relates :  
Description
Over the course of the last two years, we've seen a more than 25% regression in build time. I've tracked this down to a handful of individual changes.

On of them is JDK-8176706, which causes build time to go up with 21 seconds on my reference machine.

The sudden increase in build time caused by JDK-8176706 needs to be analyzed, to see if it is possible to avoid. 

This might (or might not) also be related to JDK-8282460, which tracks a microbenchmark performance regression of the JDK since JDK-8176706.
Comments
Changeset: f6e9ca0c Author: Naoto Sato <naoto@openjdk.org> Date: 2022-04-21 22:23:24 +0000 URL: https://git.openjdk.java.net/jdk/commit/f6e9ca0cbe671502b6b3b1d0f8fd86f0928f64ea
21-04-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jdk/pull/8288 Date: 2022-04-18 23:16:18 +0000
20-04-2022

I have analyzed this a bit further. The time it takes to run cldrconverter went from 8 to 23 seconds, on my machine. Since this is part of java.base-gensrc, it is on the "long pole" for basically anything you'd ever want to build (except hotspot). I had a cursory look at the source code changed, but could not see any suspicious code that could account for this 300% increase in runtime. Perhaps there's just some stupid code that slipped in. But if the regression is caused by the tool actually having a lot more work to do, we might need to consider making it multithreaded, since this alone blocks the entire build from progressing.
23-03-2022

Thanks [~ihse] for taking a stab at it. Some are expected as it is newly parsing CLDR xml sources that are not used before, but 300% increase is not expected. Will take a look.
23-03-2022