Hi David W. and List,
On Wed, Jul 29, 2009 at 17:21, David Watson <dewatson.olemiss.edu> wrote:
>
> Until Snow Leopard comes out, and perhaps even then, you will need to
> compile and link in 32-bit mode for library compatibility.
> Make sure that you source the appropriate scripts in
> /opt/intel/Compiler/11.1/0.58/bin in your ~/.bash_profile.
> You also need to source
> /Library/Frameworks/Intel_MKL.framework/Versions/Current/tools/environment/mklvars32.sh
>
I tested with 64 and 32 bits. I get all set by doing:
source /opt/intel/Compiler/11.1/058/bin/iccvars.sh ia32 # or intel64
mklvars32.sh is automatically sourced by script above
For ambertools to test with MKL I have to set:
export MKL_HOME=/opt/intel/Compiler/11.1/058/Frameworks/mkl/lib/32
or
export MKL_HOME=/opt/intel/Compiler/11.1/058/Frameworks/mkl/lib/em64t
Starting always with fresh uncompressed ambertools folder.
You should definitely see the following to determine which link line you
> need to use in the FLIBS variable in config.h:
> http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/
>
> I found it so useful I bookmarked it!
>
Excellent link, thank you very much. Based on it, in configure_at for
flibs_mkl I have to have:
(32 bits)
flibs_mkl="-L\$(MKL_HOME) \$(MKL_HOME)/libmkl_solver_sequential.a
-lmkl_intel -lmkl_sequential -lmkl_core -lpthread"
or
(64 bits)
flibs_mkl="-L\$(MKL_HOME) \$(MKL_HOME)/libmkl_solver_ilp64_sequential.a
-lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lpthread"
>
> I was able to get it to work with gcc and MKL, but not icc and MKL.
> Perhaps you will have better luck.
>
I didn't try with gcc and MKL so far. That said, both 32 and 64 bits
compilation with "configure_at icc" worked with MKL, however doing "make -f
Makefile_at test" I had some surprises:
1) With 32 bits and MKL, almost everything worked fine, even the FAILURES
(when I compared with my ambertools gcc without MKL and 32 bits) excepted
for '1rrb_vac_mwcovarmat_evecs.dat.dif' in 'ptraj_matrix'. I got the
absolute values identical to 1rrb_vac_distcovarmat_evecs.dat.save except for
the sign where with MKL they were inverted (like a matrix multiplied by -1),
e.g.:
537c537
< 0.00237 -0.00485 0.00133 0.00259 -0.00563 0.00178
0.00236 (save)
> -0.00237 0.00485 -0.00133 -0.00259 0.00563 -0.00178
-0.00236 (mine)
Is it OK?
The compilation with 32 bits with gcc and without MKL has not such a diff.
If compiled with icc and NO mkl I got no such a diff either.
CONCLUSION 1: Intel MKL libs 32 bits has a strange effect in
ptraj_matrix: 1rrb_vac_mwcovarmat_evecs.dat
1) With 64 bits, icc, with or without MKL nab failed:
make -f Makefile_at test
( cd nab; make test )
=====================================================
Running test to make dna duplex:
/bin/sh: line 1: 80769 Segmentation fault ./duplex < duplex.in
make[1]: *** [duplex_test] Error 139
make: *** [test.nab] Error 2
For ptraj_matrix:
Without MKL: it works perfectly.
With MKL: it failed
cd ptraj_matrix && ./Run.matrix
ptraj: analyze fluctuation matrices
Bus error
./Run.matrix: Program error
CONCLUSION 2: Intel MKL libs 64 bits doesn't work.
>
>> NOTE2:
>> I didn't find more documentation about './configure_at -h' for options
>> '-mpi' or '-openmp'. It would enable some programmes in ambertools to use
>> multi-cores? Which programmes could take advantage of these options?
>>
>
Any comments about NOTE2 above?
Cheers,
Alan
--
Alan Wilter S. da Silva, D.Sc. - CCPN Research Associate
Department of Biochemistry, University of Cambridge.
80 Tennis Court Road, Cambridge CB2 1GA, UK.
>>http://www.bio.cam.ac.uk/~awd28<<
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Wed Aug 19 2009 - 19:48:52 PDT