RFR: 8341527: AVX-512 intrinsic for SHA3 [v4]

Ferenc Rakoczi duke at openjdk.org
Tue Oct 22 11:47:38 UTC 2024


On Wed, 16 Oct 2024 16:58:07 GMT, Ferenc Rakoczi <duke at openjdk.org> wrote:

>> This is not a review but I've run some testing with the current patch and found the following two failures on linux-x64-debug:
>> 
>> #### Failure 1
>> Tests: 
>> - `testlibrary_tests/ir_framework/tests/TestCPUFeatureCheck.java`
>>   - Additional flags: `-XX:+UseParallelGC -XX:+UseNUMA`
>> - `compiler/loopopts/superword/TestDependencyOffsets.java`
>>   - Additional flags: `-ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:+TieredCompilation`
>> ```	
>> CPU: total 12 (initial active 12) (6 cores per cpu, 2 threads per core) family 6 model 106 stepping 6 microcode 0x1, cx8, cmov, fxsr, ht, mmx, 3dnowpref, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, lzcnt, tsc, avx, avx2, aes, erms, clmul, bmi1, bmi2, adx, avx512f, avx512cd, sha, fma, clflush, hv, rdtscp, rdpid, fsrm, f16c, pku, ospke
>> CPU Model and flags from /proc/cpuinfo:
>> model name	: Intel(R) Xeon(R) Platinum 8358 CPU @ 2.60GHz
>> flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq vmx ssse3 fma cx16 pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves nt_good wbnoinvd arat vnmi avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid fsrm md_clear arch_capabilities
>> 
>> 
>> Failure:
>> 
>> #
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> #  Internal Error (/opt/mach5/mesos/work_dir/slaves/a4a7850a-7c35-410a-b879-d77fbb2f6087-S144302/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/d6cec7c3-7401-41e9-aaad-f45b38c7a9e7/runs/9e85fc0d-9d6b-426f-b5d8-e84e2daa4c8c/workspace/open/src/hotspot/cpu/x86/assembler_x86.cpp:2979), pid=1550324, tid=1550336
>> #  Error: assert(VM_Version::supports_avx512dq()) failed
>> .....
>> Command Line: -Djava.library.path=/opt/mach5/mesos/work_dir/jib-master/install/2024-10-15-1659164.christian.hagedorn.jdk-test/linux-x64-debug.test/hotspot/jtreg/native -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:MaxRAMPercentage=4.1...
>
>> This is not a review but I've run some testing with the current patch and found the following two failures on linux-x64-debug:
>> 
> 
> @chhagedorn could you send me the mach5 command line (or other means) to run these tests?

> @ferakocz I think you need to enble SHA3 testing in jtreg tests we have by modifying: https://github.com/openjdk/jdk/blob/master/test/hotspot/jtreg/compiler/testlibrary/sha/predicate/IntrinsicPredicates.java#L106
> 
> [JDK-8252204](https://bugs.openjdk.org/browse/JDK-8252204) added several C2 tests for SHA3 intrinsics in `test/hotspot/jtreg/compiler/intrinsics/sha`. Please make sure your changes passed those tests.

I did that, plus restored the error message, now all the tests suggested by @chhagedorn pass.

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

PR Comment: https://git.openjdk.org/jdk/pull/21352#issuecomment-2429056363


More information about the hotspot-dev mailing list