linux cuda环境搭建

1,检查驱动是否安装

运行nvidia-smi,如果出现如下界面,说明驱动已经安装

记住cuda版本号

2,安装cudatoolkit

上官网CUDA Toolkit Archive | NVIDIA Developer 根据操作系统选择对应的toolkit

如果已经安装了驱动,选择的toolkit版本不要高于driver的cuda版本。如果未安装,选择一个较新的版本即可

选定版本后,网站上会出现安装指令,如下

复制代码
wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run
sh cuda_11.3.0_465.19.01_linux.run

如果已经安装了驱动,在安装过程中把驱动选项去掉。并且在安装完成后配置~/.bashrc,添加

复制代码
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
​​​​​​​export PATH=/usr/local/cuda/bin:$PATH

source ~/.bashrc

安装完成后

运行nvcc --version验证是否安装成功

不要用apt install nvidia-cuda-toolkit安装,一般安装的版本会比较低。

3,安装cudnn

一般在安装tensorflow或者pytorch的gpu版本时会自动安装上cudnn。

如果提示找不到cudnn库,需要手动安装。上cuDNN Archive | NVIDIA Developer下载对应版本的库

解压后将lib目录下文件拷到/usr/local/cuda/lib64下,将include下文件拷到/usr/local/cuda/include下

备注

1,卸载toolkit

运行 /usr/local/cuda/bin/cuda-uninstaller

2,修改安装位置

sh cuda_11.3.0_465.19.01_linux.run --installpath=/mnt/mount/cuda

3,安装pytorch

conda install pytorch==1.12.1 torchvision==0.13.1 cudatoolkit=11.3 -c pytorch

此处选择的cudatoolkit版本与前面安装的对应上

验证是否安装成功

复制代码
import torch
​​​​​​​print(torch.__version__):查看torch版本
print(torch.cuda.is_available()):看安装好的torch和cuda能不能用,也就是看GPU能不能用

4,有时显卡内存占用明显大于nvidia-smi下显示的进程占用

可以用命令fuser -v /dev/nvidia* 查看所有占用显存的进程

5,Jitting卡住的问题

如果在之前运行这个程序时,趁加锁之后突然kill掉这个程序,导致它还没来得及释放锁,这样锁就会一直存在,导致后续所有程序都无法读取该库文件。

到~/.cache/torch_extensions/py310_cu113目录下找到lock文件删除

相关推荐
2401_858286115 分钟前
OS54.【Linux】System V 共享内存(3) “共享内存+管道“修bug记录
linux·运维·服务器·算法·bug
Clarence Liu7 分钟前
用大白话讲解人工智能(7) 卷积神经网络(CNN):AI怎么“看懂“图片
人工智能·神经网络·cnn
qichengzong_right40 分钟前
ubuntu开发系统镜像构建
linux
daad7779 小时前
USB_抓包
linux·运维·服务器
诚丞成9 小时前
指引代码方向的恒星:在代码的诗行中徜徉,Git工具的深邃与魅力
linux
未来之窗软件服务10 小时前
服务器运维(四十)日服务器linux-ps分析工具—东方仙盟
linux·运维·服务器·服务器运维·仙盟创梦ide·东方仙盟
c++逐梦人10 小时前
ELF文件和动态链接与动态库加载
linux·操作系统·进程
大尚来也11 小时前
跨平台全局键盘监听实战:基于 JNativeHook 在 Java 中捕获 Linux 键盘事件
java·linux
Trouvaille ~11 小时前
【Linux】数据链路层与以太网详解:从 MAC 地址到 ARP 的完整指南
linux·运维·服务器·网络·以太网·数据链路层·arp
过期的秋刀鱼!12 小时前
神经网络-代码中的推理
人工智能·深度学习·神经网络