Intel® C++ Compiler

2016 64bit compiler issue

We have just switched over from Visual Studio 2013 with Intel 2015, to VS 2015 and Intel 2016. We've worked through several issues including ones related to Visual Studio 2015 Update 1.

Unfortunately there is one issue we cannot find a solution to, it only appears to occur if when building our 64bit configuration and only occurs when either built on our build machine as part of a build process or if we repeat the msbuild on one of our development machines.

Location of __assume affects performance

I am using an 8-th order finite difference time stepping function (for 2D acoustic wave equation) shown below.

I am observing substantial (up to 25%) performance increase from placing Intel's __assume statement inside the inner loop, compared to placing it at the beginning of the function body. (This happens regardless of number of OpenMP threads).

The code is compiled by Intel 2016-update1 compiler, Linux, with -O3 optimization option, and for AVX-capable architecture (Xeon E5-2695 v2). Compiler options I use: -std=c++11 -march=native -O3 -openmp

float to int conversion and autovectorization

I am trying to use Intel C++ Composer XE 2013 to autovectorize a loop.

My loop contains a number of float to int conversions that I need to do in round down (toward negative infinity) mode. My initial implementation used floor() in order to achieve this but this is slow and causes problems for vectorization. If I drop the floor() and use a simple cast then performance improves but presumably I no longer get round down behaviour for negative numbers? Is there a way to do a vectorized int to float conversion in round down mode whilst still relying on autovectorization?

Option Qcheck-pointers-mpx:rw breaks ICC 16.0 with error 010101_0


I'm trying to build Google Test library with ICC and option -Qcheck-pointers-mpx:rw . Compilation stops with an error:
": : error : 010101_0 [googletest\googletest\msvc\gtest.vcxproj]

There is a build script for VS2015 at github:

Software: Intel(R) Compiler 16.0 Update 1 (package 146), Visual Studio 2015 Update 1

Will you help me with this problem?

Yet another C++11 error (RTTI deactivated ?)


The minimalist code found here cannot be compiled with icpc version 16.0.1 (gcc version 5.0.0 compatibility)

$  icpc -std=c++11 function.cpp                                                                                                 
function.cpp(9): error: class "std::function<int (int, int)>" has no member "target"
      if (<std::plus<int>>())

Possible to install Parallel Studio 2011 and Parallel Studio XE 2016 on one PC

Hi staff,

I am using Parallel Studio 2011 and Visual Studio 2008. 

But I'd like to install more Parallel Studio XE 2016 and Visual Studio 2015.

First, I've installed Visual Studio 2015. Then, I continue to install Parallel Studio XE 2016 and get the message:

Subscribe to Intel® C++ Compiler