Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

Bug with ifort >= 12 + OpenMP + O>=2 + pointer + matrix storage.

Olivier_C_
New Contributor I
786 Views
I think I met a bug with Intel Ifort 12 or more, when + compiling with -openmp a subroutine + with a parallel region (not met at runtime but taken into acount by the compiler) + at optimization level O2 or more. The very simple code reproducer consists in: - allocate a structure array that is a two dimensional array, - allocate a temporary pointer array in a routine, copy the strycture array into it, then copy the temporary array back to the structure array. When the back copy is the fortran 90 style ( struct%tab(:) = tmparray(:)) it is OK, when it is a manual loop, we get a forrtl: severe (174): SIGSEGV, segmentation fault occurred It is fine when structure array is one dimensional, or when the temporary array is ALLOCATABLE, or when there is a print inside the manuel loop (no vectorization). To compile and test: ifort -openmp -O3 main.f90 myfcell.f90 && ./a.out
0 Kudos
3 Replies
Ron_Green
Moderator
786 Views

We will investigate.  Thank you for the test case.

ron

0 Kudos
Ron_Green
Moderator
786 Views

I opened a bug report on this.  It seems to affect versions 12.0, 12.1, and 13.  It is not present in version 11.x compilers.

We will let you know when a fixed compiler is available.

0 Kudos
Olivier_C_
New Contributor I
786 Views

Fixed by Version 13.1.1.163 Build 20130313.

0 Kudos
Reply