我如何知道向量函数 (SIMD) 是不是真的一次对多个对象起作用?
Posted
技术标签:
【中文标题】我如何知道向量函数 (SIMD) 是不是真的一次对多个对象起作用?【英文标题】:How do I know if a vector function (SIMD) really worked on multiple objects at a time?我如何知道向量函数 (SIMD) 是否真的一次对多个对象起作用? 【发布时间】:2011-07-30 10:33:04 【问题描述】:我试图了解我的编译器是将我的向量表示法解释为单个对象(相当于 for 循环)还是一次处理多个数据。
有人知道我是怎么做到的吗?我在 Visual Studio 2010 上安装了 Intel Parallel Studio 2011。
谢谢!!!
【问题讨论】:
【参考方案1】:如果有疑问,请查看生成的代码,例如
$ icc -S ... foo.c -o foo.S
【讨论】:
在哪里可以找到它?我如何从中了解实际发生的事情?我知道这个问题很多,也许你可以把我介绍给一个我可以读到它的地方?谢谢你:) 只需打开生成的 .S 文件并查看代码 - 如果您不熟悉 x86 指令,则可以从 intel.com 获取 PDF 格式的文档。 刚刚发现:如果使用Visual Studio可以添加断点,运行调试器然后右键查看反汇编代码。 @N.M.:是的,这也可以,但您通常会通过编译器生成的 asm 甚至反汇编的目标文件获得更多的符号信息。以上是关于我如何知道向量函数 (SIMD) 是不是真的一次对多个对象起作用?的主要内容,如果未能解决你的问题,请参考以下文章