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

RAM limit on em64t

moukouri
Beginner
1,034 Views
I thought that the em64t technology works like a true 64 bit system.
But I am experiencing memory limitation to 2.6 GB on a total of 4GB on a dual xeon em64t. I have tried some of the options suggested in
this forum like using allocatable arrays or the compiler option -mcmodel (I could not find it on the non-commercial version of ifort
V8 or V9) or -i-dynamic but I could not exceed 2.6 GB. My OS is
Red-Hat enterprise 3. Can I get any help?

Thanks
0 Kudos
8 Replies
Lorri_M_Intel
Employee
1,034 Views

What version of the compiler are you using (found using ifort -what anyfile.f)? We've found/fixed a number of bugs where we weren't keeping the full size correctly internally in the compiler. Maybe you have an older vintage?

Also, if possible, an example of what is failing would be interesting.

Thanks -
- Lorri
0 Kudos
moukouri
Beginner
1,034 Views
I am using both v8 and v9 versions of the compiler. This is a simple code I am testing:

PROGRAM mult
IMPLICIT NONE
INTEGER, PARAMETER :: n=10700
INTEGER :: i,j,k
REAL(8), DIMENSION (:,:), ALLOCATABLE :: a,b,c

ALLOCATE(a(n,n),b(n,n),c(n,n))
a=1.;b=2.;c=0.
DO i=1,n
DO j=1,n
Do k=1,n
c(i,j)=a(i,k)*b(k,j)
END DO
END DO
END DO
DEALLOCATE(a,b,c)
END PROGRAM

I am compiling using: ifort -i-dynamic mult.f90
0 Kudos
Steven_L_Intel1
Employee
1,034 Views
Which specific versions? 9.0.??? 8.1.??? (You can't be using 8.0 on EM64T.)

You need -mcmodel medium or -mcmodel large as well.
0 Kudos
moukouri
Beginner
1,034 Views
My compiler versions are

l_fc_p_8.1.018 and l_fc_c_9.0.031
0 Kudos
moukouri
Beginner
1,034 Views
Neither of the two compilers seem to recognize the option -mcmodel. Is-it included in the non-commercial version?
0 Kudos
Steven_L_Intel1
Employee
1,034 Views
Yes. The non-commercial version is identical. Are you using the EM64T compiler? You may be using the IA32 compiler instead. You have to do the source from the .../fce/... directory.

Please show a log of the command you type and the output when you try to compile the program.
0 Kudos
moukouri
Beginner
1,034 Views
ifort -i-dynamic -mcmodel large mult.f90
ifort: Command line warning: ignoring unknown option '-mcmodel'
ld: cannot open large: No such file or directory

I may well be using the ia32 version. But doesn't the install
script automatically identify the system ia32, em64t or ia64?
Do I need to specify anything more to call the em64t version?
0 Kudos
Steven_L_Intel1
Employee
1,034 Views
You need to specify the proper ifortvars.sh script. For EM64T, that would be /opt/intel/fce/9.0/bin/ifortvars.sh
0 Kudos
Reply