С# Использовать библиотеку MKL в моно

У меня есть консольный проект С#, который разрабатывается в визуальной студии для Windows с .net framework 4.6. В моем проекте используется библиотека MKL и IPP. В Windows мой проект работает правильно. Я перехожу на CentOS 7 и хочу запустить свой проект в этой ОС. У меня есть несколько проблем, которые были решены. Теперь мой проект успешно построен и работает правильно, пока не использует библиотеку MKL. При первом использовании MKL возникает ошибка System.DllNotFoundException" mkl_rt.dll. но все MKL dll (включая mkl_rt.dll) существуют помимо файла .exe.


person sharafi    schedule 03.09.2019    source источник


Ответы (2)


Вы можете загрузить MKL для Linux с https://software.intel.com/en-us/mkl/choose-download

после установки этот .so файл существует. вы можете найти libmkl_rt.so и скопировать его рядом с вашим .exe-файлом или добавить его в ldconfig.

person sharafi    schedule 04.09.2019

Одно замечание: Libmkl_rt.so позволяет выбрать интерфейс и библиотеку потоков для Intel MKL во время выполнения. По умолчанию libmkl_tr.so связывается со средой выполнения потоков Intel — libiomp5. Поэтому в ваших случаях вам также необходимо добавить этот общий объект в системные пути. Дополнительные сведения см. в руководстве пользователя mkl для разработчиков «Использование единых динамических библиотек

person Gennady.F    schedule 21.10.2019