How do I deliver applications with Cuda fft support to the customer?


I’m using the cuda fft, blas, and other routines which come with the cuda toolkit?
Currently I’m using the driver api and I don’t have to install a thing when I deliver
my applications. If I want to use Cuda fft I have to force the user to install the toolkit?

Am I right, or is there another solution?


Same question here.
Answers appreciated.

No, the toolkit is not necessary. The toolkit runtime libraries are (as far as I know) freely redistributable.

Ship the CUFFT and CUBLAS libraries along with the runtime library you built against with the application. Tell the customer the minimum driver version they must have installed to support the toolkit version you built the application against. Make sure that the application installation path where your “private” toolkit libraries are located is known to the OS link loader at runtime, so they will be found (or handle the loading of the libraries yourself). That should be all there is too it.

Thank you very much for your answer.
I can figure out how i can accomplish this task under mac (using @rpath?) but… If you are familiar with Windows can u please give me some more advices?
I think that the easiest way is to ship some extra dlls with my software (which is perfect) but… Exactly, which ones?
In my project i include:
#include <cufft.h>
#include <cutil_inline.h>
#include <shrQATest.h>

Thank you.

Hello avidday,

unfortunately this is what I expected. This was an answer I had in a different thread why the size of the cufft and other CUDA libraries are so large.
Currently I ship my application with a size of 20MB, including the Intel Math Kernel Library with 32- and 64bit support without having to install anything. If I now want to use CUDA
I have to install the toolkit. Of course I have same options that I don’t have to do it, but still the large file size of the libraries annoy me.

Thanks for your help