Intel, Intrinsic Guide, here. This looks to be the basis for HPC programming currently. You can get MKL to wrap these intrinsics with vectorized math functions like vexp() then you can produce code like the Dr. Johnson example we covered previously. If you want to figure out how SIMD scatter gather works, I think you are going through the AVX-512 intrinsics. The compatibility with previous versions of SSE for older processors looks like a nightmare to be avoided. I like the part where they say “without the need to write assembly code” and then list all the extension function calls that you need to decipher.
The Intel Intrinsics Guide is an interactive reference tool for Intel intrinsic instructions, which are C style functions that provide access to many Intel instructions – including Intel® Streaming SIMD Extensions (Intel® SSE), Intel® Advanced Vector Extensions (Intel® AVX), and more – without the need to write assembly code.
This guide provides searching and filtering functionality, in addition to reference information for every intrinsic. Reference information includes synopsis, description, functional operation, and corresponding instruction(s).
Intel® Intrinsics Guide currently includes intrinsics for the following technologies:
- Intel® SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2
- Intel® AVX, AVX2, Fused Multiply Add (FMA)
- Intel® AVX-512
- Short Vector Math Library (SVML) [128-bit and 256-bit only]
- AES-NI, BMI1, BMI2, CFLCT, FP16C, FSGSBASE, FXSR, INVPCID, LZCNT, Intel® Memory Protection Extensions (Intel® MPX), PCLMULQDQ, POPCNT, RDRAND, RDSEED, RDTSCP, RTM, Intel® SHA Extensions, TSC, XSAVE, XSAVEOPT
In addition to these technologies, the Intrinsic Guide includes certain intrinsics that don’t correspond to a specific instruction or technology.
Download Intel® Intrinsics Guide
Latest version: 3.0.1, released 7/23/2013