首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不能使用AVX内在的,因为我的函数编译时不支持“xsave”

不能使用AVX内在的,因为我的函数编译时不支持“xsave”
EN

Stack Overflow用户
提问于 2017-07-22 02:52:41
回答 2查看 6.1K关注 0票数 4

我想使用AVX内部的,比如:__m256 factor_min = _mm256_set1_ps(1.329227);但是我得到了以下编译错误:

Always_inline函数'_mm256_set1_ps‘需要目标特性'xsave',但将内联到函数'AveragePooling’中,该函数在编译时不支持'xsave‘。

我的环境是:MacOs+ Intel Core i7 + xcode8.3

我已经看过关于‘xsave’的其他讨论,但是仍然不知道如何修复这个编译错误,我对程序集instructions.Is一无所知,有什么简单的方法来修复这个错误(也许只需要更改xode设置?)非常感谢。

我认为英特尔核心i7可以完全支持AVX。

EN

回答 2

Stack Overflow用户

发布于 2017-12-13 08:37:21

在2017年的MacBook Pro上,我在Xcode 9.2上也有同样的编译问题--它支持AVX2。

我能够通过手动配置AVX矢量扩展来编译它,而不是使用"Platform Default“。

要确定您的CPU是否支持AVX,请检查终端中以下命令的输出,看看它是否显示了AVX,甚至显示了AVX2:

sysctl -a | grep machdep.cpu.features

票数 8
EN

Stack Overflow用户

发布于 2019-03-01 19:35:47

只是一次更新--我的Mac电脑只显示了sysctl的AVX1.0,但在XCode 10.3中,我能够搜索矢量的目标设置,并在“启用附加矢量扩展”下选择AVX 2,据英特尔称,这些Mac支持AVX 2,而且它成功了。:)

Update2:由于Clang中的一个怪癖,并不是所有的AVX 2都启用了,所以为了获得FMA支持,我必须进入构建阶段->编译源代码并添加标志-mfma。然后我要编写fma指令。注意,看起来这个过程必须针对每个源文件完成。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45250189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档