[15] RFR (S): 8238696: x86: Enumerate all detected CPU features in VM_Version feature string

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Feb 7 16:52:36 UTC 2020


http://cr.openjdk.java.net/~vlivanov/8238696/webrev.00/
https://bugs.openjdk.java.net/browse/JDK-8238696

Abstract_VM_Version::features_string() doesn't contain all the CPU 
features detected by the JVM on x86 (for example, for AVX-512 only 
AVX-512F is included as "evex").

The fix adds missing features to the list [1].

Testing: manual (-Xlog:os+cpu=trace output on different hardware),
          hs-precheckin-comp, hs-tier1, hs-tier2

Best regards,
Vladimir Ivanov

[1] $ java -Xlog:os+cpu=trace -XX:UseAVX=3 -version

...
[0.010s][info][os,cpu] UseSSE=4  UseAVX=3  UseAES=1  MaxVectorSize=64
...
[0.011s][info][os,cpu] CPU:total 8 (initial active 8) (4 cores per cpu, 
2 threads per core) family 6 model 85 stepping 4, cmov, cx8, fxsr, mmx, 
sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, vzeroupper, avx, avx2, 
aes, clmul, erms, rtm, 3dnowpref, lzcnt, ht, tsc, bmi1, bmi2, adx, 
avx512f, avx512dq, avx512cd, avx512bw, avx512vl, fma, clflush, 
clflushopt, clwb
...
[0.011s][info][os,cpu] 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 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 pti ssbd 
ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase 
tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq 
rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt 
xsavec xgetbv1 xsaves arat umip pku ospke md_clear
...


More information about the hotspot-dev mailing list