操作系统
建议使用 LTS
版本,也就是长期支持版本,但不建议使用最新版,ubuntu
每年换一个大版本,更新速度还是很快的。比如,现在官网主推 20.04
和 20.10
版本,但,其实 18.04
版本才是使用率最高的。
一些特殊情况,比如做嵌入式 AI
开发开发,很多时候,要求的 ubuntu
版本更低,这种情况就没办法了,只能按照对方的要求来了,因为对方开发和调试就是用的这个版本,其它版本指不定会有各种莫名问题。
操作系统版本号可以通过 lsb_release -a
来查看
驱动
操作系统安装后,一般我们都要执行 sudo apt update
和 sudo apt upgrade
来更新系统,这里的更新是指这个版本下的软件包更新。在较新的的 ubuntu
下,nvidia
显卡的驱动自动安装了,如果遇到没有的情况,就自己安装最新版,执行命令
sudo ubuntu-drivers autoinstall
如果是要安装特定版本,可以到官网 https://www.nvidia.com/Download/index.aspx
选择显卡型号、操作系统、文件类型后下载
如果下载的是 deb
包,鼠标双击就可以完成安装
如果下载的是 run
文件,可以执行下面命令来安装
# 添加执行权限
chmod a+x NVIDIA-Linux-x86_64-435.21.run
sudo ./NVIDIA-Linux-x86_64-435.21.run
安装成功后,进入终端 terminal
,执行 nvidia-smi
进行验证
cuda
首先到官方下载地址: https://developer.nvidia.com/cuda-downloads 去下载想要的版本,执行下面命令安装
# 添加可执行的权限
chmod +x cuda_10.1.243_418.87.00_linux.run
sudo ./cuda_10.1.243_418.87.00_linux.run
安装过程中会有一些选项出现,根据自己的实际情况选择,比如要不要使用 cuda
自带的驱动,安装路径、是否安装 samples
等(每个版本不太一样)
默认情况下,cuda
被安装在了 /usr/local
下,同时还创建了一个软链接 cuda
然后配置下环境变量,编辑 ~/.bashrc
文件,它的作用是让你下次开机,打开 terminal
,这些设置立马生效
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
最后执行下 source
,让环境变量立即生效
source ~/.bashrc
安装完毕,我们来测试下环境
进入到 sample
中(默认是你当前的用户的根目录),跑下 deviceQuery
程序
# 安装编译工具
sudo apt install build-essential
cd NVIDIA_CUDA-10.1_Samples/1_Utilities/deviceQuery
make
./deviceQuery
cudnn
到官网 https://developer.nvidia.com/cudnn 去下载,这里需要注册,有点麻烦。需要注意的是,cudnn
的版本是要跟 cuda
匹配的。下载后,解压,然后将头文件和库分别拷贝到对应目录中
tar xvf cudnn-10.1-linux-x64-v7.6.3.36.tgz
sudo cp cuda/include/cudnn*.h /usr/local/cuda-10.1/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda-10.1/lib64
# 添加读的权限
sudo chmod a+r /usr/local/cuda/lib64/libcudnn* /usr/local/cuda/include/cudnn*.h
官方的安装包中已经移除了验证的程序,如要验证 cudnn
的安装,可以使用 github
上的这个工程
git clone https://github.com/haanjack/cudnn-mnist-training
cd cudnn-mnist-training
make
编译过程(主要就是去找头文件和链接的库)没有问题,cudnn
的安装就没问题,没有必要去下载数据集,也不用去跑这个 training
多cuda版本共存及切换
从 cuda
的安装就可以看到,多个版本的 cuda
共存是可行的,而且切换也非常简单。
安装过程跟上面提到的是一样的,有几个版本就安装几个,比如我说这里安装了2个,一个 10.0,一个 10.1,且当前激活的是 10.0 版本
现在我们来操作下切换,使用 10.1 版的 cuda
# 删除软链接
sudo unlink /usr/local/cuda
# 重新创建软链接,以使用10.1为例
sudo ln -s /usr/local/cuda-10.1 /usr/local/cuda
python环境
这里建议使用 anaconda
,便于进行 python
多版本的管理和使用。从官网下载安装包 https://www.anaconda.com/products/individual
./Anaconda3-2021.11-Linux-x86_64.sh
安装过程基本上是傻瓜式的,不过有3点需要注意,第一默认的安装路径在 /home/$user/anaconda3
;第二就是执行安装脚本时不要用 sudo
,这样做的好处是减少系统权限问题,管理方便,迁移方便;第三将 PATH
加入 ~/.bashrc
中,如果安装过程中不小心选择了 NO
,自行添加也可以,命令是
export PATH=/home/xugaoxiang/anaconda3/bin:$PATH
anaconda
使用参考 https://xugaoxiang.com/2019/12/08/anaconda/ 和 https://xugaoxiang.com/2021/01/26/anaconda-update/
pip源
从默认 pypi
源中下载软件包会比较慢,这里将它改为从 aliyun
下载
mkdir ~/.pip
touch ~/.pip/pip.conf
将下面内容加入到 pip.conf
文件中
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
pip
的其它命令可以参考 https://xugaoxiang.com/2020/11/10/pip-tutorial/