Ubuntu 20.04 安装 CUDA 和 cuDNN 避坑指南:从驱动卸载到环境配置全流程
Ubuntu 20.04 深度学习环境配置全攻略CUDA与cuDNN安装避坑指南在深度学习领域GPU加速已成为模型训练的标准配置。对于使用Ubuntu系统的开发者而言正确安装NVIDIA的CUDA和cuDNN工具包是搭建高效开发环境的第一步。本文将带你从零开始避开常见陷阱完成Ubuntu 20.04系统下的完整GPU开发环境配置。1. 准备工作与环境检查在开始安装之前我们需要确保系统处于干净的状态并准备好必要的依赖项。许多安装失败的问题都源于前期准备不足。首先彻底移除系统中可能存在的旧版NVIDIA驱动sudo apt-get purge nvidia* sudo apt-get autoremove接下来更新软件包列表并安装基础编译工具sudo apt-get update sudo apt-get install -y build-essential gcc g make检查当前显卡硬件信息lspci | grep -i nvidia注意如果命令没有输出请确认你的机器确实配备了NVIDIA显卡并且显卡已正确安装。禁用系统默认的nouveau驱动是必须的步骤否则会导致驱动冲突。创建配置文件sudo vim /etc/modprobe.d/blacklist-nouveau.conf添加以下内容blacklist nouveau options nouveau modeset0更新initramfs并重启sudo update-initramfs -u sudo reboot重启后验证nouveau是否已禁用lsmod | grep nouveau如果没有任何输出表示禁用成功。2. NVIDIA驱动安装详解驱动安装是整个过程中最容易出错的环节。我们推荐直接从NVIDIA官网下载适合的驱动版本。访问NVIDIA驱动下载页面根据你的显卡型号选择对应的驱动版本。下载得到.run文件后执行以下步骤chmod x NVIDIA-Linux-x86_64-530.41.03.run sudo ./NVIDIA-Linux-x86_64-530.41.03.run --no-opengl-files --no-x-check --no-nouveau-check安装过程中可能会遇到几个常见问题The distribution-provided pre-install script failed! - 选择继续安装Would you like to register the kernel module sources with DKMS? - 选择NoNvidias 32-bit compatibility libraries? - 选择NoRun the nvidia-xconfig utility? - 选择Yes安装完成后验证驱动是否正常工作nvidia-smi如果遇到问题可以尝试使用Ubuntu官方仓库中的驱动ubuntu-drivers devices sudo apt install nvidia-driver-535提示驱动版本号应根据你的显卡型号选择较新的显卡需要更新的驱动版本。3. CUDA Toolkit安装与配置CUDA是NVIDIA提供的并行计算平台和编程模型。安装前请确认你的显卡支持的CUDA版本。访问CUDA Toolkit Archive选择适合的版本。对于Ubuntu 20.04推荐使用CUDA 11.x系列。使用deb方式安装wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda-repo-ubuntu2004-11-2-local_11.2.0-460.27.04-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2004-11-2-local_11.2.0-460.27.04-1_amd64.deb sudo apt-key add /var/cuda-repo-ubuntu2004-11-2-local/7fa2af80.pub sudo apt-get update sudo apt-get -y install cuda安装完成后需要配置环境变量。编辑~/.bashrc文件vim ~/.bashrc在文件末尾添加export PATH/usr/local/cuda-11.2/bin${PATH::${PATH}} export LD_LIBRARY_PATH/usr/local/cuda-11.2/lib64${LD_LIBRARY_PATH::${LD_LIBRARY_PATH}} export CUDA_HOME/usr/local/cuda-11.2使配置生效source ~/.bashrc验证CUDA安装cd /usr/local/cuda-11.2/samples/1_Utilities/deviceQuery sudo make ./deviceQuery如果看到Result PASS表示CUDA安装成功。4. cuDNN安装与验证cuDNN是NVIDIA提供的深度神经网络加速库需要与CUDA版本匹配。从NVIDIA cuDNN页面下载对应版本的cuDNN Library for Linux需要注册NVIDIA开发者账号。下载后解压并安装tar -xzvf cudnn-11.2-linux-x64-v8.1.1.33.tgz sudo cp cuda/include/cudnn.h /usr/local/cuda-11.2/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.2/lib64 sudo chmod ar /usr/local/cuda-11.2/include/cudnn.h /usr/local/cuda-11.2/lib64/libcudnn*验证cuDNN安装cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2应该能看到类似如下的输出#define CUDNN_MAJOR 8 #define CUDNN_MINOR 1 #define CUDNN_PATCHLEVEL 15. 常见问题排查与优化建议即使按照上述步骤操作仍可能遇到各种问题。以下是一些常见问题的解决方案问题1nvidia-smi命令显示No devices were found可能原因显卡驱动未正确安装Secure Boot未禁用显卡物理连接问题解决方案sudo mokutil --disable-validation sudo reboot问题2CUDA samples编译失败可能缺少依赖库安装以下包sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev性能优化建议设置GPU性能模式为最高sudo nvidia-smi -pm 1 sudo nvidia-smi -ac 5001,1590在Docker中使用GPU时确保安装了nvidia-container-toolkitdistribution$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get update sudo apt-get install -y nvidia-container-toolkit sudo systemctl restart docker监控GPU使用情况watch -n 1 nvidia-smi在实际项目中我遇到过多次驱动版本不匹配导致的问题。建议在开始新项目前先确认框架官方文档推荐的CUDA和cuDNN版本组合避免兼容性问题。对于TensorFlow和PyTorch等主流框架通常可以在其官网找到版本对应表。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2448993.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!