我正在尝试使用gcc编译使用icpc和mkl数学库编译的大代码。
以下是需要AVX的代码。
Resources.Theme theme
我在编译时启用了-mavx标志,如某些帖子所示,以启用高级矢量化。 _mm256_set_m128d未在immintrin.h中定义,也未在gcc包含文件(版本5.3)中定义。
我发现它可用于intel头文件 - 在intel编译器提供的immintrin.h头文件中。
有关如何解决此问题的任何建议? 谢谢!
答案 0 :(得分:1)
您可以像这样定义自己的宏:
#define _mm256_set_m128d(vh, vl) \
_mm256_insertf128_pd(_mm256_castpd128_pd256(vl), (vh), 1)
将其括在合适的#ifdef
/ #endif
内,以便它仅为gcc定义。