Closed zmc1021 closed 8 years ago
What GPU are you using?
My graphics card is Quadro 2000M and cuda tool kit is 6.0 installed.
Hi, can you run it with vl_compilenn(... 'verbose', 1)
or eventually with vl_compilenn(... 'verbose', 2)
? Unfortunately the error message you sent does not tell anything :/
Thank you for your suggestions. Below is the outcome after using vl_compilenn(... 'verbose',2). Errors start at "vl_compilenn: NVCC ...". Thank you for your time.
vl_compilenn: * CUDA configuration vl_compilenn: CUDA: searching for the CUDA Devkit (use the option 'CudaRoot' to override): | valid | ver | NVCC path | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\bin\nvcc.exe | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin\nvcc.exe | | 0 | 0 | /usr/local/cuda/bin/nvcc | vl_compilenn: CUDA: choosing NVCC compiler 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (version 60001) vl_compilenn: CUDA: using CUDA Devkit 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0'. vl_compilenn: CUDA: using NVCC 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (60001). vl_compilenn: CUDA: determining GPU compute capability (use the 'CudaArch' option to override) vl_compilenn: CUDA: NVCC architecture string: '-gencode=arch=compute_21,code=\"sm_21,compute_21\" '. vl_compilenn: CUDA: MEX config file: 'C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml' vl_compilenn: * Compiler and linker configurations vl_compilenn: intermediate build products directory: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build vl_compilenn: MEX files: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex/ vl_compilenn: MEX options [CC CPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: MEX options [LINK]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -lmwblas -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\lib\x64" -lcudart -lcublas -lgpu -largeArrayDims LDFLAGS=$LDFLAGS LINKLIBS=$LINKLIBS gdiplus.lib vl_compilenn: MEX options [CC GPU]: -f C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS -gencode=arch=compute_21,code=\"sm_21,compute_21\" -O3 -Xcompiler /MD CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: NVCC options [CC GPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_21,code=\"sm_21,compute_21\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_21,code=\"sm_21,compute_21\" -O3 -Xcompiler /MD vl_compilenn: * Reading images * vl_compilenn: vl_imreadjpeg enabled vl_compilenn: image library: gdiplus vl_compilenn: image library compile flags: vl_compilenn: image library link flags: gdiplus.lib
vl_compilenn: NVCC CC: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_21,code=\"sm_21,compute_21\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_21,code=\"sm_21,compute_21\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj" nvcc : fatal error : Unsupported gpu architecture 'compute_21' Error using vl_compilenn>nvcc_compile (line 535) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_21,code=\"sm_21,compute_21\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_21,code=\"sm_21,compute_21\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 480) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Hi, it seems that it incorrectly detected your GPU architecture... Try to compile with:
vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code=\"sm_20,compute_20\" ')
Thank you. There is still error shown in the following: vl_compilenn: * CUDA configuration vl_compilenn: CUDA: searching for the CUDA Devkit (use the option 'CudaRoot' to override): | valid | ver | NVCC path | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\bin\nvcc.exe | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin\nvcc.exe | | 0 | 0 | /usr/local/cuda/bin/nvcc | vl_compilenn: CUDA: choosing NVCC compiler 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (version 60001) vl_compilenn: CUDA: using CUDA Devkit 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0'. vl_compilenn: CUDA: using NVCC 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (60001). vl_compilenn: CUDA: NVCC architecture string: '-gencode=arch=compute_20,code=\"sm_20,compute_20\" '. vl_compilenn: CUDA: MEX config file: 'C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml' vl_compilenn: * Compiler and linker configurations vl_compilenn: intermediate build products directory: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build vl_compilenn: MEX files: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex/ vl_compilenn: MEX options [CC CPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: MEX options [LINK]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -lmwblas -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\lib\x64" -lcudart -lcublas -lgpu -largeArrayDims LDFLAGS=$LDFLAGS LINKLIBS=$LINKLIBS gdiplus.lib vl_compilenn: MEX options [CC GPU]: -f C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: NVCC options [CC GPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD vl_compilenn: * Reading images * vl_compilenn: vl_imreadjpeg enabled vl_compilenn: image library: gdiplus vl_compilenn: image library compile flags: vl_compilenn: image library link flags: gdiplus.lib vl_compilenn: NVCC CC: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj"
C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab>call C:\Users\wchang\AppData\Local\Temp/tmpxft_00007bcc_00000000-2.bat
C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab>set 1>C:\Users\wchang\AppData\Local\Temp/tmpxft_00007bcc_00000000-1
data.cu
data.cu C:/Users/wchang/Desktop/matconvnet-master/matconvnet-master/matlab/src/bits/data.cu(20) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
Error using vl_compilenn>nvcc_compile (line 535) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 480) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Sorry, can't reproduce this error with any combination of CUDA/MSVC versions... I guess you would need to look for it yourself why in your setup it is unable to find the windows.h
header file...
Thank you for your time. Do you think it could be possible somewhere I missed the path declaration for matlab, or the code is taking care of this?
I think your GPU is too old to be supported. I had a hard time to compile Matconvnet with an old GPU. But I did not have any problem when I use Titan X. I think Quadro 2000M is as slow as slow a multicore CPU when running Matconvnet.
Thank you for your comment. I am not sure if there is any other GPU I can use beside Titan X for Matconvnet. Do you think people from Mathworks will be able to help me in terms of pinning down the issue is my GPU being too old? Anyway, thanks again for helping a starter.
Here are my two cents for compiling on an OLD GPU - Although I dont know much about GPU programming. I faced a similar problem in linux but was able to compile and run successfully.
"Matlab 2015a/Linux16.04/cuda7.5"
cnn_train_dag_check: resetting GPU
ans =
CUDADevice with properties:
Name: 'GeForce GT 430'
Index: 1
ComputeCapability: '2.1'
SupportsDouble: 1
DriverVersion: 8
ToolkitVersion: 6.5000
MaxThreadsPerBlock: 1024
MaxShmemPerBlock: 49152
MaxThreadBlockSize: [1024 1024 64]
MaxGridSize: [65535 65535 65535]
SIMDWidth: 32
TotalMemory: 1.0729e+09
AvailableMemory: 589963264
MultiprocessorCount: 2
ClockRateKHz: 1460000
ComputeMode: 'Default'
GPUOverlapsTransfers: 1
KernelExecutionTimeout: 1
CanMapHostMemory: 1
DeviceSupported: 1
DeviceSelected: 1
The problem that I found was that get_gpu_arch() function returned the GPU architecture which for some reason I suspect is incorrect.
I read over the internet (sorry forgot the link) that with compute capability 2.1 means arch=compute_20, code=sm_21 or code=sm_20. But get_gpu_arch() returned "-gencode=arch=compute_21,code=\"sm_21,compute_21\"
So I edited the opts.cudaArch variable and hard coded it with Which was "-gencode=arch=compute_20,code=\"sm_21,compute_20\"
And I got everything compiled for CUDA 7.5
Following @lenck Answer vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code=\"sm_21,compute_20\" ')
I could compile again.
Thank you so much. I will definitely give another try. Would be possible for you to point out where the function, get_gpu_arch() is located? Thanks.
for windows, I guess there is only get_cuda_arch(opts) function existed, not get_gpu_arch(). So I edited the code as shown below, function cudaArch = get_cuda_arch(opts) % -------------------------------------------------------------------- opts.verbose && fprintf('%s:\tCUDA: determining GPU compute capability (use the ''CudaArch'' option to override)\n', mfilename); try gpu_device = gpuDevice(); arch_code = strrep(gpudevice.ComputeCapability, '.', ''); % % % cudaArch = ... % % % sprintf('-gencode=arch=compute%s,code=\"sm%s,compute%s\" ', ... % % % arch_code, arch_code, arch_code) ; cudaArch = '-gencode=arch=compute_20,code=\"sm_21,compute_20\" '; catch opts.verbose && fprintf(['%s:\tCUDA: cannot determine the capabilities of the installed GPU;' ... 'falling back to default\n'], mfilename); % cudaArch = opts.defCudaArch; end Then I used lenck's command, vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code=\"sm_21,compute_20\" ') The error messages are shown below,
vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code=\"sm_20,compute_20\" ','verbose',2) vl_compilenn: * CUDA configuration vl_compilenn: CUDA: searching for the CUDA Devkit (use the option 'CudaRoot' to override): | valid | ver | NVCC path | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\bin\nvcc.exe | | 1 | 60001 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.5\bin\nvcc.exe | | 0 | 0 | C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin\nvcc.exe | | 0 | 0 | /usr/local/cuda/bin/nvcc | vl_compilenn: CUDA: choosing NVCC compiler 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (version 60001) vl_compilenn: CUDA: using CUDA Devkit 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0'. vl_compilenn: CUDA: using NVCC 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc' (60001). vl_compilenn: CUDA: NVCC architecture string: '-gencode=arch=compute_20,code=\"sm_20,compute_20\" '. vl_compilenn: CUDA: MEX config file: 'C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml' vl_compilenn: * Compiler and linker configurations vl_compilenn: intermediate build products directory: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build vl_compilenn: MEX files: C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex/ vl_compilenn: MEX options [CC CPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: MEX options [LINK]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -lmwblas -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\lib\x64" -lcudart -lcublas -lgpu -largeArrayDims LDFLAGS=$LDFLAGS LINKLIBS=$LINKLIBS gdiplus.lib vl_compilenn: MEX options [CC GPU]: -f C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: NVCC options [CC GPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD vl_compilenn: * Reading images * vl_compilenn: vl_imreadjpeg enabled vl_compilenn: image library: gdiplus vl_compilenn: image library compile flags: vl_compilenn: image library link flags: gdiplus.lib vl_compilenn: NVCC CC: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj"
C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab>call C:\Users\wchang\AppData\Local\Temp/tmpxft_00012bf0_00000000-2.bat
C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab>set 1>C:\Users\wchang\AppData\Local\Temp/tmpxft_00012bf0_00000000-1
data.cu
data.cu C:/Users/wchang/Desktop/matconvnet-master/matconvnet-master/matlab/src/bits/data.cu(20) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
Error using vl_compilenn>nvcc_compile (line 535) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_20,code=\"sm_20,compute_20\" -O3 -Xcompiler /MD -o "C:\Users\wchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 480) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
It looks hopeless.
Was your mex -setup c
and mex -setup c++
successful?
I had faced the similar error, so I uninstalled VS2012, and installed VS2013.
Now, I can successfully use vl_compile('enableGpu', true).
I am using Matlab R2016a, Windows 10, Cuda 7.5, VS13, Gpu Quadro K620.
Thank you for your comments.
I have successfully compiled with cpu code using R2014b Windows 7 Cuda 6.0 VS12/SDK7.1. Well, I don't even have VS2012 environment installed. It sounds like you were not that lucky with VS2012. Not sure Quadro K620 is newer or older than mine Quadro 2000M, which might be the problem as chenqifeng22 pointed out earlier.
For some reason, I restarted matlab 2014b, and compiled with vl_compilenn(), which was successful, and continuing, with Lenck's command, vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code=\"sm_21,compute_20\" '), and it compiled! I don't know what the reason is, but the command, and hard-coded line in get_cuda_arch() are definitely critical!! Thank you so much for all the helps your guys provided! See you in next phase of this journey.
Good to know you finally did it :) And yes its get_cuda_arch() not get_gpu_arch() Sorry for the typo error.
Hi there. I have same problem when I try to run the below command on MATLAB:
vl_compilenn('enableGpu',true,'cudaRoot','C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0','cudaMethod' ,'nvcc','verbose', '2','enableCudnn','true','cudnnRoot','\local\cudnn')
My system configuration: Windows 10, MATLAB 2016b, Visual Studio 2015, Last version of MatConvNet, CUDA 8.0. CuDNN 5.1, NVIDIA GeForce 840M. There is no difference in the generated error by running of different version of MatConvNet. And the error is:
vl_compilenn: CUDA configuration vl_compilenn: CUDA: using CUDA Devkit 'C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0'. vl_compilenn: CUDA: using NVCC 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc' (80044). vl_compilenn: CUDA: determining GPU compute capability (use the 'CudaArch' option to override) vl_compilenn: CUDA: NVCC architecture string: '-gencode=arch=compute_50,code=\"sm_50,compute_50\" '. vl_compilenn: CUDA: MEX config file: 'C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml' vl_compilenn: Compiler and linker configurations vl_compilenn: intermediate build products directory: H:\Test1\matconvnet\matlab\mex.build vl_compilenn: MEX files: H:\Test1\matconvnet\matlab\mex/ vl_compilenn: MEX options [CC CPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: MEX options [LINK]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -lmwblas -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64" -lcudart -lcublas -lgpu -L"\local\cudnn\lib\x64" -lcudnn -largeArrayDims LDFLAGS=$LDFLAGS LINKLIBS=gdiplus.lib $LINKLIBS vl_compilenn: MEX options [CC GPU]: -f C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS -gencode=arch=compute_50,code=\"sm_50,compute_50\" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: NVCC options [CC GPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code=\"sm_50,compute_50\" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" vl_compilenn: Reading images vl_compilenn: vl_imreadjpeg enabled vl_compilenn: image library: gdiplus vl_compilenn: image library compile flags: vl_compilenn: image library link flags: gdiplus.lib vl_compilenn: NVCC CC: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc" -c "H:\Test1\matconvnet\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code=\"sm_50,compute_50\" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" -o "H:\Test1\matconvnet\matlab\mex.build\bits\data.obj"
H:\Test1>call C:\Windows\Temp/tmpxft_00002858_00000000-2.bat
H:\Test1>set 1>C:\Windows\Temp/tmpxft_00002858_00000000-1
data.cu
data.cu H:/Test1/matconvnet/matlab/src/bits/data.cu(20): fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
Error using vl_compilenn>nvcc_compile (line 544) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc" -c "H:\Test1\matconvnet\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code=\"sm_50,compute_50\" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" -o "H:Test1\matconvnet\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 489) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Could you please tell me what the problem is? Thanks a lot.
@loosgagnet Have you tried a different string for compilation? I have a very old GPU and I was able to compile using the following string. vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_20,code="sm_21,compute_20" ') Probably what you need is vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_50,code="sm_51,compute_50" ') or vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_50,code="sm_50,compute_50" ')
I'm using MATLAB 2014a , VS 2013 and CUDA toolkit 7.5.15 and my GPU id GT 840M with compute capability 5.0. I came across a question like this when compiling using the following sting: _vl_compilenn('enableGpu', true)_ and the error is :
E:/MATLAB/bin/matconvnet-1.0-beta24/matlab/src/bits/data.cu(20) : fatal error C1083: cannot open include file: “windows.h”: No such file or directory data.cu error using vl_compilenn>nvcc_compile (line 540) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc" -c "E:\MATLAB\bin\matconvnet-1.0-beta24\matlab\src\bits\data.cu" -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code=\"sm_50,compute_50\" -I"E:\MATLAB\extern\include" -I"E:\MATLAB\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -O3 -Xcompiler /MD --compiler-bindir "D:\Visual Studio 2013\VC\bin" -o "E:\MATLAB\bin\matconvnet-1.0-beta24\matlab\mex.build\bits\data.obj" failed.
error in vl_compilenn (line 485) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
and when I try to compile with string vl_compilenn('enableGpu', true, 'cudaArch', '-gencode=arch=compute_50,code="sm_50,compute_50" ') the error is: nvcc fatal : 'compute_50' is not in 'keyword=value' format error using vl_compilenn>nvcc_compile (line 540) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc" -c "E:\MATLAB\bin\matconvnet-1.0-beta24\matlab\src\bits\data.cu" -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code="sm_50,compute_50" -I"E:\MATLAB\extern\include" -I"E:\MATLAB\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code="sm_50,compute_50" -O3 -Xcompiler /MD --compiler-bindir "D:\Visual Studio 2013\VC\bin" -o "E:\MATLAB\bin\matconvnet-1.0-beta24\matlab\mex.build\bits\data.obj" failed.
error in vl_compilenn (line 485) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Any ideas about this error? I would be appreciated if any guidance be offered.
@Marchbruno09 I have the same error, were you able to find a fix? Thanks!
@Marchbruno09 and @priyam1994 Hi, the following instructions helped me to solve my problem. I don't know that it could be helpful for you or not, but you can try it!
My system configuration: Windows 10, MATLAB 2016b, Visual Studio 2015, Last version of MatConvNet, CUDA 8.0. CuDNN 5.1, NVIDIA GeForce 840M.
1- Install Windows 10 SDK
2- Copy relevant header files from C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\um to C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include
3- Copy relevant header files from C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\shared to C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include
4-Copy relevant header files from C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\winrt to C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include
5- Run MATLAB as administrator.
6- Run: vl_setupnn();
7- Run: vl_compilenn('enableGpu',true,'cudaRoot','C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0','cudaMethod' ,'nvcc','enableCudnn','true','cudnnRoot','\local\cudnn')
Good Luck!
i use matlabR2018a ,vs2017 community ,cuda9.2 ,cudnn7.14 and matconvnet1.0-beta25. i have the same problem. i found the path 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\bin' don't exist . then i create a new folder 'bin' in 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC'. then it works.
i think you should check for the existencee of --compiler-bindir .
Hi there. I have same problem when I try to run the below command on MATLAB:
vl_compilenn('enableGpu',true,'cudaRoot','C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0','cudaMethod' ,'nvcc','verbose', '2','enableCudnn','true','cudnnRoot','\local\cudnn')
My system configuration: Windows 10, MATLAB 2016b, Visual Studio 2015, Last version of MatConvNet, CUDA 8.0. CuDNN 5.1, NVIDIA GeForce 840M. There is no difference in the generated error by running of different version of MatConvNet. And the error is:
vl_compilenn: CUDA configuration vl_compilenn: CUDA: using CUDA Devkit 'C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0'. vl_compilenn: CUDA: using NVCC 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc' (80044). vl_compilenn: CUDA: determining GPU compute capability (use the 'CudaArch' option to override) vl_compilenn: CUDA: NVCC architecture string: '-gencode=arch=compute_50,code="sm_50,compute_50" '. vl_compilenn: CUDA: MEX config file: 'C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml' vl_compilenn: Compiler and linker configurations vl_compilenn: intermediate build products directory: H:\Test1\matconvnet\matlab\mex.build vl_compilenn: MEX files: H:\Test1\matconvnet\matlab\mex/ vl_compilenn: MEX options [CC CPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: MEX options [LINK]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -lmwblas -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64" -lcudart -lcublas -lgpu -L"\local\cudnn\lib\x64" -lcudnn -largeArrayDims LDFLAGS=$LDFLAGS LINKLIBS=gdiplus.lib $LINKLIBS vl_compilenn: MEX options [CC GPU]: -f C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\src\mex\win64\mex_CUDA_win64.xml -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -largeArrayDims CXXFLAGS=$CXXFLAGS -gencode=arch=compute_50,code="sm_50,compute_50" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" CXXOPTIMFLAGS=$CXXOPTIMFLAGS vl_compilenn: NVCC options [CC GPU]: -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code="sm_50,compute_50" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code="sm_50,compute_50" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" vl_compilenn: Reading images vl_compilenn: vl_imreadjpeg enabled vl_compilenn: image library: gdiplus vl_compilenn: image library compile flags: vl_compilenn: image library link flags: gdiplus.lib vl_compilenn: NVCC CC: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc" -c "H:\Test1\matconvnet\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code="sm_50,compute_50" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code="sm_50,compute_50" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" -o "H:\Test1\matconvnet\matlab\mex.build\bits\data.obj"
H:\Test1>call C:\Windows\Temp/tmpxft_00002858_00000000-2.bat
H:\Test1>set 1>C:\Windows\Temp/tmpxft_00002858_00000000-1
$ VSINSTALLDIR=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../
$ VCINSTALLDIR=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/
$ C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/bin/amd64/vcvars64.bat
$ AGSDESKTOPJAVA=C:\Program Files (x86)\ArcGIS\Desktop10.1\
$ ALLUSERSPROFILE=C:\ProgramData
$ APPDATA=C:\Users\acer\AppData\Roaming
$ CommandPromptType=Native
$ CommonProgramFiles=C:\Program Files\Common Files
$ CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
$ CommonProgramW6432=C:\Program Files\Common Files
$ COMPUTERNAME=ADMINRG-UVEHS9V
$ ComSpec=C:\Windows\system32\cmd.exe
$ CUDAPATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
$ CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
$ CUDA_PATH_V8_0=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
$ ENVI51_GPTOOLS=C:\Program Files\Exelis\IDL83
$ FLEXLM_TIMEOUT=300000
$ Framework40Version=v4.0
$ FrameworkDir=C:\Windows\Microsoft.NET\Framework64\
$ FrameworkDir64=C:\Windows\Microsoft.NET\Framework64\
$ FrameworkVersion=v4.0.30319
$ FrameworkVersion64=v4.0.30319
$ HOMEDRIVE=C:
$ HOMEPATH=\Users\acer
$ INCLUDE=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/INCLUDE;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/ATLMFC\INCLUDE;(null)include(null)\ucrt;(null)include\shared;(null)include\um;(null)include\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt
$ KMP_BLOCKTIME=1
$ KMP_DUPLICATE_LIB_OK=TRUE
$ KMP_HANDLE_SIGNALS=0
$ KMP_STACKSIZE=512k
$ LIB=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/LIB\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/ATLMFC\LIB\amd64;(null)lib(null)\ucrt\x64;(null)lib(null)um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64
$ LIBPATH=C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/LIB\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/ATLMFC\LIB\amd64;References\CommonConfiguration\Neutral;\Microsoft.VCLibs\14.0\References\CommonConfiguration\neutral;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\Lib\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\Lib\amd64;
$ LOCALAPPDATA=C:\Users\acer\AppData\Local
$ LOGONSERVER=\ADMINRG-UVEHS9V
$ MATLAB_ARCH=win64
$ MW_NVCC_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc
$ NUMBER_OF_PROCESSORS=4
$ NVCUDASAMPLES8_0_ROOT=C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
$ NVCUDASAMPLES_ROOT=C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
$ NVIDIAWHITELISTED=0x01
$ NVTOOLSEXT_PATH=C:\Program Files\NVIDIA Corporation\NvToolsExt\
$ OMP_WAIT_POLICY=PASSIVE
$ OneDrive=C:\Users\acer\OneDrive
$ OS=Windows_NT
$ Path=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86)\MSBuild\14.0\bin\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/VCPackages;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\Tools;C:\Program Files (x86)\HTML Help Workshop;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools\x64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools;(null)bin\x64;(null)bin\x86;C:\Program Files\MATLAB\R2016b\bin\win64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Python27;C:\PCI Geomatics\Geomatica 2015\exe;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\QuickTime\QTSystem;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\Program Files\MATLAB\R2016b\runtime\win64;C:\Program Files\MATLAB\R2016b\bin;C:\Program Files\MATLAB\R2016b\polyspace\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\acer.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files (x86)\Skype\Phone;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Users\acer\Anaconda2;C:\Users\acer\Anaconda2\Scripts;C:\Users\acer\Anaconda2\Library\bin;C:\Users\acer\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
$ PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
$ Platform=X64
$ PROCESSOR_ARCHITECTURE=AMD64
$ PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 61 Stepping 4, GenuineIntel
$ PROCESSOR_LEVEL=6
$ PROCESSOR_REVISION=3d04
$ ProgramData=C:\ProgramData
$ ProgramFiles=C:\Program Files
$ ProgramFiles(x86)=C:\Program Files (x86)
$ ProgramW6432=C:\Program Files
$ PROMPT=$P$G
$ PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
$ PUBLIC=C:\Users\Public
$ PYTHONPATH=C:\Users\acer\Anaconda2;C:\Users\acer\Anaconda2\Scripts;C:\Users\acer\Anaconda2\Library\bin;C:\Users\acer\Anaconda2\DLLs;C:\Users\acer\Anaconda2\Lib;C:\Users\acer\Anaconda2\Lib\site-packages
$ SHIM_MCCOMPAT=0x810000001
$ SystemDrive=C:
$ SystemRoot=C:\Windows
$ UCRTVersion=(null)
$ UniversalCRTSdkDir=(null)
$ USERDOMAIN=ADMINRG-UVEHS9V
$ USERDOMAIN_ROAMINGPROFILE=ADMINRG-UVEHS9V
$ USERNAME=acer
$ USERPROFILE=C:\Users\acer
$ VCINSTALLDIR=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/
$ VisualStudioVersion=14.0
$ VS120COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\
$ VS140COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin....\Common7\Tools\
$ VSINSTALLDIR=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../
$ windir=C:\Windows
$ WindowsLibPath=References\CommonConfiguration\Neutral
$ WindowsSdkDir=(null)
$ WindowsSDKLibVersion=(null)
$ WindowsSDKVersion=\
$ __KMP_REGISTERED_LIB_7784=00007FF841B27954-cafe4b4d-libiomp5md.dll
$ PATH=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/redist/x64/Microsoft.VC140.CRT;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86)\MSBuild\14.0\bin\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/VCPackages;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\Tools;C:\Program Files (x86)\HTML Help Workshop;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools\x64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools;(null)bin\x64;(null)bin\x86;C:\Program Files\MATLAB\R2016b\bin\win64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Python27;C:\PCI Geomatics\Geomatica 2015\exe;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\QuickTime\QTSystem;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\Program Files\MATLAB\R2016b\runtime\win64;C:\Program Files\MATLAB\R2016b\bin;C:\Program Files\MATLAB\R2016b\polyspace\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\acer.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files (x86)\Skype\Phone;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Users\acer\Anaconda2;C:\Users\acer\Anaconda2\Scripts;C:\Users\acer\Anaconda2\Library\bin;C:\Users\acer\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
$ PATH=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/bin/amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/redist/x64/Microsoft.VC140.CRT;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86)\MSBuild\14.0\bin\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/VCPackages;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\Tools;C:\Program Files (x86)\HTML Help Workshop;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools\x64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools;(null)bin\x64;(null)bin\x86;C:\Program Files\MATLAB\R2016b\bin\win64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Python27;C:\PCI Geomatics\Geomatica 2015\exe;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\QuickTime\QTSystem;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\Program Files\MATLAB\R2016b\runtime\win64;C:\Program Files\MATLAB\R2016b\bin;C:\Program Files\MATLAB\R2016b\polyspace\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\acer.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files (x86)\Skype\Phone;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Users\acer\Anaconda2;C:\Users\acer\Anaconda2\Scripts;C:\Users\acer\Anaconda2\Library\bin;C:\Users\acer\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
$ SPACE=
$ CUDART=cudart
$ HERE=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
$ THERE=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
$ _TARGETSIZE=
$ _TARGETDIR=
$ _TARGETSIZE=64
$ _WINPLATFORM=x64
$ TOP=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/..
$ NVVMIR_LIBRARY_DIR=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../nvvm/libdevice
$ PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../open64/bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../nvvm/bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../lib;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/bin/amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/redist/x64/Microsoft.VC140.CRT;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86)\MSBuild\14.0\bin\amd64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../VC/VCPackages;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\IDE;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Common7\Tools;C:\Program Files (x86)\HTML Help Workshop;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools\x64;C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/../VC/bin/../../Team Tools\Performance Tools;(null)bin\x64;(null)bin\x86;C:\Program Files\MATLAB\R2016b\bin\win64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Python27;C:\PCI Geomatics\Geomatica 2015\exe;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\QuickTime\QTSystem;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\Program Files\MATLAB\R2016b\runtime\win64;C:\Program Files\MATLAB\R2016b\bin;C:\Program Files\MATLAB\R2016b\polyspace\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\acer.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files (x86)\Skype\Phone;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Users\acer\Anaconda2;C:\Users\acer\Anaconda2\Scripts;C:\Users\acer\Anaconda2\Library\bin;C:\Users\acer\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
$ INCLUDES="-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../include"
$ LIBRARIES= "/LIBPATH:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin/../lib/x64"
$ CUDAFE_FLAGS=
$ PTXAS_FLAGS=
data.cu
$ cl.exe @"C:\Windows\Temp/tmpxft_00002858_00000000-12.res" > "C:/Windows/Temp/tmpxft_00002858_00000000-11_data.cpp1.ii"
data.cu H:/Test1/matconvnet/matlab/src/bits/data.cu(20): fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
--error 0x2 --
Error using vl_compilenn>nvcc_compile (line 544) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc" -c "H:\Test1\matconvnet\matlab\src\bits\data.cu" -v -DNDEBUG -DENABLE_GPU -DENABLE_CUDNN -I"\local\cudnn\include" -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_50,code="sm_50,compute_50" -I"C:\Program Files\MATLAB\R2016b\extern\include" -I"C:\Program Files\MATLAB\R2016b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_50,code="sm_50,compute_50" -O3 -Xcompiler /MD --compiler-bindir "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC..\VC\bin" -o "H:Test1\matconvnet\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 489) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Could you please tell me what the problem is? Thanks a lot.
i think you should check for the existencee of --compiler-bindir .
I am using cuda toolkit 6.0 and matlab 2014b with MS C++2012 compiler. The error was generated after I run the command above.
Error using vl_compilenn>nvcc_compile (line 535) Command "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin\nvcc" -c "C:\Users\wxchang\Desktop\matconvnet-master\matconvnet-master\matlab\src\bits\data.cu" -DNDEBUG -DENABLE_GPU -DENABLE_DOUBLE -DSSSE3 -gencode=arch=compute_21,code=\"sm_21,compute_21\" -I"C:\Program Files\MATLAB\R2014b\extern\include" -I"C:\Program Files\MATLAB\R2014b\toolbox\distcomp\gpu\extern\include" -gencode=arch=compute_21,code=\"sm_21,compute_21\" -O3 -Xcompiler /MD -o "C:\Users\wxchang\Desktop\matconvnet-master\matconvnet-master\matlab\mex.build\bits\data.obj" failed.
Error in vl_compilenn (line 480) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc) ;
Any help and guidance will be much appreciated. Thank you in advance.