New Vectorization Diagnostics starting from Intel(R) C++ Compiler 15.0

por Anoop Madhusoodhanan Prabha, Publicado: 02/23/2015, Última atualização: 10/31/2018

We have a similar catalog of vectorization diagnostics for the Intel® Fortran Compiler here.
We have a similar catalog of vectorization diagnostics for the Intel® C++ Compiler 14.0 and below
 here.

Diagnostic Number Diagnostic Description
Diagnostic 15304 loop was not vectorized: non-vectorizable loop instance from multiversioning
Diagnostic 15541 outer loop was not auto-vectorized: consider using SIMD directive
Diagnostic 15319 loop was not vectorized: novector directive used
Diagnostic 15331 xxxx was not vectorized: precis FP model implied by the command line or a directive prevents vectorization. Consider using fast FP model
Diagnostic 15335 xxxx was not vectorized: vectorization possible but seems inefficient. Use vector always directive or -vec-threshold0 to override
Diagnostic 15344 loop was not vectorized: vector dependence prevents vectorization xxxx
Diagnostic 15378 xxxx was not vectorized: -ffreestanding flag prevents vectorization of integer divide/remainder
Diagnostic 15414 loop was not vectorized: nothing to vectorize since xxxx body became empty after optimizations
Diagnostic 15517 loops in this subroutine cannot be vectorized due to use of EBX/RBX register in inline ASM
Diagnostic 15521 loop was not vectorized: simplify loop control flow and/or explicitly compute the trip count outside of the loop
Diagnostic 15523 loop was not vectorized: cannot compute loop trip count outside of the loop
Diagnostic 15524 xxxx was not vectorized: search loop cannot be vectorized unless all memory references can be aligned vector load
Diagnostic 15527 loop was not vectorized: function call to xxxx cannot be vectorized
Diagnostic 15532 xxxx was not vectorized: compile time constraints prevent loop optimization. Consider using -O3    loop was not vectorized: function call to xxxx cannot be vectorized
Diagnostic 15535 xxxx was not vectorized: loop contains switch statement. Consider using if-else statement
Diagnostic 15537 loop was not vectorized: implied FP exception model prevents usage of SVML library needed for truncation or integer divide/remainder. Consider changing compiler flags and/or directives in the source to enable fast FP model and to mask FP
Diagnostic 15542 xxxx was not vectorized: inner loop was already vectorized
Diagnostic 15511 Not enough parameters of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15509 Extraneous parameter of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15513 Incorrect type of mask parameter of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15487 type converts: xxxx
Diagnostic 15479 lightweight vector operations: xxxx
Diagnostic 15476 scalar loop cost: xxxx
   

 

Informações de produto e desempenho

1

Os compiladores da Intel podem ou não otimizar para o mesmo nível de microprocessadores não Intel no caso de otimizações que não são exclusivas para microprocessadores Intel. Essas otimizações incluem os conjuntos de instruções SSE2, SSE3 e SSSE3, e outras otimizações. A Intel não garante a disponibilidade, a funcionalidade ou eficácia de qualquer otimização sobre microprocessadores não fabricados pela Intel. As otimizações que dependem de microprocessadores neste produto são destinadas ao uso com microprocessadores Intel. Algumas otimizações não específicas da microarquitetura Intel são reservadas para os microprocessadores Intel. Consulte os Guias de Usuário e Referência do produto aplicáveis para obter mais informações sobre os conjuntos de instruções específicos cobertos por este aviso.

Revisão do aviso #20110804