Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

How to locate the specified line?

dingjun_chencmgl_ca
482 Views

 

Hi, Dear Sir or Madam,

Could you tell me how to locate the specified the lines given in the vector report from compiler?  For example,

Z:\imex\bin\opt64vector\callsc.f(258): (col. 10) remark: loop was not vectorized: vectorization possible but seems inefficient

callsc.f(258):(col.10) indicates me to go to line 258, but I did it in my source codes and I could not find such a loop because the statement on line 258 is not a loop statement. Could you tell me the reasons and how to find the line 258 corresponding to the Loop statement. Thanks

 

========================================================

Rebuilding "endmci.obj" on host "DINGJUN.cgy.cmgl.ca"

======== Finished "callsc.obj" on host "DINGJUN.cgy.cmgl.ca" ========  ifort.exe /Qauto /cm /nologo /w /MT /QxHost /arch:AVX  /QaxAVX /align:array64byte /Qprec-div-  /Qopt-matmul /O3 /Qopenmp-simd  /Qvec-report:6  /Qfpp  /Qopenmp  -c callsc.f ifort: command line remark #10382: option '/QxHOST' setting '/QxAVX'

Z:\imex\bin\opt64vector\callsc.f(179): (col. 13) remark: loop was not vectorized: vectorization possible but seems inefficient

Z:\imex\bin\opt64vector\callsc.f(258): (col. 10) remark: loop was not vectorized: vectorization possible but seems inefficient

Z:\imex\bin\opt64vector\callsc.f(297): (col. 13) remark: loop was not vectorized: vectorization possible but seems inefficient

========================================================

Rebuilding "endpts.obj" on host "DINGJUN.cgy.cmgl.ca"

======== Finished "calljb.obj" on host "DINGJUN.cgy.cmgl.ca" ========  ifort.exe /Qauto /cm /nologo /w /MT /QxHost /arch:AVX  /QaxAVX /align:array64byte /Qprec-div-  /Qopt-matmul /O3 /Qopenmp-simd  /Qvec-report:6  /Qfpp  /Qopenmp  -c calljb.f ifort: command line remark #10382: option '/QxHOST' setting '/QxAVX'

Z:\imex\bin\opt64vector\calljb.f(50): (col. 10) remark: vectorization support: reference XAQ has aligned access

Z:\imex\bin\opt64vector\calljb.f(51): (col. 31) remark: vectorization support: reference XAQ has aligned access

Z:\imex\bin\opt64vector\calljb.f(51): (col. 31) remark: vectorization support: reference XAQ has aligned access

Z:\imex\bin\opt64vector\calljb.f(49): (col. 10) remark: vectorization support: unroll factor set to 2

Z:\imex\bin\opt64vector\calljb.f(49): (col. 10) remark: LOOP WAS VECTORIZED

Z:\imex\bin\opt64vector\calljb.f(50): (col. 10) remark: vectorization support: reference XAQ has unaligned access

Z:\imex\bin\opt64vector\calljb.f(51): (col. 31) remark: vectorization support: reference XAQ has unaligned access

Z:\imex\bin\opt64vector\calljb.f(51): (col. 31) remark: vectorization support: reference XAQ has unaligned access

Z:\imex\bin\opt64vector\calljb.f(51): (col. 31) remark: vectorization support: unaligned access used inside loop body

Z:\imex\bin\opt64vector\calljb.f(49): (col. 10) remark: REMAINDER LOOP WAS VECTORIZED

Z:\imex\bin\opt64vector\calljb.f(103): (col. 13) remark: vectorization support: reference POINT_MOD_mp_IDSTDN has unaligned access

Z:\imex\bin\opt64vector\calljb.f(103): (col. 13) remark: vectorization support: unaligned access used inside loop body

Z:\imex\bin\opt64vector\calljb.f(101): (col. 10) remark: LOOP WAS VECTORIZED

Z:\imex\bin\opt64vector\calljb.f(83): (col. 16) remark: vectorization support: reference POINT_MOD_mp_IDSTPS has unaligned access

Z:\imex\bin\opt64vector\calljb.f(83): (col. 16) remark: vectorization support: unaligned access used inside loop body

Z:\imex\bin\opt64vector\calljb.f(82): (col. 13) remark: LOOP WAS VECTORIZED

Z:\imex\bin\opt64vector\calljb.f(67): (col. 10) remark: loop was not vectorized: not inner loop

Z:\imex\bin\opt64vector\calljb.f(65): (col. 7) remark: loop was not vectorized: not inner loop

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vectorization support: call to function JBUILD cannot be vectorized

Z:\imex\bin\opt64vector\calljb.f(133): (col. 10) remark: loop was not vectorized: existence of vector dependence

Z:\imex\bin\opt64vector\calljb.f(141): (col. 10) remark: vector dependence: assumed OUTPUT dependence between IWDFN line 141 and IWDFN line 143

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vector dependence: assumed OUTPUT dependence between IWDFN line 143 and IWDFN line 141

Z:\imex\bin\opt64vector\calljb.f(140): (col. 10) remark: vector dependence: assumed OUTPUT dependence between IWDST line 140 and IWDST line 143

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vector dependence: assumed OUTPUT dependence between IWDST line 143 and IWDST line 140

Z:\imex\bin\opt64vector\calljb.f(139): (col. 10) remark: vector dependence: assumed OUTPUT dependence between IDSFN line 139 and IDSFN line 143

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vector dependence: assumed OUTPUT dependence between IDSFN line 143 and IDSFN line 139

Z:\imex\bin\opt64vector\calljb.f(138): (col. 10) remark: vector dependence: assumed OUTPUT dependence between IDSST line 138 and IDSST line 143

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vector dependence: assumed OUTPUT dependence between IDSST line 143 and IDSST line 138

Z:\imex\bin\opt64vector\calljb.f(137): (col. 10) remark: vector dependence: assumed OUTPUT dependence between ISDOM line 137 and ISDOM line 143

Z:\imex\bin\opt64vector\calljb.f(143): (col. 15) remark: vector dependence: assumed OUTPUT dependence between ISDOM line 143 and ISDOM line 137

Z:\imex\bin\opt64vector\calljb.f(131): (col. 7) remark: loop was not vectorized: unsupported loop structure

0 Kudos
1 Reply
Steven_L_Intel1
Employee
482 Views

It may be an array assignment that implies a loop. The line number given should be correct.

0 Kudos
Reply