Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def In [2]: numpy.test() Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/********************* Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0 .......... MKL ERROR: Parameter 4 was incorrect on entry to DGESV MKL ERROR: Parameter 4 was incorrect on entry to DGESV MKL ERROR: Parameter 4 was incorrect on entry to DGESV MKL ERROR: Parameter 4 was incorrect on entry to DGESV MKL ERROR: Parameter 4 was incorrect on entry to DGESV MKL ERROR: Parameter 4 was incorrect on entry to DGESV .. MKL ERROR: Parameter 4 was incorrect on entry to DGESV FSegmentation fault I am using gcc: gcc -v Using built-in specs. Target: x86_64-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 --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=-4.2 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu4) Anyone having the same issues? Do I have the mkl_libs correctly configured (this seems like a black art!) Thanks, Ashwin
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual). cheers, David
I followed the advice given by the Intel MKL link adviser (http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/) This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core I also exported CFLAGS="-fopenmp" and built with the --fcompiler=gnu95. Now I get these errors on import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/Personalization/lib/python2.5/site-packages/numpy Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0 *** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so Any hints? Thanks, Ashwin Your message: On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual). cheers, David
Hi, You need to use the static libraries, are you sure you currently do? Matthieu 2009/10/15 Kashyap Ashwin <Ashwin.Kashyap@thomson.net>:
I followed the advice given by the Intel MKL link adviser (http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/)
This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core
I also exported CFLAGS="-fopenmp" and built with the --fcompiler=gnu95. Now I get these errors on import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/Personalization/lib/python2.5/site-packages/numpy Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0
*** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so
Any hints?
Thanks, Ashwin
Your message:
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual).
cheers,
David _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
-- Information System Engineer, Ph.D. Website: http://matthieu-brucher.developpez.com/ Blogs: http://matt.eifelle.com and http://blog.developpez.com/?blog=92 LinkedIn: http://www.linkedin.com/in/matthieubrucher
Matthieu, I am not sure what exactly you mean. I did pass in "static" to the link-adviser and this is the new setup.cfg mkl_libs = mkl_solver_ilp64, mkl_intel_ilp64, mkl_gnu_thread, mkl_core. On import, Numpy complains as usual about the mkl_def and mkl_mc. If I append these libs, then the crashes happen on test() (complains first about the DGES* functions). Also, I have made sure that g77 is not installed and only gfortran is available. I also put in the LD_LIBRARY_PATH=/opt/intel/mkl/10.2.2.025/lib/em64t. Thanks, Ashwin Your message: Hi, You need to use the static libraries, are you sure you currently do? Matthieu 2009/10/15 Kashyap Ashwin <Ashwin.Kashyap@thomson.net>:
I followed the advice given by the Intel MKL link adviser
(http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/)
This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core
I also exported CFLAGS="-fopenmp" and built with the
--fcompiler=gnu95.
Now I get these errors on import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/Personalization/lib/python2.5/site-packages/numpy Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0
*** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so
Any hints?
Thanks, Ashwin
Your message:
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual).
cheers,
David _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
-----Original Message----- From: Kashyap Ashwin Sent: Thursday, October 15, 2009 11:01 AM To: 'numpy-discussion@scipy.org' Subject: RE: MKL with 64bit crashes
I followed the advice given by the Intel MKL link adviser (http://software.intel.com/en- us/articles/intel-mkl-link-line-advisor/)
This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core
I also exported CFLAGS="-fopenmp" and built with the --fcompiler=gnu95. Now I get these errors on import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/Personalization/lib/python2.5/site-packages/numpy Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0
*** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so
Any hints?
Thanks, Ashwin
Your message:
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel) with MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual).
cheers,
David
Kashyap Ashwin wrote:
Matthieu, I am not sure what exactly you mean. I did pass in "static" to the link-adviser and this is the new setup.cfg mkl_libs = mkl_solver_ilp64, mkl_intel_ilp64, mkl_gnu_thread, mkl_core.
On import, Numpy complains as usual about the mkl_def and mkl_mc. If I append these libs, then the crashes happen on test() (complains first about the DGES* functions).
I remember now that I had the same problem recently - it is a fundamental incompatibility between MKL and Python way of loading shared libraries through dlopen. AFAIK, there is no solution to this problem, except for using the static libraries. David
Kashyap Ashwin wrote:
Matthieu, I am not sure what exactly you mean. I did pass in "static" to the link-adviser and this is the new setup.cfg mkl_libs = mkl_solver_ilp64, mkl_intel_ilp64, mkl_gnu_thread, mkl_core.
On import, Numpy complains as usual about the mkl_def and mkl_mc. If I append these libs, then the crashes happen on test() (complains first about the DGES* functions). Also, I have made sure that g77 is not installed and only gfortran is available.
I also put in the LD_LIBRARY_PATH=/opt/intel/mkl/10.2.2.025/lib/em64t.
Thanks, Ashwin
This was an old post, but for Googlability of this thread: I think the major problem here is that one uses "ilp64" rather than "lp64". Even on a 64-bit system, it is common to assume integers are 32-bit for BLAS, and it seems NumPy makes this assumption as well. Just appending mkl_def or mkl_mc seems dangerous as I have a lurking feeling the purpose of those is to load different libraries for different CPUs, determined runtime. (This is not validated by anyone, it is just a guess). There's more problems, but I've detailed those in my recent post on "Proposed fix for MKL and dynamic loading". Dag Sverre
Your message: Hi,
You need to use the static libraries, are you sure you currently do?
Matthieu
2009/10/15 Kashyap Ashwin <Ashwin.Kashyap@thomson.net>:
I followed the advice given by the Intel MKL link adviser
(http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/)
This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core
I also exported CFLAGS="-fopenmp" and built with the
--fcompiler=gnu95.
Now I get these errors on import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in /opt/Personalization/lib/python2.5/site-packages/numpy Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] nose version 0.11.0
*** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined
symbol:
mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined symbol: mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so
Any hints?
Thanks, Ashwin
Your message:
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel)
with
MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual).
cheers,
David _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
-----Original Message----- From: Kashyap Ashwin Sent: Thursday, October 15, 2009 11:01 AM To: 'numpy-discussion@scipy.org' Subject: RE: MKL with 64bit crashes
I followed the advice given by the Intel MKL link adviser
(http://software.intel.com/en-
us/articles/intel-mkl-link-line-advisor/)
This is my new site.cfg: mkl_libs = mkl_intel_ilp64, mkl_gnu_thread, mkl_core
I also exported CFLAGS="-fopenmp" and built with the
--fcompiler=gnu95. Now I get these errors on
import: Running unit tests for numpy NumPy version 1.3.0 NumPy is installed in
/opt/Personalization/lib/python2.5/site-packages/numpy
Python version 2.5.2 (r252:60911, Jul 22 2009, 15:33:10) [GCC 4.2.4
(Ubuntu 4.2.4-1ubuntu3)]
nose version 0.11.0
*** libmkl_mc.so *** failed with error : libmkl_mc.so: undefined
symbol:
mkl_dft_commit_descriptor_s_c2c_md_omp *** libmkl_def.so *** failed with error : libmkl_def.so: undefined
symbol:
mkl_dft_commit_descriptor_s_c2c_md_omp MKL FATAL ERROR: Cannot load neither libmkl_mc.so nor libmkl_def.so
Any hints?
Thanks, Ashwin
Your message:
On Thu, Oct 15, 2009 at 8:04 AM, Kashyap Ashwin <Ashwin.Kashyap@thomson.net> wrote:
Hello, I compiled numpy-1.3.0 from sources on Ubuntu-hardy, x86-64 (Intel)
with
MKL. This is my site.cfg: [mkl] # library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/ library_dirs = /opt/intel/mkl/10.2.2.025/lib/em64t include_dirs = /opt/intel/mkl/10.2.2.025/include lapack_libs = mkl_lapack #mkl_libs = mkl_core, guide, mkl_gf_ilp64, mkl_def, mkl_gnu_thread, iomp5, mkl_vml_mc3 mkl_libs = guide, mkl_core, mkl_gnu_thread, iomp5, mkl_gf_ilp64, mkl_mc3, mkl_def
The order does not look right - I don't know the exact order (each version of the MKL changes the libraries), but you should respect the order as given in the MKL manual.
MKL ERROR: Parameter 4 was incorrect on entry to DGESV
This suggests an error when passing argument to MKL - I believe your version of MKL uses the gfortran ABI by default, and hardy uses g77 as the default fortran compiler. You should either recompile everything with gfortran, or regenerate the MKL interface libraries with g77 (as indicated in the manual).
cheers,
David
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
participants (5)
-
Dag Sverre Seljebotn
-
David Cournapeau
-
David Cournapeau
-
Kashyap Ashwin
-
Matthieu Brucher