Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner

Intel Fortran 2016 Update 3 - x64 optimization-error

Hello,

I've added a project which produces correct results for x86 (debug and release (/O2)) and x64 (debug), but when I compile x64 release the output is wrong.

The project is build using VS 2015 (Update 3) / Intel Parallel Studio XE 2016 Update 3 (2016.3.207) on a Windows Server 2012 R2 (64 bit) having 2 Intel Xeon E5 2690 processors.

In my company this is a showstopper in the migration process to Intel Parallel Studio XE 2016.

0 Kudos
3 Replies
Highlighted
Beginner

The expected output is:

The expected output is:
   
 4.674870598910117E-002
 4.092622849466501E-002
 2.975678599664363E-002
 7.269362540272030E-002
 2.044350052849852E-002
 3.278237209259754E-002
 4.675371291931164E-002
 2.180085100456940E-002
 0.649662764339263
 3.843145323262961E-002

but x64/release produces

  4.674870598910117E-002
  4.092622849466501E-002
  0.100000000000000
  7.269362540272030E-002
  2.044350052849852E-002
  3.278237209259754E-002
  4.675371291931164E-002
  2.180085100456940E-002
  0.649662764339263
  3.843145323262961E-002
 

 

0 Kudos
Highlighted
Employee

Thank you for reporting this

Thank you for reporting this and for your time/effort to produce such the convenient reproducer. The issue relates to compiling at /O2 and the FUNCTION GAT_RG_IN_VOL. That routine produces your expected results when compiled at /O1.

The defect is fixed in our upcoming PSXE 2017 release due out next month. I do not know whether this is fixed in our next PSXE 2016 Update 4 in the coming month or two. I will have to try that release and let you know.

One work around is to insert an OPTIMIZE:1 directive in that function which allows building other parts at default (/O2) optimization or higher. e.g.:

C#######################################################################
!DIR$ OPTIMIZE:1
      FUNCTION     GAT_RG_IN_VOL (SUBST_PHASES,GASTYP,BNOLIQ,IER1)

0 Kudos
Highlighted
Beginner

Thanks a lot for the fast

Thanks a lot for the fast reply and workaround!

0 Kudos