[vsipl++] sourceryvsipl++-2.2 and Intel MKL version 10.2.5.035
Brooks Moses
brooks at codesourcery.com
Fri May 14 23:08:02 UTC 2010
Bill,
To answer your questions, in order:
(1) The alternative method should allow configure to complete
successfully, yes -- although I should note that I have not yet tried
it, and there may be other complications.
The set of libraries to link with is described in the MKL documentation;
see chapter 5 here:
http://software.intel.com/sites/products/documentation/hpc/mkl/lin/index.htm
Basically, you would use the same set of linker options as if you were
compiling an application that used MKL directly.
My untested guess, following the examples, is that for 64-bit
compilation something like the following will work:
-lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread
(2) I think the "cmkl" library contains the "Cluster Math Kernel
Library" functions, which operate across multiple computers. Sourcery
VSIPL++ does not yet use those.
(3) Currently, we only use MKL for BLAS and LAPACK functions, so you
would still need to specify a backend for FFT support -- either FFTW3 or
IPP. You are correct that the "atlas" flags are supplanted by use of MKL.
(4) The use of IPP and MKL should be separate, although we don't
regularly run tests with only one of the two, and our product builds
either use both or neither.
Regards,
- Brooks
Cassanova, Bill wrote, at 5/13/2010 1:47 PM:
> Thanks for the information. I do have a few more questions.
>
> (1)
>
> I do not have a copy of MKL 8.x. Are you saying the alternative method will
> allow configure to complete successfully?
>
> In the intel directory (/home/developer/intel/mkl/10.2.5.035/lib/64 ) I have a
> shared object named libmkl_lapack.so so
>
> I am not quite sure what I would change the line you specified (LIBS="$keep_LIBS
> -lmkl_lapack -lmkl -lguide –lpthread ) to be
>
> Since the library requested is the one that I already have.
>
> I also do not see an available library named anything close to ( -lmkl which
> translates to libmkl.so ). Perhaps I should use the one named libmkl_core.so
> that I would translate to lmkl_core instead?
>
> Here is the list of available libraries:
>
> libguide.a libmkl_blacs_sgimpt_lp64.a libmkl_intel_ilp64.a libmkl_scalapack_lp64.a
>
> libguide.so libmkl_blas95_ilp64.a libmkl_intel_ilp64.so libmkl_scalapack_lp64.so
>
> libiomp5.a libmkl_blas95_lp64.a libmkl_intel_lp64.a libmkl_sequential.a
>
> libiomp5.so libmkl_cdft_core.a libmkl_intel_lp64.so libmkl_sequential.so
>
> libmkl_blacs_ilp64.a libmkl_core.a libmkl_intel_sp2dp.a libmkl_solver_ilp64.a
>
> libmkl_blacs_intelmpi_ilp64.a libmkl_core.so libmkl_intel_sp2dp.so
> libmkl_solver_ilp64_sequential.a
>
> libmkl_blacs_intelmpi_ilp64.so libmkl_gf_ilp64.a libmkl_intel_thread.a
> libmkl_solver_lp64.a
>
> libmkl_blacs_intelmpi_lp64.a libmkl_gf_ilp64.so libmkl_intel_thread.so
> libmkl_solver_lp64_sequential.a
>
> libmkl_blacs_intelmpi_lp64.so libmkl_gf_lp64.a libmkl_lapack95_ilp64.a
> libmkl_vml_i2p.so
>
> libmkl_blacs_lp64.a libmkl_gf_lp64.so libmkl_lapack95_lp64.a locale
>
> libmkl_blacs_openmpi_ilp64.a libmkl_gnu_thread.a libmkl_lapack.so
>
> libmkl_blacs_openmpi_lp64.a libmkl_gnu_thread.so libmkl_scalapack_ilp64.a
>
> libmkl_blacs_sgimpt_ilp64.a libmkl_i2p.so libmkl_scalapack_ilp64.so
>
> (2)
>
> Can you also state, if you know, the difference between the intel directories
> /home/developer/intel/*mkl*/10.2.5.035 and
>
> /home/developer/intel/*cmkl*/10.2.5.035.
>
> (3)
>
> If I am going to use MKL I presume I would NOT want to also include flags for:
>
> --with-fftw3 and --with-lapack=atlas, --with-atlas-prefix=/home/developer/local
>
> I didn’t do so in my configuration attempt because I presume it is not needed.
>
> (4)
>
> Is Intel’s IPP also needed if I use the MKL? I would presume you can use one
> without the other but perhaps not.
>
> Thanks in advance for the assistance,
>
> Bill
--
Brooks Moses
CodeSourcery
brooks at codesourcery.com
650-331-3385 x726
More information about the vsipl++
mailing list