我如何知道哪些 AVX C 功能可用于不同的处理器型号

C.克里斯蒂

基本上是标题。例如,我正在尝试运行如下指令:

_mm256_load_pd_mm256_add_pd_mm256_stream_pd以及处理器上的 128 位版本:Intel Xeon、E5630、2.53 GHz、IBM HS22。但是我Illegal instruction对一个可以查看该处理器可用哪些功能的站点有所了解?

彼得·科德斯

检查您/proc/cpuinfo的操作系统是否具有该操作系统。

或者使用 clang 或 gcc -march=native- 他们将拒绝编译您的 CPU 不支持的任何内在函数。(与 MSVC 或 ICC 不同,它可以让您使用内在函数,而无需告诉它目标机器支持它们。)


要按 CPU 型号查找它,请谷歌该型号,例如Xeon, E5630-> https://ark.intel.com/content/www/us/en/ark/products/47924/intel-xeon-processor-e5630-12m-cache -2-53-ghz-5-86-gt-s-intel-qpi.html

  • 指令集扩展:英特尔® SSE4.2

所以根本没有 AVX,因为它是 2010 年(在 Sandybridge 之前)的 Westmere-EP 微架构。

有关 CPU 的更多详细信息,您还可以检查http://instlatx64.atw.hu/并检查该模型(或相同微体系结构之一)的 CPUID 转储(如果可以找到的话)。例如在 Westmere-EX 上运行的 Aida64 CPUID 的屏幕截图,以及指令延迟/吞吐量基准输出,文本文件顶部的信息包括解码的 CPUID 信息,显示它具有哪些 ISA 扩展。还有原始 CPUID 转储,您可以通过您感兴趣的任何扩展(例如英特尔方舟页面将获得的 FSGSBASE 与所需的 CPUID 功能位(https://sandpile.org/x86/cpuid.htm)进行交叉引用cmpxchg16b不提。)


相关:https : //software.intel.com/sites/landingpage/IntrinsicsGuide/告诉您每个内在函数的相应 asm 指令需要什么 ISA 扩展。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我如何知道哪些处理器是物理核心?

如何确定我的处理器有多少个 AVX 寄存器?

C ++链接器如何知道要使用哪些.cpp文件

我如何知道在 C++ 中使用哪些函数?

如何在不同的处理器上运行C代码?

如何获得处理器的型号名称?

如何在编译时检测SSE / SSE2 / AVX / AVX2 / AVX-512 / AVX-128-FMA / KCVI的可用性?

如何使用AVX指令优化C写的ReLU

使用rsync,我如何知道源文件的哪些属性与导致转移的dest不同

如何知道包包含哪些功能?

在AVX上使用AVX2 / AVX512内部函数编译C ++代码

我怎么知道指定的Intel处理器型号是3rd g还是4th g?

C ++ SSE2或AVX2内部函数,用于将灰度转换为ARGB

如何检测我的源代码中使用了哪些C ++ 11功能

我怎么知道DTrace提供了哪些内置功能?

如何在AVX / AVX2中增加向量

如何在 C (AVX2) 中向量化 int8 乘法

在Swift中,我如何实现通过注册用于不同键路径的处理器来处理类型的通用系统?

我如何知道我已经成功地在Python中导入了哪些库以及这些库为我提供了什么功能?

C语言中的整数SIMD指令AVX

在 C 中使用 AVX 实现矩阵运算

我正在尝试使用AVX2重写功能并遇到问题

如何知道我的ubuntu安装在哪个窗口驱动器(C,D,E)上

处理器如何知道断点?

为什么已执行的AVX指令数量随处理器系列而变化

在应用程序中检查 AVX 处理器的支持。与之相关联

如何知道哪些视图(或视图控制器)在堆栈上?

如何处理SIGSEGV,分割错误。使用Avx2时(已解决)

如何将 Payfort 集成到 Flutter 中,或者 Flutter 中是否有不同的支付处理器可用?