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

Internal Compiler Error (C0000005)

I am trying to prepare my application for an analysis by VTune Amplifier. I created a new configuration by copying the existing Release configuration and changing Debugging settings for both Compiler and Linker. Re-building the application triggers ICE C0000005 for multiple source filesboth for 32-bit and 64-bit platformsThis did not happen for the Release configuration.

The new configuration uses following compiler settings:
/nologo /debug:full /O2 /fpp /D_PARALLELIZATION_ /D_X64_ /fixed /extend_source:132 /Qopenmp /fpscomp:general /Qdiag-disable:8290,8291 /warn:declarations /warn:unused /warn:truncated_source /warn:noalignments /warn:interfaces /assume:byterecl /module:"x64\VTune Amplifier\\" /object:"x64\VTune Amplifier\\" /Fd"x64\VTune Amplifier\vc100.pdb" /libs:static /threads /c

I was able to narrow down the source code in one of the files to:

      subroutine inner_sources ( nx, ny, nz, spm, t, enableOpenMP, threads )
      
      integer(4) :: nx, ny, nz
      
      integer(4), dimension(nx,ny,nz) :: spm
      real*8, dimension(nx,ny,nz) :: t
      
      logical*4 :: enableOpenMP
      
      integer(4) :: threads, i, j, k, mm
      
      integer(4), parameter :: MSB = 10000
      
      real*8, dimension(MSB) :: T_min, T_max
      real*8 :: tP
      
!dec$ if defined (_PARALLELIZATION_)
!$omp parallel if ( enableOpenMP ) num_threads ( threads ) default ( shared )
!$omp& private ( i, j, k, mm, tP )
!$omp& reduction ( MAX: T_max )
!$omp& reduction ( MIN: T_min )

!$omp do schedule(dynamic,3)
!dec$ end if
      do i=2,nx-1
        
        do j=2,ny-1
        do k=2,nz-1
            
          mm = spm(i,j,k)
          
          if ( mm.gt.0 ) then
            
            tP = t(i,j,k)
            
            if ( tP.lt.T_min(mm) ) T_min(mm) = tP
            if ( tP.gt.T_max(mm) ) T_max(mm) = tP
            
          end if
          
        end do
        end do
        
      end do
!dec$ if defined (_PARALLELIZATION_)
!$omp end do
!$omp end parallel
!dec$ end if
          
      return
      end

Could you please let me know what I can do to resolve this ICE that is preventing me from using VTune Amplifier? Any workaround would be appreciated. Or, I am participating in the Intel Parallel Studio XE Beta program, so if this issues is already resolved there, I can start using the beta version (I have not done so yet).

I am using Intel Parallel Studio XE 2016 Update 2 on Windows 7 Professional SP1 64-bit and in Visual Studio 2010 SP1.

0 Kudos
5 Replies
Highlighted
18 Views

We'll take a look and let you know.

0 Kudos
Highlighted
18 Views

I can't reproduce this in 16.0.2. Would you please upload a source file and a log of the compile?

0 Kudos
Highlighted
Beginner
18 Views

I tried compiling the source file in VS and I got ICE, the build log is attached and so is the source file.

Compiling the source file from the command line (the console window title is Intel Compiler 16.0 Update 2 Intel (R) 64 Visual Studio 2010), using the same options that are listed in VS, there is no ICE.

I noticed that the build log from VS contains one compiler option that is not listed in the compiler's command line overview: /Qlocation,link,"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\\bin\amd64". Adding it to the compiler options used in the command line makes no difference; it still works fine there.

0 Kudos
Highlighted
18 Views

You say you are using 2016 Update 2, but I can reproduce this error only using 2016 Update 1. The Update 2 compiler works fine. Please check Tools > Options > Intel Compilers and Tools > Visual Fortran > Compilers > X64 and make sure that "Latest" is selected.

0 Kudos
Highlighted
Beginner
18 Views

I checked that "Latest" is selected. I found both Update 1 and Update 2 compilers available in the list, so I uninstalled Update 1 from my computer and everything works OK now. Thank you for your kind and prompt help.

0 Kudos