0

My CPU supports the following technologies: MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, and AVX.

When I write my code and check for hardware support, can I assume things like "If the processor supports AVX, it ALWAYS supports all of these other technologies"?

Which of these technologies are considered super-sets of the others and which ones are stand-alone and not necessarily packaged with the other ones?

Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
HesNotTheStig
  • 549
  • 1
  • 4
  • 9
  • Yes, AVX requires support for all of Intel's previous SSE instructions, but maybe not necessarily AES or PCLMUL, IIRC. And SSE1 implies MMX. I think there's a duplicate of this, looking now. – Peter Cordes Oct 06 '17 at 01:40
  • Are you interested only in SIMD, or also in extensions like BMI2 and popcnt? (`popcnt` is technically separate from SSE4.2). – Peter Cordes Oct 06 '17 at 01:41
  • Yeah, I saw the duplicate in the related thing AFTER I made the post. I appreciate the help anyway. – HesNotTheStig Oct 06 '17 at 01:41

0 Answers0