I'm using VS2010 and intel fortran 2011.9.300 on Win7 x64.
I've some derived data types nested in a module, which I allocate later on.
i0maxlay = 200 ! type :: kanten integer :: layers integer , dimension(i0maxlay) :: lnummer integer , dimension(i0maxlay) :: lmat real(i0rk), dimension(i0maxlay) :: lowinkel real(i0rk), dimension(i0maxlay) :: ldicke real(i0rk) :: gesdicke end type kanten ! type(kanten),allocatable :: Kanten_info(:,:)and allocate it as follows (in my program int(r3grid_calc(0,0,1)) is around 140):
i0maxk = 200 allocate(Kanten_info( int(r3grid_calc(0,0,1)),i0maxk))
The code is running fine compiled in ia32 debug mode and also fine in ia32 release mode (max. memory usage therfore around 500MB in the whole program. The whole program consists of a lot of more codelines I cannot provide here.). But when I use the /Qparallel option, the 'forrtl: severe (41): insufficient virtual memory' error occurs. The line where the program crashes, is the allocation of Kanten_info.
Does the parallelized code need more memory? But I think I'm far away from the 32bit limit in Windows. Is there something, I coded wrong?
I hope I give you enough information to give me any answer.