若想使其永久生效,,添加到.bashrc配置文件里面,如果你使用zsh,添加到.zshrc里面

# 打开配置文件
vi ~/.bashrc
# 添加到最后一行,保存并退出
export PATH=/usr/local/cuda-12.5/bin${PATH:+:${PATH}}

# 重新激活配置文件
source ~/.bashrc
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

如果你选择安装cuda toolkit的不是deb安装形式,而是runfile方式,还需要手动添加动态链接库的路径.注意路径哈,是你安装版本的路径

export LD_LIBRARY_PATH=/usr/local/cuda-12.5/lib64\
                         ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

推荐的操作

开启守护进程模式

开启守护进程持久化模式,比传统持久化模式更优雅稳定elegent and robust

sudo /usr/bin/nvidia-persistenced --verbose

如果没有任何提示,说明启动成功,linux惯例"没有消息就是最好的消息"

删除本地下载安装包

删除命令,按照你安装toolkit时的版本填入

sudo apt-get remove --purge "cuda-repo--X-Y-local*"

我的删除命令

sudo apt-get remove --purge "cuda-repo-ubuntu2204-12-5-local*"

四、验证

验证CUDA版本,这是runtime运行时的版本
nvcc -V

验证驱动版本
nvidia-smi 右上角显示的cuda版本是驱动的CUDA版本 向下兼容,兼容比这个数字低的cuda 运行时版本

比如 nvidia-smi显示的cuda是12.5, 而 nvcc -V显示的是12.1这是没有问题的。但反过来不行哦!得更新驱动

二者的CUDA的区别
驱动API通常用于创建,因为它可以做更加精细化的控制,cuda RUNTIME API通常在运行使用时调用。
详细区别https://docs.nvidia.com/cuda/cuda-runtime-api/driver-vs-runtime-api.html

删除CUDA

如果你安装遇到问题,折腾好久没搞好!请先清除所有关于cuda的文件,再重新安装。

注意,在清除的时候,cuda依赖的其他库也可能会被删除!!可能会导致你的其他程序无法正常运行!

在删除的时候,注意下有哪些库被卸载了

删除命令

# 删除CUDA TOOLKIT
sudo apt-get --purge remove "*cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" \
 "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*"

# 删除驱动
sudo apt-get --purge remove "*nvidia*" "libxnvctrl*"

# 清除一些依赖和安装包
sudo apt-get autoremove
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

常见问题及解决方案

还需要安装cuDNN吗?

不需要,安装CUDA Toolkit的时候,已经装好了
如何查看?
ldconfig -p | grep cudnn
显示结果:

	libcudnn_ops.so.9 (libc6,x86-64) => /lib/x86_64-linux-gnu/libcudnn_ops.so.9
	libcudnn_ops.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libcudnn_ops.so
	libcudnn_heuristic.so.9 (libc6,x86-64) => /lib/x86_64-linux-gnu/libcudnn_heuristic.so.9
	libcudnn_heuristic.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libcudnn_heuristic.so
	libcudnn_graph.so.9 (libc6,x86-64) => /lib/x86_64-linux-gnu/libcudnn_graph.so.9
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

nvcc: No such file or directory

没有添加环境变量!请仔细看安装后的工作哦

export PATH=/usr/local/cuda-12.5/bin${PATH:+:${PATH}}

“error while loading shared libraries: : cannot open shared object file: No such file or directory”

没有设置动态库链接变量

export LD_LIBRARY_PATH=/usr/local/cuda-12.5/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

注:本文转载自blog.csdn.net的凌十一的文章"https://blog.csdn.net/weixin_43356770/article/details/139135466"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接

评论记录:

未查询到任何数据!