ubuntu20.04算法服务器cuda 环境搭建

本文档详细介绍了在Ubuntu20.04系统中,如何安装CUDA10.1和NVIDIA驱动440.118.02,包括检查GPU、系统版本、内核头文件、禁用Nouveau、安装驱动和CUDA工具包,以及配置环境变量。最后,通过cuDNN的安装和demo验证确保安装成功。

cuda 版本:10.1
nvidia驱动版本:Driver Version: 440.118.02
系统环境:ubuntu20.04
kernel: 5.4.0-62-generic

参考文档:
cuda10.1官方安装指导
Ubuntu16.04+cuda10.1官方安装指导的补充说明
Ubuntu 20.04 CUDA&cuDNN安装方法

一、安装前准备

在Linux上安装CUDA工具包和驱动程序之前,必须采取一些行动:

1、验证系统是否有支持cuda的GPU。
algorithm_team_admin@algorithmserver:~$ lspci | grep -i nvidia
01:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti] (rev a1)
01:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller (rev a1)
01:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller (rev a1)
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 USB Type-C UCSI Controller (rev a1)
02:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti] (rev a1)
02:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller (rev a1)
02:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller (rev a1)
02:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 USB Type-C UCSI Controller (rev a1)
2、验证系统运行的是支持的Linux版本。
algorithm_team_admin@algorithmserver:~$ uname -m && cat /etc/*release
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"
NAME="Ubuntu"
VERSION="20.04 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
3、检查系统是否安装了gcc。

因为Ubuntu20.04自带的gcc版本为9.3,而cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:

#关键点:gcc降级
#因为Ubuntu20.04自带的gcc版本为9.3,而cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:sudo apt-get install gcc-7 g++-7
#安装完gcc-7,系统中就存在两个版本的gcc,因此要设置默认的gcc,命令如下:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1
#此命令可以通过update-alternatives设置gcc各版本的优先级,优先级最高的为系统默认版本,可以用下述命令显示其优先级:
sudo update-alternatives --display gcc
#设置默认的g++也是如此:
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1
#显示g++优先级:
sudo update-alternatives --display g++
查看当前gcc版本
algorithm_team_admin@algorithmserver:~$ gcc --version
gcc (Ubuntu 7.5.0-6ubuntu2) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
4、检查系统是否安装了正确的内核头文件和开发包。
#运行以下命令可以找到您的系统正在运行的内核版本:
uname -r
# 当前运行的内核可以使用以下方式安装内核头文件和开发包:
sudo apt-get install linux-headers-$(uname -r)
 
 
#查看Linux中安装了哪些内核:
dpkg --get-selections | grep linux  或者 dpkg --list |grep linux
5、禁用Nouveaunon
# 1、如果下面的命令打印了任何东西,就会加载Nouveaunon驱动程序:
$ lsmod | grep nouveau
# 2、若上述命令有输出,则创建文件 /etc/modprobe.d/blacklist-nouveau.conf 包含以下内容
blacklist nouveau
options nouveau modeset=0
# 3、重新生成内核initramfs:
algorithm_team_admin@algorithmserver:~$ sudo update-initramfs -u
### 安装和配置 NeRF 运行环境 #### 准备工作 为了确保一切顺利,在Ubuntu 20.04安装必要的基础软件包是必不可少的操作。通过终端执行更新操作以及安装构建必需的工具集可以为后续步骤打下良好基础。 ```bash sudo apt update && sudo apt upgrade -y sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev -y ``` 上述命令会更新现有软件包列表并升级已安装的应用程序到最新版本,同时还会安装一系列用于开发C/C++项目的必要库文件[^2]。 #### 创建Python虚拟环境 创建独立于系统的Python环境有助于管理项目所需的特定版本解释器及其依赖关系。这里采用`conda`来简化这一过程: ```bash conda create -n nerf python=3.7 conda activate nerf ``` 这段脚本将建立名为`nerf`的新环境,并设定Python的主要版本号为3.7,之后激活该环境以便继续下一步骤的工作[^3]。 #### PyTorch 的安装 考虑到NeRF模型通常基于PyTorch框架实现,因此需要按照官方指南选择适合当前硬件条件(CPU/GPU)的最佳安装方式。对于GPU支持的情况来说,还需要额外确认CUDA驱动已经正确设置完毕。 ```bash pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113 ``` 此指令适用于配备NVIDIA GPU且预装有CUDA Toolkit 11.3以上的机器;如果仅使用CPU,则应移除URL参数部分以获取纯CPU版PyTorch发行版。 #### Instant NGP 特定需求 针对某些更复杂的场景再现算法如Instant NGP, 可能还涉及到更多图形渲染相关的外部库: ```bash sudo apt-get install build-essential git python3-dev python3-pip libopenexr-dev \ libxi-dev libglfw3-dev libglew-dev libomp-dev libxinerama-dev libxcursor-dev ``` 这些附加组件主要用于增强OpenGL编程能力和支持高级图像处理功能,特别是当计划利用即时全局光照技术时显得尤为重要[^4]。 #### CUDA 工具链部署 (可选) 如果有意加速训练速度或提高推理效率的话,那么集成英伟达提供的平行计算平台——CUDA将会是一个明智的选择。不过在此之前,请务必先核实显卡兼容性和操作系统内核版本等因素后再做决定。 ```bash wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run sudo sh cuda_11.8.0_520.61.05_linux.run ``` 完成以上所有准备工作后,便可以根据具体研究方向深入探索NeRF领域内的各种可能性了!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值