__m256 未知类型(clang 5.1/i5 CPU)?
Posted
技术标签:
【中文标题】__m256 未知类型(clang 5.1/i5 CPU)?【英文标题】:__m256 unknown type (clang 5.1/i5 CPU)? 【发布时间】:2014-07-03 15:37:34 【问题描述】:我刚开始尝试内在函数。我设法在使用 Clang 5.1 的 Mac 上使用 __m128
成功编译了一个程序。这台 Mac 上的 CPU 是 Intel core i5 M540。
当我尝试使用 __m256
编译相同的代码时,我收到以下消息:
simple.cpp:4:2: error: unknown type name '__m256'
__m256 A;
代码如下所示:
#include <immintrin.h>
int main()
__m256 A;
return 0;
这是用于编译它的命令:
c++ -o simple simple.cpp -march=native -O3
只是因为我的 CPU 太旧,无法支持 AVX 指令集吗?我使用的所有选项(在命令行上)是否正确?我签入了 immintrin.h
包含文件,它确实调用了另一个包含文件,该文件似乎正在定义 AVX 内部函数。如果问题很幼稚或术语被滥用,我深表歉意,正如我所说,我是这个话题的新手。
【问题讨论】:
你的意思是540M?如果这是正确的,那么 CPU 不支持 AVX,因为它是一个非常古老的 Nehalem。 AVX 仅在 Sandy Bridge 之后可用 非常感谢。它是 M 540,当我执行 sysctl -n machdep.cpu.brand_string 时,是的,我猜它是 540M。如果你写你的评论作为答案,我会接受。 【参考方案1】:Intel 540M CPU 在引入 AVX 时出现在 Sandy Bridge 之前的 Westmere 微架构中(抱歉评论中的错误),因此它不支持 AVX。 “核心 i5”一词涵盖了从 Nehalem 到 Haswell(当前)的广泛架构,因此使用核心 i5 CPU 并不意味着您将支持所有指令集,如最新的指令集。
【讨论】:
以上是关于__m256 未知类型(clang 5.1/i5 CPU)?的主要内容,如果未能解决你的问题,请参考以下文章
错误:未知类型名称 '__darwin_wctype_t' typedef __darwin_wctype_t wctype_t 在 MacOS 上使用 Clang 编译