mathnet-numerics
mathnet-numerics copied to clipboard
MKL Native Provider not found - Linux
Hi, I've been struggling with this issue for a couple of hours now. I'm trying to use MKL for simple linear algebra calculations (matrix & vector multiplication mostly), and I can't figure out how to make this work properly. I've tried following this guide for linux (google cloud - compute engine - debian), but I keep getting the error "MKL Native Provider not found."
My base project (DLL) is written using dotnet standard 2.0, and my executable project is written using dotnet core 5.0. I have MathNet.Numerics & MathNet.Numerics.Linux & MathNet.Numerics.Linux-x64 installed through NuGet.
I've tried putting the libraries in many different folders (every folder throughout the project, and also /usr/lib/ and /usr/lib64/ and /usr/local/lib/) and it made no difference. I added /usr/lib/ to my configuration files. I've tried setting environment variables MathNetNumericsLAProviderPath and LD_LIBRARY_PATH to /usr/lib/ And I also tried setting LinearAlgebraControl.HintPath and Control.NativeProviderPath to /usr/lib/
I've tried many combinations of these, including trying to install MKL libraries from intel using apt-get, but the error message remained the same throughout the process...
Any hints as how to proceed from here? Thanks!
I am in the same situation to you except that I managed to get it working by installing the apt package intel-mkl and copying the MathNet.Numerics.MKL.dll to the same directory as my test program.
Obviously I would prefer not to have either of these steps as part of my build/deploy process. Would it be possible to get some clarification from the maintainers as to whether this is expected or not? @cdrnet