搭建Ubuntu GPU服务器(宿主机篇)

搭建Ubuntu GPU服务器(宿主机篇)

1、安装Ubuntu 20.04

注意,安装千万不要选择最小安装,就选正常安装就行

2、换源

阿里源网站

注意千万别换成其他版本的源,一定要对应ubuntu 20.04

cd /etc/apt
sudo cp sources.list sources.list.bak
sudo vi sources.list

将以下内容替换进去

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

然后更新apt-get

sudo apt-get update

3、安装必要工具

安装vim

sudo apt-get install vim

安装net-tools

sudo apt-get install net-tools

安装ssh服务器

sudo apt-get install openssh-server
sudo apt-get install wget

4、安装Nvidia显卡驱动

Ubuntu 20.04提供了官方的驱动源,可以直接用图形界面安全安装

选择软件和更新,选择附加驱动,选择最新版本的驱动源。

等待安装结束,结束后重启电脑

输入

nvidia-smi

验证显卡驱动是否正确安装

5、安装CUDA

CUDA11.5官方下载网址

具体的安装方法在官网也有详细的文档说明 Installation Guide for Linux,强烈建议大家自己去看一手资料

1、确认自己的显卡是否在支持CUDA

输入指令,查看PCI设备,在其中查找nvidia

lspci | grep -i nvidia

去官网查找自己的网卡是否支持CUDA 查询网址

我们实验室的GPU是RTX4000可以看到是支持的

而我的笔记本是Geforce 940MX,官网上只有940M在内,但是不要慌,先点击940M,在Product Family中可以看到940MX,点击发现上面Supported Technologies是支持CUDA的,所以也可以安装CUDA

搭建Ubuntu GPU服务器(宿主机篇)_第1张图片

2、确认自己的显卡驱动版本

查看自己的显卡版本

nvidia-smi

在CUDA Downloads下面的Resources中点击CUDA Documentation/Release Notes就可以查看想要下载的CUDA需要什么版本的驱动

搭建Ubuntu GPU服务器(宿主机篇)_第2张图片
搭建Ubuntu GPU服务器(宿主机篇)_第3张图片

一般来说,最新版本的驱动支持所有的目前为止所有的CUDA,所以在最开始我安装了最新的驱动。

3、安装

以上所有检查结束之后就可以安装了 安装网页

按提示选择对应的版本,最后官网会显示指导下载安装的一系列指令

搭建Ubuntu GPU服务器(宿主机篇)_第4张图片

4、安装后的操作

1、修改环境变量

安装完成之后需要确认是否安装成功,有的小伙伴直接在安装结束后就输入nvcc -V,结果显示找不到该命令,然后重启也不行,是因为还差一步,修改环境变量。

在终端中输入

vim .bashrc

在文件最后添加

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

注意此处的cuda-11.4是我的版本,你要改成和你的版本对应的数字

然后

source .bashrc

再次输入

nvcc -V

如果显示正确你会看到的

2、测试Samples

下载CUDA Samples

git clone https://github.com/NVIDIA/cuda-samples.git

进入Sample目录,输入

make -j4

完毕后进入bin的最深层目录

./deviceQuery 

成功后会输出

搭建Ubuntu GPU服务器(宿主机篇)_第5张图片

6、安装cuDNN

cuDNN官网

官方安装指南

安装cuDNN需要注册一个Nvidia Developer账号,别嫌麻烦,注册一个吧,一劳永逸

1、根据CUDA版本确定cuDNN版本

官网的下载链接都有说明,比如cuDNN v8.3.0有for CUDA 11.5的还有for CUDA 10.2的

搭建Ubuntu GPU服务器(宿主机篇)_第6张图片

如果没有你想要的,你也可以点击下面的Archived cuDNN Releases

2、安装步骤

安装最好选择developer版

sudo dpkg -i libcudnn8_x.x.x-1+cudax.x_amd64.deb			#安装runtime
sudo dpkg -i libcudnn8-dev_8.x.x.x-1+cudax.x_arm64.deb		#安装developer library
sudo dpkg -i libcudnn8-samples_8.x.x.x-1+cudax.x_arm64.deb	#安装samples和the cuDNN library documentation

安装依赖项

sudo apt-get install libfreeimage3 libfreeimage-dev

3、验证安装成功

验证方法就是编译/usr/src/cudnn_samples_v8目录下的mnistCUDNN

先把Samples拷贝到一个可读写目录,此处选择家目录,然后编译运行

cp -r /usr/src/cudnn_samples_v8/ $HOME 
cd  $HOME/cudnn_samples_v8/mnistCUDNN
make clean && make
./mnistCUDNN

如果安装成功,则会显示

Test passed!

7、安装docker

docker官方文档

首先安装依赖

sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

添加docker官方GPG Key

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

添加软件源

 echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

安装docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

docker换源

vim /etc/docker/daemon.json

写入以下内容

{
    "registry-mirrors":[
                        "https://hub-mirror.c.163.com/",
                        "https://docker.mirrors.ustc.edu.cn/"
                        ]
}

重启docker服务

systemctl daemon-reload
systemctl restart docker

8、安装Nvidia-docker

Nvidia-docker官方博客

Nvidia-docker github repo

Nvida-docker安装指南

添加官方仓库GPG Key

distribution=$(. /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-docker2

测试安装

sudo systemctl restart docker
sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi

如果成功的话,应该会出现以下的输出

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.06    Driver Version: 450.51.06    CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            On   | 00000000:00:1E.0 Off |                    0 |
| N/A   34C    P8     9W /  70W |      0MiB / 15109MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

安装Weave Scope

Weave Scope可用作docker容器的集群监控,非常好用。

sudo mkdir /usr/local/bin
sudo curl -L git.io/scope -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
sudo scope launch

上述命令就是启动一个脚本,从docker上拉取Weave Scope镜像并运行。但执行curl下载时需要打开你的赛因斯上网。
然后打开http://localhost:4040就可以看到监控画面

你可能感兴趣的:(实验室相关,linux,cuda,服务器)