【问题标题】:intel C++ compiler for Windows turn-off vectorization用于 Windows 关闭矢量化的英特尔 C++ 编译器
【发布时间】:2014-03-04 05:19:48
【问题描述】:

我在 MS Visual Studio 2010 中使用适用于 OS Windows 的 Intel C++ Compiler v. 13。此编译器支持矢量化代码。我想禁用此选项,但保存启用 -O2 优化。我在Project -> Properties -> Configuration Properties -> C/C++ -> Command Line -> Additional Options 窗口中为此目标设置了/Qvec- 标志(启用了标签“从父级或项目默认值继承”)。在所有选项部分中显示了这些键:

/Zi /nologo /W3 /Od /Ot /Qipo /Qopt-matmul /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "NOALIAS" /D "_UNICODE" /D "UNICODE" /EHsc /MT /GS /Gy /fp:fast /QaxAVX /Zc:wchar_t /Zc:forScope /Qopenmp /Qstd=c99 /Qstd=c++11 /Fp"Release\mformat.pch" /Fa"Release\" /Fo"Release\" /Fd"Release\vc100.pdb" /Qvec-report2 /Gd

但在编译报告中输出此消息:

service.cpp(164):警告:SIMD LOOP 已矢量化。

service.cpp(535):警告:SIMD LOOP 已矢量化。

service.cpp(543):警告:循环未矢量化:非标准循环 不是矢量化候选者。

等等……

而且节目时间不变。如何禁用矢量化并且没有设置 \Od 键?

【问题讨论】:

    标签: visual-studio-2010 compiler-construction intel vectorization


    【解决方案1】:

    在文档"A Guide to Vectorization with Intel® C++ Compilers"中找到这个

    为了允许比较矢量化代码和非矢量化代码, 可以使用开关 /Qvec- (Windows*) 或禁用矢量化 -no-vec(Linux* 或 Mac OS* X)。

    Intel® Composer XE Suite 页面上有很多其他有用的信息。

    【讨论】:

      猜你喜欢
      • 2010-11-21
      • 2012-02-21
      • 2017-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-17
      相关资源
      最近更新 更多