[R-sig-hpc] Getting multithreaded R working (solution)

Jonathan Greenberg greenberg at ucdavis.edu
Thu Jul 29 23:56:41 CEST 2010


Thanks Stefan:

Have you (or anyone) gotten Intel MKL working via the "plugin"
approach that Dirk has setup for the debian packages, where you just
point:

update-alternatives --config libblas.so.3gf
and
update-alternatives --config liblapack.so
to the BLAS/lapack libraries you want --  I don't know which file to
point to for this.

ls -l /usr/lib/intel/mkl/10.2.5.035/lib/em64t returned (a standard
install points to /opt/intel by the way, I moved these):

-r-xr-xr-x 1 root root    984748 Mar 25 09:05 libguide.a
-r-xr-xr-x 1 root root    698155 Mar 25 09:05 libguide.so
-r-xr-xr-x 1 root root   1056924 Mar 25 09:05 libiomp5.a
-r-xr-xr-x 1 root root    749714 Mar 25 09:05 libiomp5.so
-r-xr-xr-x 1 root root  19930316 Mar 25 12:04 libmkl_avx.so
-r--r--r-- 1 root root   1592136 Mar 25 12:10 libmkl_blacs_ilp64.a
-r--r--r-- 1 root root   1593520 Mar 25 12:09 libmkl_blacs_intelmpi_ilp64.a
-r-xr-xr-x 1 root root    639316 Mar 25 12:09 libmkl_blacs_intelmpi_ilp64.so
-r--r--r-- 1 root root    973850 Mar 25 12:05 libmkl_blacs_intelmpi_lp64.a
-r-xr-xr-x 1 root root    404221 Mar 25 12:05 libmkl_blacs_intelmpi_lp64.so
-r--r--r-- 1 root root    972474 Mar 25 12:06 libmkl_blacs_lp64.a
-r--r--r-- 1 root root   1620802 Mar 25 12:12 libmkl_blacs_openmpi_ilp64.a
-r--r--r-- 1 root root   1000990 Mar 25 12:07 libmkl_blacs_openmpi_lp64.a
-r--r--r-- 1 root root   1593152 Mar 25 12:13 libmkl_blacs_sgimpt_ilp64.a
-r--r--r-- 1 root root    973498 Mar 25 12:08 libmkl_blacs_sgimpt_lp64.a
-r--r--r-- 1 root root    447246 Mar 25 12:36 libmkl_blas95_ilp64.a
-r--r--r-- 1 root root    435758 Mar 25 12:36 libmkl_blas95_lp64.a
-r--r--r-- 1 root root    112558 Mar 25 12:13 libmkl_cdft_core.a
-r--r--r-- 1 root root 210211710 Mar 25 12:39 libmkl_core.a
-r-xr-xr-x 1 root root   3888898 Mar 25 12:03 libmkl_core.so
-r-xr-xr-x 1 root root  19385503 Mar 25 12:03 libmkl_def.so
-r--r--r-- 1 root root  10037880 Mar 25 12:38 libmkl_gf_ilp64.a
-r-xr-xr-x 1 root root   3583798 Mar 25 12:39 libmkl_gf_ilp64.so
-r--r--r-- 1 root root  10491422 Mar 25 12:38 libmkl_gf_lp64.a
-r-xr-xr-x 1 root root   3899087 Mar 25 12:39 libmkl_gf_lp64.so
-r--r--r-- 1 root root  15441782 Mar 25 12:39 libmkl_gnu_thread.a
-r-xr-xr-x 1 root root  12457443 Mar 25 12:40 libmkl_gnu_thread.so
-r--r--r-- 1 root root  10363194 Mar 25 12:38 libmkl_intel_ilp64.a
-r-xr-xr-x 1 root root   3719554 Mar 25 12:39 libmkl_intel_ilp64.so
-r--r--r-- 1 root root  10816706 Mar 25 12:38 libmkl_intel_lp64.a
-r-xr-xr-x 1 root root   4034675 Mar 25 12:39 libmkl_intel_lp64.so
-r--r--r-- 1 root root   2537716 Mar 25 11:55 libmkl_intel_sp2dp.a
-r-xr-xr-x 1 root root   1175095 Mar 25 12:04 libmkl_intel_sp2dp.so
-r--r--r-- 1 root root  26877982 Mar 25 12:39 libmkl_intel_thread.a
-r-xr-xr-x 1 root root  20805097 Mar 25 12:39 libmkl_intel_thread.so
-r--r--r-- 1 root root   6701900 Mar 25 12:36 libmkl_lapack95_ilp64.a
-r--r--r-- 1 root root   6693188 Mar 25 12:36 libmkl_lapack95_lp64.a
-r-xr-xr-x 1 root root  13269122 Mar 25 12:04 libmkl_lapack.so
-r-xr-xr-x 1 root root  22193012 Mar 25 12:03 libmkl_mc3.so
-r-xr-xr-x 1 root root  22455155 Mar 25 12:03 libmkl_mc.so
-r-xr-xr-x 1 root root  20821233 Mar 25 12:03 libmkl_p4n.so
-r--r--r-- 1 root root  18304180 Mar 25 12:39 libmkl_pgi_thread.a
-r-xr-xr-x 1 root root  15045661 Mar 25 12:40 libmkl_pgi_thread.so
-r--r--r-- 1 root root   9924200 Mar 25 12:40 libmkl_scalapack_ilp64.a
-r-xr-xr-x 1 root root   6208757 Mar 25 12:40 libmkl_scalapack_ilp64.so
-r--r--r-- 1 root root   9882058 Mar 25 12:40 libmkl_scalapack_lp64.a
-r-xr-xr-x 1 root root   6123754 Mar 25 12:40 libmkl_scalapack_lp64.so
-r--r--r-- 1 root root   9707104 Mar 25 12:39 libmkl_sequential.a
-r-xr-xr-x 1 root root   8970003 Mar 25 12:39 libmkl_sequential.so
-r--r--r-- 1 root root      1048 Mar 25 09:05 libmkl_solver_ilp64.a
-r--r--r-- 1 root root      1048 Mar 25 09:05 libmkl_solver_ilp64_sequential.a
-r--r--r-- 1 root root      1048 Mar 25 09:05 libmkl_solver_lp64.a
-r--r--r-- 1 root root      1048 Mar 25 09:05 libmkl_solver_lp64_sequential.a
-r-xr-xr-x 1 root root   4266997 Mar 25 12:39 libmkl_vml_avx.so
-r-xr-xr-x 1 root root   2218467 Mar 25 12:39 libmkl_vml_def.so
-r-xr-xr-x 1 root root   3834953 Mar 25 12:39 libmkl_vml_mc2.so
-r-xr-xr-x 1 root root   3845965 Mar 25 12:39 libmkl_vml_mc3.so
-r-xr-xr-x 1 root root   3879774 Mar 25 12:39 libmkl_vml_mc.so
-r-xr-xr-x 1 root root   3325933 Mar 25 12:39 libmkl_vml_p4n.so
drwxr-xr-x 4 root root      4096 Jul 28 14:43 locale

--j

On Thu, Jul 29, 2010 at 2:46 PM, Stefan Theussl <stefan.theussl at wu.ac.at> wrote:
>
> [...]
>> P.S. If anyone has *easy* instructions for getting atlas working as a
>> multithreaded library or how do drop in the Intel MKL (I couldn't
>> figure out which *.so would be the correct one) please let me know and
>> I'll post them as well.
>
> I did get MKL working with R via the following trick:
>
> 1) export
> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/intel-mkl-9.0.018/lib/em64t
>
> 2) then configure with:
> "--with-blas=-L/opt/intel/intel-mkl-9.0.018/lib/em64t/ -lmkl -lguide
> -lpthread"
>
> Back then I used MKL version 9.0.018. I don't know if this still works with
> more recent MKL or R.
>
> Best,
> st
>



More information about the R-sig-hpc mailing list