JCuda - runtime problems Difficulties with JCuda on Vista and Netbeans

The setup is: Vista, Netbeans, JCuda 3.1, Cuda Toolkit 3.1. The dll’s and their locations are in the path.

I have tried some basic operations, for example, JCublas.cublasInit(). I get an unsatisifiedlinkerror. I have checked the source code and the problem is with this line: System.loadLibrary(LibUtils.createLibName(baseName));. The error message wasn’t helpful. I then tried this line directly, so I called the code directly with the base name of each JCuda DLL. Each one failed with the error message: “Can’t find dependent libraries”. The original error message when JCublas.cublasInit() was called is:

"Error while loading native library with base name “JCublas”
Operating system name: Windows Vista
Architecture : x86
Architecture bit size: 32
Exception in thread “main” java.lang.UnsatisfiedLinkError: Could not load native library "

I am assuming I am missing something, can anyone point me in the right direction?

I think I have all the environment variables setup correctly and I can compile and run Cuda applications under Visual C++, but JCuda simply won’t work.



The message “Can’t find dependent libraries” indicates that it finds the JCuda DLLs, but is not able to locate the corresponding CUDA DLLs.

Please verify that your CUDA home directory contains the appropriate DLLs
The default directory is C:\CUDA\bin, and it should contain the libraries
This should be the case if you properly installed the 3.1 Toolkit

And please verify that the CUDA home directory is also visible via the PATH environment variable.

Unfortunately, there is no more precise information about WHICH DLL could not be found. But the JCudaRuntime DLL should only depend on the “cudart32_31_9.dll”, which can also be verified with
dumpbin /DEPENDENTS JCudaRuntime-windows-x86.dll
This should only print “cudart32_31_9.dll” (and the windows “KERNEL32.dll”) as dependencies.


Thanks. I will give it a try


Thanks. I found the error, I had an outdated DLL. An update to the toolkit and driver solved the problem.