Compilatore C++ Intel®

Code generation bug in ICC 13 and 14

I've been trying to find somewhere on the Intel site to file a bug report but it seems virtually impossible to do this, so I thought I'd try posting it here. If anyone has a link to a proper bug reporting page then I'd be happy to file it there too.

Here's a self-contained example which illustrates a serious code gen bug in ICC 13 and 14 which shows up at -O2 and above. ICC 11 is fine. There is also a workaround included:

Different performance between Intel C++ Compiler 11 and Intel C++ Compiler 14

Hi all,

I have some problems with my source code, when I build it with Intel C++ Compiler 11 and Intel C++ Compiler 14. The difference is showed at the table below:

Intel Compiler 11
Intel Compiler 14

Original source (ms)

Optimized source (ms)


+ Original source: I use many variables to store data and calculate on it.

Auto-vectorization and std::vector


I would like to understand why the Intel compiler happens to fail to vectorize some basic loops when using std::vector. The following code is testing 3 different "arrays" : C-style array, an homebrewed vector class, and the std::vector class. I am timing a loop that just does v[i] =i for all the elements of the array. The results are the following :

-Wtype-limits support


I used the same compiler flags of gcc when using icc. So, when I used -Wall and -Wextra for the below code, I was expecting a warning of pointless comparison (which is always true) from icc. However, I got no warning and it seems -Wtype-limits is not included in -Wall or -Wextra. Actually, -Wextra of gcc enables -Wtype-limits.

Implementation of the parallel runtime systems

Hi all,

My question is about the implementation details of different parallel runtime systems, e.x. OpenMP, Cilk Plus, and TBB runtime systems.

Where can I find a detailed information? For example:

* How do they do runtime task scheduling?

* What are the differences between GCC implementation and ICC implementation of the OpenMP runtime system?

* How is work stealing done in these approaches?

* Do OpenMP and Cilk Plus use busy waiting?

Is there any source to find answers to such questions?


Iscriversi a Compilatore C++ Intel®