RFR: JDK-8320448 Accelerate IndexOf using AVX2 [v7]

Vladimir Kozlov kvn at openjdk.org
Wed Jan 17 00:15:52 UTC 2024


On Tue, 16 Jan 2024 23:51:15 GMT, Scott Gibbons <sgibbons at openjdk.org> wrote:

>> src/hotspot/cpu/x86/stubGenerator_x86_64.cpp line 4111:
>> 
>>> 4109:   if ((UseAVX == 2) && EnableX86ECoreOpts && VM_Version::supports_avx2()) {
>>> 4110:     StubRoutines::_string_indexof = generate_string_indexof();
>>> 4111:   }
>> 
>> What motivation for this extensive new code only for avx2? 30% is nice (for some cases) but it is enabled only for AVX2 and not for avx512 which all modern x86 CPUs have so the code will not be used.
>> 
>> Or it is typo?
>
> This is acceleration for AVX2, replacing the pcmpestri instruction which is microcoded on E-cores and causes significant performance impact.  I am working on a pared-down implementation and should update this PR in a couple of days.

Thank you for explanation.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16753#discussion_r1454238988


More information about the core-libs-dev mailing list