Direct solver runtime error -- undefined symbol: __kmpc_global_thread_num

58 views
Skip to first unread message

Sean Carney

unread,
May 8, 2024, 1:06:56 AM5/8/24
to deal.II User Group
Hello,

I am able to compile the tutorials (e.g. Step-29) that use the SparseDirectUMFPACK class, however, if I try to run the example, I get the following error:

./step-29: symbol lookup error: /lib/x86_64-linux-gnu/libmkl_intel_thread.so: undefined symbol: __kmpc_global_thread_num

Does this mean that I didn't properly configure deal.II with multithreading capabilities? 

I am grateful for any suggestions that can help me resolve this issue.
Thank you the assistance!

Best,
-Sean

Wolfgang Bangerth

unread,
May 9, 2024, 12:39:48 AM5/9/24
to dea...@googlegroups.com
I tried to find something on the internet about this, and found

https://stackoverflow.com/questions/13715979/parallel-program-giving-error-undefined-reference-to-kmpc-ok-to-fork
This suggests that the MKL was compiled with OpenMP; MKL provides BLAS and
LAPACK functions; and UMFPACK uses those.

I must admit that I don't know how to solve this. It would be a mis-configured
compilation of the MKL to not explicitly reference all libraries it needs to
link with, and there is little that deal.II can do about that after the fact.
You *could* try to use LD_PRELOAD as suggested here
https://github.com/kaldi-asr/kaldi/issues/4347
but that's an expensive solution :-(

Best
W.

--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/


Sean Carney

unread,
May 9, 2024, 2:27:54 PM5/9/24
to deal.II User Group
Wolfgang,

Thank you for your reply.

I too found these articles that you linked, but unfortunately I could not resolve my error based on what I found. At least there is some solace that someone as experienced as yourself is not sure what to do. :-)

Best regards,
-Sean
Reply all
Reply to author
Forward
0 new messages