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

ifx OpenMP declare reduction issue

Matthew_Grismer
Beginner
885 Views

When compiling the attached Fortran OpenMP program with ifx I got the following error:

 

collatz.f90(20): internal error: Please visit 'http://www.intel.com/software/products/support' for assistance.

!$omp parallel do private(n,i,count) reduction(max:maxsequence)

^

collatz.f90(20): catastrophic error: Internal Compiler Error: Ref module: ffe_omp.c

compilation aborted for collatz.f90 (code 1)

 

The same program compiles fine with ifort and runs correctly.  Previous versions of the code that did not include the OpenMP declare reduction compiled with ifx and ran correctly.

0 Kudos
4 Replies
VarshaS_Intel
Moderator
852 Views

Hi,


Thanks for reaching out to us.


Could you please provide us with the environment details and the Intel OneAPI version you are using?


Also, could you please let us know the command you used to compile the code?


Thanks & Regards

Varsha


0 Kudos
Matthew_Grismer
Beginner
846 Views

I'm doing this on the devCloud, so ifx is version 2021.4.0.  The command to compile is

 

ifx -qopenmp collatz.f90

0 Kudos
Ron_Green
Moderator
702 Views

I'll get a bug report on it. UDRs with INIITIALIZER for a derived type should work but obviously we have a bug here.


0 Kudos
Ron_Green
Moderator
692 Views

Good news on this one - Intel has publically announced that we will release oneAPI 2022 in early December. So it's now early December, and it's looking more like next week or "mid December" because of some last minute changes.

I have tested collatz.f90 with IFX that will be released in this oneAPI package 2022.1.

It compiles and runs

[rwgreen@orcsle127 q05297226]$ ifx -qopenmp -fopenmp-targets=spir64 collatz.f90

[rwgreen@orcsle127 q05297226]$ ./a.out

Max Collatz sequence is for 837799 and has length 525

 

so watch for the 2022 oneapi release. I won't comment on when, SOON, but I won't wager a guess on this one.  It's complex.

 

ron

 

0 Kudos
Reply