RFR: 8353175: Eliminate double iteration of stream in FieldDescriptor reinitialization [v7]
Frederic Parain
fparain at openjdk.org
Fri Apr 11 12:36:33 UTC 2025
On Thu, 10 Apr 2025 14:10:14 GMT, Radim Vansa <rvansa at openjdk.org> wrote:
>> On the reproducer https://bugs.openjdk.org/secure/attachment/113985/CCC.java my local testing shows these numbers:
>>
>> ### JDK-17
>>
>> $ hyperfine -w 5 -r 10 '/path/to/jdk-17/bin/java -cp /tmp/ CCC'
>> Benchmark 1: /path/to/jdk-17/bin/java -cp /tmp/ CCC
>> Time (mean ± σ): 32.5 ms ± 0.9 ms [User: 27.5 ms, System: 10.6 ms]
>> Range (min … max): 31.1 ms … 33.7 ms 10 runs
>>
>> ### JDK-25 before the change applied
>>
>> $ hyperfine -w 5 -r 10 '/path/to/jdk-25/build/linux-x86_64-server-release/images/jdk/bin/java -cp /tmp/ CCC'
>> Benchmark 1: /path/to/jdk-25/build/linux-x86_64-server-release/images/jdk/bin/java -cp /tmp/ CCC
>> Time (mean ± σ): 101.6 ms ± 1.5 ms [User: 96.8 ms, System: 14.6 ms]
>> Range (min … max): 99.0 ms … 104.5 ms 10 runs
>>
>> ### JDK-25 with this patch
>>
>> $ hyperfine -w 5 -r 10 '/path/to/jdk-25/build/linux-x86_64-server-release/images/jdk/bin/java -cp /tmp/ CCC'
>> Benchmark 1: /path/to/jdk-25/build/linux-x86_64-server-release/images/jdk/bin/java -cp /tmp/ CCC
>> Time (mean ± σ): 75.8 ms ± 1.2 ms [User: 69.8 ms, System: 16.0 ms]
>> Range (min … max): 73.8 ms … 78.2 ms 10 runs
>
> Radim Vansa has updated the pull request incrementally with one additional commit since the last revision:
>
> Revert iterator change
Changes look good to me.
Thank you for finding and fixing this performance issue.
Tests tier1 to tier3 didn't show any issue.
-------------
Marked as reviewed by fparain (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/24290#pullrequestreview-2760223621
PR Comment: https://git.openjdk.org/jdk/pull/24290#issuecomment-2796787059
More information about the hotspot-dev
mailing list