Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!

doacross internal compiler error

kay-diederichs
Beginner
149 Views

This is using the latest ifort 17.0.2 (same problem with 17.0.1; older versions not tested): when trying the examples for the OpenMP 4.5 doacross parallelization feature, I found that the compiler produces an ICE for https://github.com/OpenMP/Examples/blob/master/sources/Example_doacross.2.f90

 

% cat doacross.2.f90 
subroutine work( N, M, A, B, C )
  integer :: N, M, i, j
  real, dimension(M,N) :: A, B, C
  real, external :: foo, bar, baz

  !$omp do ordered(2)
  do j=2, N
    do i=2, M
      A(i,j) = foo(i, j)

    !$omp ordered depend(sink: j-1,i) depend(sink: j,i-1)
      B(i,j) = bar(A(i,j), B(i-1,j), B(i,j-1))
    !$omp ordered depend(source)

      C(i,j) = baz(B(i,j))
    end do
  end do
end subroutine
% ifort -qopenmp doacross.2.f90
doacross.2.f90: catastrophic error: **Internal compiler error: floating point exception signal raised** Please report this error along with the circumstances in which it occurred in a Software Problem Report.  Note: File and line given may not be explicit cause of this error.
compilation aborted for 2.f90 (code 1)

It would be great if this could be fixed.

thanks,

Kay

0 Kudos
2 Replies
Kevin_D_Intel
Employee
149 Views

Thank you for reporting this. I can reproduce it. I forwarded this to Development.

(Internal tracking id: DPD200418277)

Martyn_C_Intel
Employee
149 Views

A fix has been implemented for this issue. It should be available in the next major compiler version and also in the next 17.0 update.

Reply