RFR: 8288979: Improve CLDRConverter run time [v2]
Daniel Jeliński
djelinski at openjdk.org
Wed Jun 22 17:30:48 UTC 2022
> This PR improves the performance of deduplication done by ResourceBundleGenerator.
>
> The original implementation compared every pair of values, requiring O(n^2) time. The new implementation uses a HashMap to find duplicates, trading off some extra memory consumption for O(n) computational complexity. In practice the time to generate jdk.localedata on my Linux VM files dropped from 14 to 8 seconds.
>
> The resulting files (under build/support/gensrc/java.base and jdk.localedata) have different contents; map iteration order depends on the insertion order, and the insertion order of the new implementation is different from the original.
> The files generated before and after this change have the same size.
Daniel Jeliński has updated the pull request incrementally with one additional commit since the last revision:
Use instanceof pattern matching
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/9243/files
- new: https://git.openjdk.org/jdk/pull/9243/files/c3743d18..6cb47724
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=9243&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=9243&range=00-01
Stats: 5 lines in 1 file changed: 0 ins; 1 del; 4 mod
Patch: https://git.openjdk.org/jdk/pull/9243.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/9243/head:pull/9243
PR: https://git.openjdk.org/jdk/pull/9243
More information about the build-dev
mailing list