Hello,
I hope this is the correct forum for this post. I have the following
problem:
A Fortran 77 program that has to deal with several large
matrices (each approx. 5000 x 5000) and uses lapack and blas
subroutines has been correctly compiled and executed using Debian
Etch. When I tried to compile the same program in another computer
with the more recent release Debian Squeeze, to my great surprise
I find out that the compilation time has hugely increased, mostly due to
an intensive use of memory. In fact I can't compile the program in the
same laptop I used to do it because it ran out of memory, so I have to
do it in a different computer. Apart from this, once the program is compiled
in the etch and the squeeze computers the output obtained in both cases
are (very) different.
I enclose here some info about the two pc's where I am testing the
program: uname, gfortran version, the time required to compile the
program, and the size of the resulting executable in both cases.
The executable sizes are almost equal. All in all, this is a quite
puzzling situation for me. I guess this has to do with compiler versions,
but I do not understand where does this huge increment in compiling time
come from and why the memory resources needed in one case and the
other are so different. I would appreciate if somebody can give me a
hint of what is going on.
Regards,
Currix
Output ETCH system:
etch$ uname -a
Linux etch 2.6.18-6-686-bigmem #1 SMP Sat Feb 20 00:15:53 UTC 2010 i686 GNU/Linux
etch$ gfortran -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --with-tune=i686 --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
squeeze$ uname -a
Linux squeeze 2.6.32-5-686-bigmem #1 SMP Mon Jun 13 05:03:09 UTC 2011 i686 GNU/Linux
$ gfortran -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.5-8' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-targets=all --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.4.5 (Debian 4.4.5-8)
Compiling:
etch$ time make -f Makefile_test fitgen
gfortran -c u3xu3_minuit_gen_ch2_DMlc.f
gfortran -c basis_u3xu3.f
gfortran -c hamilt_u3xu3_gen_min_DM.f
gfortran -c check_conv_min_DM.f
gfortran -c compare_energ.f
gfortran -c read_expdata_u3xu3.f
gfortran -c read_harmass_u3xu3.f
gfortran -c build_exp_ass_pointer.f
gfortran -c algha_overlap.f
gfortran -c dis_res_u3xu3_sim.f
gfortran -c save_res_u3xu3_sim.f
gfortran -c fcn_gen_sub_DM.f
gfortran -o ./tmp/u3xu3_SABDMLC_etch u3xu3_minuit_gen_ch2_DMlc.o basis_u3xu3.o hamilt_u3xu3_gen_min_DM.o check_conv_min_DM.o compare_energ.o read_expdata_u3xu3.o read_harmass_u3xu3.o build_exp_ass_pointer.o algha_overlap.o dis_res_u3xu3_sim.o save_res_u3xu3_sim.o fcn_gen_sub_DM.o minuit_u3xu3.o intrac.o minuit-cern.o -lblas -llapack
real 0m1.985s
user 0m1.512s
sys 0m0.196s
etch$ ls -lth tmp/
total 252K
-rwxr-xr-x 1 user rsrchrs 245K 2011-10-17 17:56 u3xu3_SABDMLC_minuit*
squeeze$ time make -f Makefile_test fitgen
gfortran -c u3xu3_minuit_gen_ch2_DMlc.f
gfortran -c basis_u3xu3.f
gfortran -c hamilt_u3xu3_gen_min_DM.f
gfortran -c check_conv_min_DM.f
gfortran -c compare_energ.f
gfortran -c read_expdata_u3xu3.f
gfortran -c read_harmass_u3xu3.f
gfortran -c build_exp_ass_pointer.f
gfortran -c algha_overlap.f
gfortran -c dis_res_u3xu3_sim.f
gfortran -c save_res_u3xu3_sim.f
gfortran -c fcn_gen_sub_DM.f
gfortran -c minuit_u3xu3.f
gfortran -c intrac.f
gfortran -c minuit-cern.f
gfortran -o ./tmp/u3xu3_SABDMLC_squeeze u3xu3_minuit_gen_ch2_DMlc.o basis_u3xu3.o hamilt_u3xu3_gen_min_DM.o check_conv_min_DM.o compare_energ.o read_expdata_u3xu3.o read_harmass_u3xu3.o build_exp_ass_pointer.o algha_overlap.o dis_res_u3xu3_sim.o save_res_u3xu3_sim.o fcn_gen_sub_DM.o minuit_u3xu3.o intrac.o minuit-cern.o -lblas -llapack
real 0m22.898s
user 0m20.717s
sys 0m2.168s
squeeze$ lls tmp/
total 500K
-rwxr-xr-x 1 user rsrchrs 244K Oct 17 17:59 u3xu3_SABDMLC_squeeze*
-rwxr-xr-x 1 user rsrchrs 245K Oct 17 17:56 u3xu3_SABDMLC_etch*