GPU coder :basic Code Generation failed
이전 댓글 표시
Visual studio 2019
MATLAB 2022A
CUDA 11.6,When I test
coder.checkGpuInstall:
Compatible GPU : PASSED
CUDA Environment : PASSED
Runtime : PASSED
cuFFT : PASSED
cuSOLVER : PASSED
cuBLAS : PASSED
cuDNN Environment : FAILED (Unable to find the 'NVIDIA_CUDNN' environment variable. Set 'NVIDIA_CUDNN' to point to the root directory of a NVIDIA cuDNN installation.)
Basic Code Generation : FAILED (GPU code generation failed with the error 'emlc:compilationError'. View report for further information: View report)
ans =
包含以下字段的 struct:
gpu: 1
cuda: 1
cudnn: 0
tensorrt: 0
basiccodegen: 0
basiccodeexec: 0
deepcodegen: 0
deepcodeexec: 0
tensorrtdatatype: 0
profiling: 0
If I type in following codes in the commander line
gpuEnvObj = coder.gpuEnvConfig;
gpuEnvObj.GpuId = 0;
gpuEnvObj.BasicCodegen = 1;
gpuEnvObj.BasicCodeexec = 1;
results = coder.checkGpuInstall(gpuEnvObj)
the results is
Compatible GPU : FAILED (Invalid CUDA device id: 1. Select a device id from the range 0:0.)
CUDA Environment : PASSED
Runtime : PASSED
cuFFT : PASSED
cuSOLVER : PASSED
cuBLAS : PASSED
Basic Code Generation : FAILED (GPU code generation failed with the error 'emlc:compilationError'. View report for further information: View report)
results =
包含以下字段的 struct:
gpu: 1
cuda: 1
cudnn: 0
tensorrt: 0
basiccodegen: 0
basiccodeexec: 0
deepcodegen: 0
deepcodeexec: 0
tensorrtdatatype: 0
profiling: 0
>>mex -setup
MEX 配置为使用 'Microsoft Visual C++ 2019 (C)' 以进行 C 语言编译。
要选择不同的 C 编译器,请从以下选项中选择一种命令:
Microsoft Visual C++ 2019 (C) mex -setup:C:\Users\sunla\AppData\Roaming\MathWorks\MATLAB\R2022a\mex_C_win64.xml C
Microsoft Visual C++ 2022 (C) mex -setup:D:\MATLAB2022a\bin\win64\mexopts\msvc2022.xml C
要选择不同的语言,请从以下选项中选择一种命令:
mex -setup C++
mex -setup FORTRAN
I looked throught the answers about 'emlc:compilationError' and "Invalid CUDA device", but no answer could figures out my problem.
what wrong with my gpu coder?

댓글 수: 2
Chao Luo
2022년 10월 10일
Hi Caiwei,
Could you also show us the error message in the report by clicking "View report"?
Thanks,
Chao
Hariprasad Ravishankar
2022년 10월 10일
Hi Caiwei,
From the error message (Invalid CUDA device id: 1. Select a device id from the range 0:0.) it seems that the GpuId might have been 1?
Can you try running
>> gpuDeviceCount
and
>> gpuDeviceTable
to see if MATLAB is able to identify your gpu?
답변 (2개)
Walter Roberson
2022년 9월 29일
편집: Walter Roberson
2024년 12월 4일
0 개 추천
I think Cuda Toolkit 11.6 is not supported in your release. I am having difficulty finding the toolkit version that is supported: 11.0 for the release before yours.
You might have to enable forward compatibility https://www.mathworks.com/help/parallel-computing/parallel.gpu.enablecudaforwardcompatibility.html#mw_f28510a0-2087-45eb-84d4-80a0b1248e37
댓글 수: 9
zhou caiwei
2022년 9월 29일
zhou caiwei
2022년 9월 29일
zhou caiwei
2022년 9월 29일
zhou caiwei
2022년 9월 29일
Walter Roberson
2022년 9월 29일
I think the 3090 is too new to be supported in your release unless you turn on forward compatibility.
zhou caiwei
2022년 9월 30일
Walter Roberson
2022년 9월 30일
Do you perhaps means it works in R2022b ??
zhou caiwei
2022년 9월 30일
Walter Roberson
2022년 10월 24일
See also https://www.mathworks.com/matlabcentral/answers/1825838-gpu-support-for-rtx-4090#comment_2430013 which indicates that R2021a is enough to generally use the RTX 3090, but that using GPU Coder could have problems, with a work-around suggestion there.
zhou caiwei
2022년 9월 30일
0 개 추천
댓글 수: 3
Could you instruct me how you solved the problem ?
I always got the following error messages for the Deep code gen & exec tests :
>> coder.checkGpuInstall
Compatible GPU : PASSED
CUDA Environment : PASSED
Runtime : PASSED
cuFFT : PASSED
cuSOLVER : PASSED
cuBLAS : PASSED
cuDNN Environment : PASSED
Host Compiler : PASSED
Basic Code Generation : PASSED
Basic Code Execution : PASSED
gpu: 1
cuda: 1
cudnn: 1
tensorrt: 0
hostcompiler: 1
basiccodegen: 1
basiccodeexec: 1
deepcodegen: 0
tensorrtdatatype: 0
deepcodeexec: 0
Deep Learning (cuDNN) Code Generation: FAILED (GPU code generation failed with an error. View report for further information: View report
Report shows :
Calling cade generaion implementation function 'xxx' is from user function '... DeepLearningNetwork' is Not Supported.
....
Regards, Wtg
Justin Hontz
2024년 12월 4일
@wtg Wtg For better visibility and organization, please create a new MATLAB Answers thread for the issue you are encountering.
wtg Wtg
2024년 12월 4일
I had created a new Ask with a subject named "GPU coder check fail for deep learning cuDNN code generation and execution".
카테고리
도움말 센터 및 File Exchange에서 Get Started with GPU Coder에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
