4 ms·
Am I missing something? Intel submitted a patch in 2017 that enabled support for a feature that was supported in their processors. 2 years later, AMD still hasn
by rgbrenner 7y ago
Am I missing something? Intel submitted a patch in 2017 that enabled support for a feature that was supported in their processors. 2 years later, AMD still hasn't made processors that support one of those features (AVX512), and only recently released processors that met the requirements for the other haswell test... And somehow this is labeled "cripple AMD"?
It would be one thing if Intel did this while AMD had processors that worked on it.. but they didn't. And code cannot tell the future. That's why we have programmers. They're supposed to change the code when it needs to be changed.
- FartyMcFarter 7y ago> And code cannot tell the future. In this case it doesn't need to, I believe. There are ways to find out at runtime which instruction sets are supported, in a vendor-agnostic way.
- arthur2e5 7y ago"Code cannot tell the future" is also the 2009 excuse Intel gave for icc not supporting processors that are GenuineIntel but not Family 6, incidentally. History is wonderful, isn't it? Back in the days we already knew what the still-current best practice to see what flags a CPU has is.
- JustFinishedBSG 7y agoYou can't expect Intel to know about obscure features like CPU feature flags, it's not like they invented it.... oh.
- adrian_b 7y ago"only recently released processors that met the requirements for the other haswell" This is false. Zen was introduced in Q1 2017, before that patch was written and it already implemented all the useful parts of the Skylake instruction set (and also the SHA extension not implemented by Skylake). The fact that the CPU vendor should not be used when testing for CPU features was already discussed a lot, many years ago, so someone of the library maintainers should have noticed this bug and removed the inappropriate test. About AMD not supporting yet AVX-512, that is far less annoying than the fact that Intel does not support AVX-512 yet in any of their CPUs which are actually competitive in their target market (Ice Lake is worse than Comet Lake, Cascade Lake is worse than Epyc 2).
- stochastic_monk 7y agoFor me, skylake is useful because of AVX512{dq,bw}.
- adrian_b 7y agoSkylake (i.e. Skylake, Kaby Lake and so on up to Comet Lake) does not support any AVX-512 instructions. Only Knights Landing, Knights Mill, Skylake Server, Cascade Lake, Cannon Lake and Ice Lake support AVX-512. What is called "Skylake Server" in the Intel documents, includes products sold under various names, i.e. Xeon Scalable, Xeon W, Xeon D-2xxx and Skylake-X (HEDT). I assume that you were thinking about Skylake X, but those processors are a very small fraction of a percent in comparison with all the processors using the Skylake microarchitecture, which were sold since 2015 until now, so one should never use "Skylake" to speak about "Skylake Server" a.k.a. "Skylake X", because this is very misleading.
- stochastic_monk 7y agoI see, thank you. I’ve only used skylake as skx, which just reflects what architectures I have access to.