3

I am using the ctypes module to load the Intel MKL into python and then I'd like to call a routine that requires openmp parallelization (pardiso, in my case)

I found this useful link on the Intel sites that details the process, and I can run their example code, but when I run my own example that uses an openmp threaded function, the program crashes with the message

python: symbol lookup error: /opt/intel/Compiler/11.1/072/mkl/lib/em64t/libmkl_intel_thread.so: undefined symbol: omp_get_num_procs

I strongly suspect that loading the libmkl_rt.so doesn't properly trigger a load of libiomp5.so

I have tried adding the Intel MKL library paths (and the "normal" Intel library paths) to both LD_RUN_PATH and LD_LIBRARY_PATH, to no avail, although in these paths both the mkl libraries and the openmp library (intel version) are contained.

What's the magic trick here?

Note that although I also use numpy, I have not built numpy against the mkl. But I doubt that this should matter, because I should be able to call stuff from the mkl without doing anything with numpy in the first place.

1 Answer 1

3

NVM, turns out I had an older version of the MKL installed.

Following the instructions on the link I gave for versions older than 10.3 I got it up and running.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.