RFR: 8288979: Improve CLDRConverter run time [v2]
Naoto Sato
naoto at openjdk.org
Wed Jun 22 21:51:42 UTC 2022
On Wed, 22 Jun 2022 17:30:48 GMT, Daniel Jeliński <djelinski at openjdk.org> wrote:
>> 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
Thanks for the refactoring Daniel. Removing the leftover `List` was a bonus.
-------------
PR: https://git.openjdk.org/jdk/pull/9243
More information about the core-libs-dev
mailing list