RFR: 8319429: Don't zero out mxcsr flag bits on ECore
David Holmes
dholmes at openjdk.org
Mon Nov 6 05:04:13 UTC 2023
On Fri, 3 Nov 2023 22:32:44 GMT, Volodymyr Paprotski <duke at openjdk.org> wrote:
> Improves vector rounding on ECore about 10x
>
> (BEFORE) FpRoundingBenchmark.test_round_float 2048 thrpt 3 40.912 ± 0.044 ops/ms
> (AFTER ) FpRoundingBenchmark.test_round_float 2048 thrpt 3 431.682 ± 0.727 ops/ms
Changes requested by dholmes (Reviewer).
src/hotspot/cpu/x86/vm_version_x86.cpp line 864:
> 862: (_model == 0x97 || _model == 0xAC || _model == 0xAF)) {
> 863: FLAG_SET_DEFAULT(DoEcoreOpt, true);
> 864: }
And what should happen if the flag is set true by the user and there is no Ecore? What affect will that have? Should it be allowed?
src/hotspot/share/runtime/globals.hpp line 574:
> 572: product(bool, DoEcoreOpt, false, DIAGNOSTIC, \
> 573: "Perform Ecore Optimization") \
> 574: \
I think this should be a CPU specific flag in ./cpu/x86/globals_x86.hpp (similar to how we have linux specific flags in ./os/linux/globals_linux.hpp). Also the description should clarify that the default is actually true for Ecore systems, and false elsewhere.
-------------
PR Review: https://git.openjdk.org/jdk/pull/16504#pullrequestreview-1714266950
PR Review Comment: https://git.openjdk.org/jdk/pull/16504#discussion_r1382784036
PR Review Comment: https://git.openjdk.org/jdk/pull/16504#discussion_r1382783715
More information about the hotspot-dev
mailing list