> 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:

  Sort output

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9243/files
  - new: https://git.openjdk.org/jdk/pull/9243/files/6cb47724..8d26e537

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=9243&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=9243&range=01-02

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 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

Reply via email to