- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I just upgraded to Intel Fortran 16.0, and some code that compiled fine in 15 is now giving me an Internal Compiler Error (C0000005). I've reduced the example to the 20 or so lines below. The error is only reported when I use the "release" settings; the compile succeeds if I use the "debug" settings. The compile also works if I comment out the two OpenMP lines. The compiler command line includes:
/nologo /debug:full /MP /O3 /assume:buffered_io /fpp /Qopenmp /warn:declarations /warn:unused /warn:truncated_source /warn:uncalled /warn:interfaces /module:"x64\Release\Intermediate\\" /object:"x64\Release\Intermediate\\" /Fd"x64\Release\Intermediate\vc110.pdb" /traceback /check:none /libs:static /threads /c
Any help would be very much appreciated!!
module test_module integer n_example end module test_module subroutine test_subroutine(xsum) use test_module implicit none real*8, intent(out) :: xsum(3) integer cur_n xsum = 0d0 n_example = 10 !$omp parallel do reduction(+:xsum) do cur_n = 1, n_example xsum = xsum + 1d0 enddo !$omp end parallel do return end subroutine test_subroutine
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I confirm that the ICE comes in with combination of -Qopenmp -O3 (and, with some other settings, even at -O2).
I'm not much of a fan of array reduction. As you will see with -Qopt-report4, the compiler is wanting to unroll the operation of length 3 and so apparently generate code for 3 separate sums.
I note that -Qopenmp -Qvec- seems to be successfully in compiling without simd.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It seems to be the combination of /O3 and /debug that is the trigger for this - removing /debug or switching to /O2 avoids the ICE for this test case. It is unusual to have both /debug and /O3 enabled - is this deliberate?
Interestingly, I can't reproduce this in our recent builds - perhaps the bug was fixed already and the fix would appear in Update 2, planned for February.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page