【发布时间】:2012-02-21 16:00:42
【问题描述】:
在 VS 10 中,我将“矢量化诊断级别”设置为“n=2”,并将“优化诊断阶段”设置为“hpo”,如“英特尔 C++ 编译器矢量化指南”中所述。但是,(这可能是一个愚蠢的问题),该报告在哪里? “输出”中既没有显示内容,也没有项目目录。
【问题讨论】:
标签: c++ intel vectorization icc
在 VS 10 中,我将“矢量化诊断级别”设置为“n=2”,并将“优化诊断阶段”设置为“hpo”,如“英特尔 C++ 编译器矢量化指南”中所述。但是,(这可能是一个愚蠢的问题),该报告在哪里? “输出”中既没有显示内容,也没有项目目录。
【问题讨论】:
标签: c++ intel vectorization icc
我在编写的项目中遇到了同样的问题。 它是基于 SDK 中给出的示例代码的插件。
如果编译/构建过程配置为“调试”模式,则不会应用优化,因此不会给出报告。
你可能有同样的问题。
我在确定如何切换到“发布模式”时遇到问题(在配置面板中不可用): Switching from Debug into Release Mode with VS2010 as IDE and Intel C++ Compiler 13
如果它对您有用,请告诉我们。
【讨论】:
矢量化诊断通常作为正常编译器诊断输出的一部分发出,例如
$ icc -Wall -msse3 foo.c -vec-report=2 -o foo
...
foo.c(1337): (col. 5) remark: loop was not vectorized: existence of vector dependence.
foo.c(1337): (col. 5) remark: loop was not vectorized: not inner loop.
foo.c(1337): (col. 5) remark: loop was not vectorized: not inner loop.
foo.c(1337): (col. 5) remark: loop was not vectorized: existence of vector dependence.
foo.c(1337): (col. 5) remark: loop was not vectorized: existence of vector dependence.
foo.c(1337): (col. 5) remark: loop was not vectorized: nonstandard loop is not a vectorization candidate.
foo.c(1337): (col. 5) remark: loop was not vectorized: not inner loop.
foo.c(1337): (col. 5) remark: LOOP WAS VECTORIZED.
foo.c(1339): (col. 5) remark: loop was not vectorized: existence of vector dependence.
foo.c(1339): (col. 5) remark: loop was not vectorized: existence of vector dependence.
foo.c(1339): (col. 5) remark: loop was not vectorized: not inner loop.
foo.c(1339): (col. 5) remark: loop was not vectorized: statement cannot be vectorized.
foo.c(1339): (col. 5) remark: loop was not vectorized: not inner loop.
...
$
【讨论】:
-vec-report=2或大于你应该看到这样的东西。