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

Call to dgetrs and dgerfs causes ICE (C0000005)

jirina
New Contributor I
694 Views

I do not know whether the problem I encountered belongs here (compiler error) or to MKL forum (call to MKL solvers), so I apologize if it does not belong here.

I am compiling the same code in VS 2010 with IPS XE 2017 Update 2 and in VS 2015 with IPS XE 2016 Update 4. I am using Debug-x64 configuration with following compiler options:

/nologo /debug:full /MP /Od /I"%MKLROOT%" /I"\include" /fixed /extend_source:132 /Qopenmp /fpscomp:general /debug-parameters:all /warn:declarations /warn:truncated_source /warn:noalignments /warn:interfaces /assume:byterecl /module:"x64\Debug\\" /object:"x64\Debug\\" /Fd"x64\Debug\vc140.pdb" /traceback /check:pointer /check:bounds /check:uninit /check:format /check:output_conversion /check:arg_temp_created /check:stack /libs:dll /threads /dbglibs /Qmkl:parallel /c

While everything is OK in IPS 2016 U4, I am getting internal compiler error in IPS 2017 U2, no matter if I use x64 or Win32 platform. The error message is:

fortcom: Fatal: There has been an internal compiler error (C0000005).
ifort: error #10298: problem during post processing of parallel object compilation

By commenting out lines of the corresponding source code file, I found out that calls to dgetrs and dgerfs, see lines 272 and 281 of the source file solver_matrix_general.for in the solution I am going to attach later, are both causing the same ICE. This is how the corresponding code snippet looks like:

      subroutine solveLinearSystemGeneral ( )
      
      integer(4) :: info
      
      
      ! Backup matrix A and B
      call backupLinearSystemMatrixAndRHS ( )
      
      ! LU factorization - matrix A is overwritten by LU factorization
      call dgetrf( nDimension, nDimension, Amat, nDimension, iPivot, info )
      
      ! Solution - matrix B of right hand sides is overwritten by solution to Amat*Xmat = Bmat
      call dgetrs( 'N', nDimension, numberOfRHS, Amat, nDimension, iPivot, Bmat, nDimension, info )
      
      ! Solution evaluation (copy to its own variable)
      call evaluateLinearSystemSolution ( )
      
      ! Solution refinement
      call dgerfs( 'N', nDimension, numberOfRHS, AmatOrig, nDimension, Amat, nDimension,
     +             iPivot, BmatOrig, nDimension, Xmat, nDimension,
     +             ferr, berr, work, iWork, info )
      
      return
      end subroutine solveLinearSystemGeneral

What am I doing wrong?

0 Kudos
1 Solution
Lorri_M_Intel
Employee
694 Views

An internal compiler error is always a compiler problem.

Looking at the version you're using, I believe you've run across the "debug-parameters" problem.  There was a problem with how the compiler was generating debug information for some PARAMETER variables.  I think it was finally resolved in 17.0U4, but you have 17.0U2, correct?

Please remove that option, and rebuild.  

        And, if you could, would you let us know if that resolved it?

                          thanks -

                                          --Lorri

View solution in original post

0 Kudos
4 Replies
jirina
New Contributor I
694 Views

Trying to attach the corresponding VS (2010) project...

0 Kudos
Lorri_M_Intel
Employee
695 Views

An internal compiler error is always a compiler problem.

Looking at the version you're using, I believe you've run across the "debug-parameters" problem.  There was a problem with how the compiler was generating debug information for some PARAMETER variables.  I think it was finally resolved in 17.0U4, but you have 17.0U2, correct?

Please remove that option, and rebuild.  

        And, if you could, would you let us know if that resolved it?

                          thanks -

                                          --Lorri

0 Kudos
jirina
New Contributor I
694 Views

Yes, I am using 17.0U2; I do not have 17.0U4.

Indeed, setting /debug-parameters:none and rebuilding helped and everything works well now.

Thank you very much for your quick solution.

0 Kudos
Lorri_M_Intel
Employee
694 Views

Glad to hear it, thanks for letting us know!

 

0 Kudos
Reply