使用AVX与GCC - avxintrin.h缺失

toe*_*ebs 9 c++ gcc avx

我在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上的open声明时,Eclipse说:

Could not find include file 'avxintrin.h' on include paths
Run Code Online (Sandbox Code Playgroud)

allthow文件可在/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;
}
Run Code Online (Sandbox Code Playgroud)

这里的错误:

../src/seminar.cpp:15:2: error: '__m256' was not declared in this scope
../src/seminar.cpp:15:9: error: expected ';' before 'test'
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Gre*_*len 13

编译-mavx告诉编译器您要使用AVX指令.