我在 Ubuntu-64bit 12.04LTS 上运行我的笔记本电脑(coreI5)。我正在尝试进入 AVX 以生成一些随机数。
在 Eclipse-CDT 中,我使用 Linux GCC 创建了一个新的 C++“Hello World”项目。我包含了 immintrin.h 并尝试加载 __m256 类型的内容。
编译器抛出错误:
Type '__m256' was not declared in this scope
我查看了 immintrin.h 并查找了 avxintrin.h,以防万一出现拼写错误。在 avxintrin.h Eclipse 上单击打开声明时说:
Could not find include file 'avxintrin.h' on include paths
无论如何,该文件在 /usr/lib/gcc/x86_64-linux-gnu/4.6/include/avxintrin.h 中可用。
谁能给我提示,该怎么办?网上没有很多关于 AVX 的教程或帮助。我想我必须对编译器选项或类似的东西进行一些调整(!?)
无论如何,这里是代码:
#include <immintrin.h>
#include <iostream>
using namespace std;
int main() {
float out[8];
float a[8] = { 0.0,1.0,2.0,3.0,4.0,5.0,6.0,7};
__m256 test = _mm256_load_ps(&a[0]);
cout << "" << endl; // prints
return 0;
}
这里的错误:
../src/seminar.cpp:15:2: error: '__m256' was not declared in this scope
../src/seminar.cpp:15:9: error: expected ';' before 'test'
提前致谢!