https://www.tomshardware.com/news/intel ... in-silicon
The reason would be that they want you to buy a big expensive Xeon if you want 512 bit vector instructions, not that it wouldn't work on the cpu architecture as they claimed (vendors were turning it on with firmware lol) so they permanently sabotaged it on them going forward.Intel's support for AVX-512 instructions with its Alder Lake processors has been a confusing affair. The company initially claimed the feature wouldn't work on its new 12th Gen processors and then backtracked when motherboard vendors found multiple workarounds to enable the commands. After a bit of cat and mouse with motherboard vendors that built new firmware to enable the feature despite Intel's attempts at disabling it, the company has finally decided to deploy the nuclear option and fuse off AVX-512 support entirely inside newer revisions of the Alder Lake chips.
-------------------------------
Related, I found a cool awk script to determine which x86_64 sub arch levels are supported. I didn't need it (I can look myself and already knew that) but I like clever little scripts
Code: Select all
#!/usr/bin/awk -f
BEGIN {
while (!/flags/) if (getline < "/proc/cpuinfo" != 1) exit 1
if (/lm/&&/cmov/&&/cx8/&&/fpu/&&/fxsr/&&/mmx/&&/syscall/&&/sse2/) level = 1
if (level == 1 && /cx16/&&/lahf/&&/popcnt/&&/sse4_1/&&/sse4_2/&&/ssse3/) level = 2
if (level == 2 && /avx/&&/avx2/&&/bmi1/&&/bmi2/&&/f16c/&&/fma/&&/abm/&&/movbe/&&/xsave/) level = 3
if (level == 3 && /avx512f/&&/avx512bw/&&/avx512cd/&&/avx512dq/&&/avx512vl/) level = 4
if (level > 0) { print "CPU supports x86-64-v" level; exit level + 1 }
exit 1
}
Code: Select all
CPU supports x86-64-v3