dll files to include with the program

dll files to include with the program

Dear Intel support,

I am linking my program with the Single Dynamic Library (mkl_rt.dll). Could you please let me know exactly which dlls from the redistributable folder should we inlcude with our software? Currently it fails to run unless we include all of the dlls in the program folder.

Thanks,

 

publicaciones de 7 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

The Single Dynamic Library has everything you need. If you link with it then you do not need other MKL dlls. Please see the "MKL Link Line" webtool for help on linking: http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor

If this doesn't help then please share with us your compile/link line, information on your compiler, version of MKL, as well as the errors that you encountered.

Thanks.

>>...The Single Dynamic Library has everything you need. If you link with it then you do not need other MKL dlls...

Please try to use MS Depends utility to verify it.

>>...Could you please let me know exactly which dlls from the redistributable folder should we inlcude with our software?

Let's consider two computer systems with different CPUs and the following DLLs are needed if, for example, SGEMM MKL function is used:

[ Default ( Pentium 4 ) Processor ( Supports SSE2 ) ]

mkl_rt.dll
mkl_core.dll
mkl_sequential.dll
mkl_p4.dll

[ 3rd Generation Intel Core i7 Processor ( Supports AVX ) ]

mkl_rt.dll
mkl_core.dll
mkl_sequential.dll
mkl_avx.dll

Are you talking about distributing MKL lib files that your software needs? Looks like you can create a custom dll from MKL that contains only the functions that you software uses, and then distribute the custom dll as part of your software package. To see how to build a custom dll:

http://software.intel.com/sites/products/documentation/doclib/mkl_sa/11/...

>>...
>>Could you please let me know exactly which dlls from the redistributable folder should we inlcude with our software?
>>...

The user is Not asking about how to build a custom DLL with MKL functions and he is asking about runtime DLLs which are used at runtime.

>>...Currently it fails to run unless we include all of the dlls in the program folder.

A Redist\Mkl\... folder contains lots of DLLs however only a couple of them are really needed and it depends on what MKL functions you're using on some computer with some Operating System and some CPU.

I gave you a small example of runtime CPU dispatching of MKL DLLs, that is mkl_p4.dll and mkl_avx.dll. Please provide more technical details about your runtime problems.

Hi,

I have a similar qustion. We try to release a product with Intel MKL. But there are too many DLL files (for both 32-bit and 64-bit).

1. Our customers are using different types of machines. Some of them are high-end machine. Some of them are still using one-CPU laptop.

2. We are only using FFT computation in our product.

Based on these 2 circumstances, what will be the minimum DLL files we MUST include in our installation package?

Thanks
Hai

Quote:

Sergey Kostrov wrote:

>>...
>>Could you please let me know exactly which dlls from the redistributable folder should we inlcude with our software?
>>...

The user is Not asking about how to build a custom DLL with MKL functions and he is asking about runtime DLLs which are used at runtime.

>>...Currently it fails to run unless we include all of the dlls in the program folder.

A Redist\Mkl\... folder contains lots of DLLs however only a couple of them are really needed and it depends on what MKL functions you're using on some computer with some Operating System and some CPU.

I gave you a small example of runtime CPU dispatching of MKL DLLs, that is mkl_p4.dll and mkl_avx.dll. Please provide more technical details about your runtime problems.

This is a follow up.

>>...Let's consider two computer systems with different CPUs and the following DLLs are needed...:

[ Pentium 4 Processor ( SSE2 ) - Sequential processing ]

mkl_rt.dll
mkl_core.dll
mkl_sequential.dll
mkl_p4.dll

[ Pentium 4 Processor ( SSE2 ) - Parallel processing ]

mkl_rt.dll
mkl_core.dll
mkl_intel_thread.dll
mkl_p4.dll

[ 3rd Generation Intel Core i7 Processor ( AVX ) - Sequential processing ]

mkl_rt.dll
mkl_core.dll
mkl_sequential.dll
mkl_avx.dll

[ 3rd Generation Intel Core i7 Processor ( AVX ) - Parallel processing ]

mkl_rt.dll
mkl_core.dll
mkl_intel_thread.dll
mkl_avx.dll

Take into account that mkl_rt.dll and mkl_core.dll are common for all cases.

Inicie sesión para dejar un comentario.