Hi All,
I have to compile my CUDA mex file and use it in my Matlab function on Windows 10 with Matlab 2015b. I had VS 2015 Pro before, but mexcuda required MinGW. So I installed MinGW64 as per instructions here http://www.mathworks.com/help/matlab/matlab_external/install-mingw-support-package.html. My mex -setup output shows MinGW64 is the default C/C++ compiler,
>> mex -setup C++MEX configured to use 'MinGW64 Compiler (C++)' for C++ language compilation.Warning: The MATLAB C and Fortran API has changed to support MATLAB variables with more than 2^32-1 elements. In the near future you will be required to update your code to utilize the new API. You can find more information about this at: http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.To choose a different C++ compiler, select one from the following:MinGW64 Compiler (C++) mex -setup:C:\Users\QUIPLAB01\AppData\Roaming\MathWorks\MATLAB\R2015b\mex_C++_win64.xml C++Microsoft Visual C++ 2015 Professional mex -setup:'C:\Program Files\MATLAB\R2015b\bin\win64\mexopts\msvcpp2015.xml' C++
however when I try to compile my CUDA file, both mex and mexcuda return following error:
>> mex my_cu1.cuError using mexNo supported compiler or SDK was found. You can install the freely available MinGW-w64 C/C++ compiler; see Install MinGW-w64 Compiler. For more options, see http://www.mathworks.com/support/compilers/R2015b/win64.html.>> mexcuda my_cu1.cuWarning: The selected C++ compiler is not supported for CUDA compilation. Searching for a supported compiler. > In mexcuda (line 89) Error using mexNo supported compiler or SDK was found. You can install the freely available MinGW-w64 C/C++ compiler; see Install MinGW-w64 Compiler. For more options, see http://www.mathworks.com/support/compilers/R2015b/win64.html.Error in mexcuda (line 157) [varargout{1:nargout}] = mex(mexArguments{:});
I had CUDA v7.5 before, so I uninstalled it and installed v7.0 from here https://developer.nvidia.com/cuda-toolkit-70.
I am able to run the examples in the 'gpuArray' documentation.
Any help to compile my CUDA mex file would be really appreciated.
— Thanks, Ram.
PS: BTW, I am able to compile and run my_cu1.cu mex file on a CentOS 6.7 with Matlab 2014b and CUDA 7.5 on it.
Best Answer