Reference manual/tutorial for SIMD intrinsics?

BD at Rivenhill picture BD at Rivenhill · Jul 28, 2011 · Viewed 10.3k times · Source

I'm looking into using these to improve the performance of some code but good documentation seems hard to find for the functions defined in the *mmintrin.h headers, can anybody provide me with pointers to good info on these?

EDIT: particularly interested in a very basic tutorial on how to get started.

Answer

Paul R picture Paul R · Jul 28, 2011

There's a handy Intel Intrinsics Guide for Mac/Linux/Windows at http://software.intel.com/en-us/articles/intel-intrinsics-guide - it covers all Intel SIMD stuff from MMX through the various flavours of SSE up to AVX2 et al.

You can also get the following PDFs from Intel:

  • Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 2A: Instruction Set Reference, A-M (253666-021)

  • Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 2B: Instruction Set Reference, N-Z (253667-021)

  • Intel® SSE4 Programming Reference (D91561-001)

UPDATE

There is now an online version of the intrinsics guide, so you no longer need to install anything, and it's always up-to-date.