sameer sinha wrote:
My code (FORTRAN 77) successfully compiled on 32 bit Xeon cluster with 8 GB RAM(RHEL platform) but when I am using a 64-bit AMD apteron cluster with 8 GB RAM (RHEL platform). I face "relocation overflow" and "relocation truncated to fit errors" when I compile big fortran 77 codes using f77/g77 (even with ifort and pathf95) on it. Though it compiles successfully it cannot assemble or link the executables. I understand this is because of large arrays or so. But the executable size is not more than 2GB. so I could not run my codes with large dimensions.
I am getting this error while compilation [cdacb@master IIAP]$ mpif77 -o step3.x ccea_MPI.F ccea_MPI.F: In subroutine `twoint': /tmp/cc5KpcVF.f:3621: warning: call MPI_RECV(maxinp,1,MPI_INTEGER,isource,1,MPI_COMM_WORLD, 1 /tmp/cc5KpcVF.f:3624: (continued): call MPI_RECV(VTWOE,maxinp,MPI_DOUBLE_PRECISION,isource,128, 2
That's not a successful compile. It looks like you have something which isn't portable to 64 bit. That first argument has to be a 64-bit pointer in the 64-bit case, as does the last. You must resolve that before you start worrying about why you get >2GB segments. It is possible for that to happen, since some of your data must change from 32- to 64-bit, and your code size will increase.