x86兼容加速器Intel Xeon Phi中是否有SIMD(SSE / AVX)指令?

时间:2014-03-26 18:39:49

标签: intel sse simd avx intel-mic

x86兼容加速器MIC Intel Xeon Phi中是否有SIMD(SSE / AVX)指令?

http://en.wikipedia.org/wiki/Xeon_Phi

1 个答案:

答案 0 :(得分:13)

是的,当前一代的英特尔至强融核协处理器(代号“Knight's Corner”,缩写为KNC)支持称为“英特尔®初始多核指令”的512位SIMD指令集(缩写为英特尔) ® IMCI )。

英特尔IMCI “与”兼容,并且与SSE,AVX,AVX2或AVX-512 ISA不相同。 然而,它正式宣布下一代Xeon Phi计划(代号“Knight's Landing”,缩写 KNL will support AVX-512 ISA

Intel IMCI(由KNC支持)和AVX-512(由KNL支持)均为512位SIMD指令集,支持FMA并允许打包8个双精度或16个单精度浮点数,或16 32位整数(即比AVX或AVX2“多”两倍)。

虽然 KNC 无法“运行”SSE或AVX二进制文件,但通常无关紧要,因为为了生成您的应用程序二进制文件以便能够在KNC上运行 - 您需要重新编译您的代码使用英特尔C / C ++ / Fortran编译器,已知它可以自动或半自动生成相对有效的矢量代码(用于SSE,AVX,IMCI等),并且还可以根据需要使用IMCI内在函数。

旁注:对于Knights Landing(支持AVX-512),英特尔工具链将不再是唯一的选择,但它可能会继续提供许多优势,包括可靠的显式和自动矢量以及良好的水平与英特尔配置工具集成(请注意AVX-512 analysis中的Intel (Vectorization) Advisor)。

AVX-512 ISA 与SSE,AVX和AVX2兼容。因此,在Xeon上为AVX编译的应用程序将在 KNL 上运行,而在Xeon Phi KNL 上为AVX-512编译的应用程序通常将在 future 代上运行Xeon(将来支持AVX-512)。

使用以下在线指南可以轻松探索AVX,IMCI和未来AVX-512指令集之间的区别:http://software.intel.com/sites/landingpage/IntrinsicsGuide/