
Intel's “Cripple AMD” Function - jigglypuffs
https://www.agner.org/optimize/blog/read.php?i=49&v=f
======
skunkworker
It's interesting how this is still a major issue today, Last month I learned
about the Matlab AMD crippling issue. With the workaround AMD performance on a
3960x increased by 30%.

"[...] the Intel MKL uses a discriminative CPU Dispatcher that does not use
efficient codepath according to SIMD support by the CPU, but based on the
result of a vendor string query. If the CPU is from AMD, the MKL does not use
SSE3-SSE4 or AVX1/2 extensions but falls back to SSE1 no matter whether the
AMD CPU supports more efficient SIMD extensions like AVX2 or not."

[https://www.extremetech.com/computing/302650-how-to-
bypass-m...](https://www.extremetech.com/computing/302650-how-to-bypass-
matlab-cripple-amd-ryzen-threadripper-cpus)

[https://www.reddit.com/r/Amd/comments/e24jqp/extremetech_how...](https://www.reddit.com/r/Amd/comments/e24jqp/extremetech_how_to_bypass_matlabs_cripple_amd_cpu/)

~~~
colejohnson66
Wasn’t there a lawsuit about the ICC doing this a few years ago?

------
dr_zoidberg
For these kind of stuff it was particularly shocking (or telling of the raw
power Zen 2 achieves) that AMD Epycs surpassed Intel in one of their own
benchmarks this year.

------
downerending
"Windows ain't done 'til Lotus won't run."

------
tracker1
Not sure if it's still the case... would be interesting to see a post-compiler
tool that bypasses the GenuineIntel checks for certain cases.

~~~
flyingfences
Intel is still doing it [1], at least in some of their libraries.

[1] [https://www.extremetech.com/computing/302650-how-to-
bypass-m...](https://www.extremetech.com/computing/302650-how-to-bypass-
matlab-cripple-amd-ryzen-threadripper-cpus)

------
BubRoss
This is a message board thread from 2009 FYI.

~~~
Phylter
There is a recent post discussing the idea that AMD Phenom processors are
unfairly disadvantaged because they do not support SSE3 and modern games are
targeting SSE3/4.2. I think that's what this post it trying to point out. I
really don't see any modern relevance to this post though since modern AMD
processors support these instructions.

I'd still be curious to know if Intel is doing this though.

I guess there are some other Ryzen related conversations too that are
relevant.

~~~
flyingfences
> modern AMD processors support these instructions

... and that's the whole point of the post. AMD CPUs support the instructions,
but Intel's compiler ignores that support on non-Intel processors.

