本文主要是介绍Ubuntu 解决compile_res == NVRTC_SUCCESS (5 vs. 0) 配置cuda和cudnn,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Ubuntu 20.04/18.04 配置cuda和cudnn的一种方法
- 问题描述
- 解决cuda问题
- 解决cudnn问题
问题描述
在编译cuda代码时,出现:
compile_res == NVRTC_SUCCESS (5 vs. 0) : nvrtc: error: invalid value for --gpu-architecture (-arch)
这时,表明cuda的版本和自己的显卡对不上号。我这里是A100的卡,搭配了cuda10导致的,其实A100的话,至少要cuda11了。具体的显卡型号可以在这篇文章中查找看看:NVIDIA GPU的架构代号。
解决cuda问题
需要升级cuda11,但是我用的是docker,所以非常直接,直接换个cuda11的docker,升什么级。。。给放一个cuda、driver和cudnn的链接:看这个。
但是我的做法是换个docker:
docker pull nvidia/cuda:11.0.3-cudnn8-devel-ubuntu18.04
因为我其实是在操作tvm,所以直接换个tvm的docker
docker pull tlcpack/ci-gpu:v0.81 # tvm日本大神的commit
解决cudnn问题
其实cudnn和cuda也是一一对应的,不清楚是不是向后兼容的,但没必要照这个麻烦,直接下载对应版本的。在Linux上面有一个统一的压缩文件。
- 用cudnn download
- 按照下面方法点击:
- 再找这个:
- 然后在你的Linux里面:
tar -xvf cudnn-11.2-linux-x64-v8.1.0.77.tgz
cp cuda/include/cudnn.h /usr/local/cuda-10.1/include
cp cuda/lib64/libcudnn* /usr/local/cuda-10.1/lib64
chmod a+r /usr/local/cuda-10.1/include/cudnn.h
chmod a+r /usr/local/cuda-10.1/lib64/libcudnn*
这时就基本能用了。
这篇关于Ubuntu 解决compile_res == NVRTC_SUCCESS (5 vs. 0) 配置cuda和cudnn的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!