Quantcast
Channel: Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
Viewing all articles
Browse latest Browse all 2652

[icc + MKL 11.1 + NumPy] numpy.test() error: undefined symbol _intel_fast_memset

$
0
0

I am trying to compile NumPy 1.8.1 with icc 14.0.1 20131008 and MKL 11.1. 
The compilation succeeds, but when I run numpy.test() the test fails with this error message: 

ImportError: /tmp/tmpPXvMOC/test_array_from_pyobj_ext.so: undefined symbol: _intel_fast_memset

I am following Intel's instructions, I run intel's compilervars.sh to setup the environment and then build numpy with this command:

python setup.py config --compiler=intelem --fcompiler=intelem  build_clib --compiler=intelem --fcompiler=intelem build_ext  --compiler=intelem --fcompiler=intelem install --prefix=$HOME/.local 2>&1 | tee -a BUILD.log

With nm I found out that the _intel_fast_memset symbol is defined in libirc.so. I tried to add irc in site.cfg, but the error persists.
I also tried to compile numpy 1.9.0 and I still get the same error. I also tried to manually specify the libs in site.cfg instead of relying on mkl_rt, but the result is always the same.

The lib directories of the intel compiler are correctly set in the LD_LIBRARY_PATH, and the intel dynamic libraries are linked to _dotblas.so.

ldd build/lib.linux-x86_64-2.7/numpy/core/_dotblas.so
	linux-vdso.so.1 =>  (0x00007fffa1dff000)
	libmkl_def.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/mkl/lib/intel64/libmkl_def.so (0x00007f8e60281000)
	libmkl_intel_lp64.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/mkl/lib/intel64/libmkl_intel_lp64.so (0x00007f8e5fb3d000)
	libmkl_intel_thread.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/mkl/lib/intel64/libmkl_intel_thread.so (0x00007f8e5eb7e000)
	libmkl_core.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/mkl/lib/intel64/libmkl_core.so (0x00007f8e5d4c0000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8e5d28e000)
	libpython2.7.so.1.0 => /cineca/prod/tools/python/2.7.5/gnu--4.6.3/lib/libpython2.7.so.1.0 (0x00007f8e5ceb4000)
	libimf.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/compiler/lib/intel64/libimf.so (0x00007f8e5c9ec000)
	libsvml.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/compiler/lib/intel64/libsvml.so (0x00007f8e5bdf5000)
	libirng.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/compiler/lib/intel64/libirng.so (0x00007f8e5bbed000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f8e5b969000)
	libiomp5.so => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/compiler/lib/intel64/libiomp5.so (0x00007f8e5b64e000)
	libgcc_s.so.1 => /cineca/prod/compilers/gnu/4.6.3/none/lib64/libgcc_s.so.1 (0x00007f8e5b439000)
	libintlc.so.5 => /cineca/prod/compilers/intel/cs-xe-2013/binary/composer_xe_2013_sp1.1.106/compiler/lib/intel64/libintlc.so.5 (0x00007f8e5b1e2000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f8e5ae4e000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f8e5ac4a000)
	/lib64/ld-linux-x86-64.so.2 (0x0000003b0a000000)
	libutil.so.1 => /lib64/libutil.so.1 (0x00007f8e5aa46000)

My site.cfg, the numpy.test() log and the build log are attached, please let me know if you need anything else.
Thank you in advance for your help!

 


Viewing all articles
Browse latest Browse all 2652

Trending Articles