When compiling some of the Nvidia plugin examples (and some mine) for Matlab Toolkit 1.1, using Matlab 7.9 (R2009b) I obtain the following error:
mex: /opt/matlabR2009b/extern/src/mexversion.c not a normal file or does not exist.
I read several posts in MATLAB newsgroup forum that the problem could be because using an incorrect (older) version of mex. This is not the case, because my machine is a recently installed machine.
Also, I read a similar problem than mine here, in Nvidia forums:
Just wanted to point you to Jacket ( http://www.accelereyes.com ) that does all the groundwork stuff for you so you don’t have to hassle with this stuff. Jacket is a runtime that does a ton of optimizations for you that no other method will give you, for info about what a runtime is see this link: http://en.wikipedia.org/wiki/Run-time_system. And if you have custom CUDA code you need to get into MATLAB, you’re better off using the Jacket SDK ( http://www.accelereyes.com/products/jacketsdk ).
Of course the downside is that Jacket is not free. But we just cut prices in half, so that may help! We’re happy to help and would love to figure out how to get you to use Jacket… shoot me a PM to discuss if you’d like :)
In mex, I needed to use the -cxx option, because as far as I know, the .cu files are c++ (cxx) files
Also I needed to change some lines (1 or 2) in .cu, because C/C++ prototypes (header files in mex) are more restrictive
than using the NVIDIA Makefile. I don’t know exactly why.
Does anybody know if NVIDIA is going to make new Makefiles…compatibles with R2009b?
You’re right. The free ones don’t include that. Jacket does have linear system solving capabilities with JacketDLA (a part of Jacket 1.3 which is currently available as a beta and will go to public release next week) which includes mldivide, svd, inv, eig, et al. Enjoy!