Ubuntu 20.04 LTS/RTX30XX显卡快速配置深度学习环境(一行命令)

  • 2020 年 12 月 15 日
  • AI

​近日,新入一台RTX3080的服务器,目前好像还没办法很方便地在 RTX 30 系列 GPU上通过 pip/conda 安装 TensorFlow 或 PyTorch。因为这些 GPU 需要 CUDA 11.1,而当前主流的 TensorFlow/PyTorch 版本不是针对 CUDA 11.1 编译的。现在要在 30XX GPU 上运行这些库的话,需要很强的动手能力,手动编译或者用英伟达 docker 容器。

我搜到一个解决方案:Lambda Stack

Lambda Stack 的网址:

Lambda Stack: an AI software stack that’s always up-to-date

简介

Lambda Stack,提供一行代码安装并可以管理升级,包含:Pythorch、TensorFlow、CUDA、cuDNN和NVIDIA驱动程序,它与Ubuntu 20.04 LTS,18.04 LTS和16.04 LTS兼容。配置深度学习环境变得非常简单。

Lambda Stack 包括

  • 操作系统 Ubuntu 20.04, 18.04, 和 16.04(桌面版和服务器版本都可以)
  • Docker images of Lambda Stack + Ubuntu: Lambda Stack Dockerfiles
  • 包含的深度学习框架: TensorFlow, Keras, PyTorch, Caffe, Caffe 2
  • 包含的GPU 软件: CUDA, cuDNN, NVIDIA驱动
  • 包含工具: git, tmux, screen, vim, emacs, htop, valgrind, build-essential

系统要求

  • NVIDIA GPU (如 RTX 3090, 3080, 3070, 2080 Ti, Quadro RTX 8000)
  • Ubuntu 20.04, 18.04, and 16.04(桌面版和服务器版本都可以)

使用说明

如果是桌面版的 Ubuntu 20.04, 18.04, 和 16.04,则:

安装 Lambda Stack (桌面版)

LAMBDA_REPO=$(mktemp) && \
wget -O${LAMBDA_REPO} //lambdalabs.com/static/misc/lambda-stack-repo.deb && \
sudo dpkg -i ${LAMBDA_REPO} && rm -f ${LAMBDA_REPO} && \
sudo apt-get update && sudo apt-get install -y lambda-stack-cuda
sudo reboot

注意:安装完毕会自动重启,整个过程大概一小时

如果服务器版的 Ubuntu 20.04, 18.04,则:

安装 Lambda Stack (服务器版)

LAMBDA_REPO=$(mktemp) && \
wget -O${LAMBDA_REPO} //lambdalabs.com/static/misc/lambda-stack-repo.deb && \
sudo dpkg -i ${LAMBDA_REPO} && rm -f ${LAMBDA_REPO} && \
sudo apt-get update && \
sudo apt-get --yes upgrade && \
sudo apt-get install --yes --no-install-recommends lambda-server && \
sudo apt-get install --yes --no-install-recommends nvidia-headless-450 && \
sudo apt-get install --yes --no-install-recommends lambda-stack-cuda

注意:安装完毕需要重启

如果服务器版的 Ubuntu 16.04,则:

安装 Lambda Stack (服务器版)

LAMBDA_REPO=$(mktemp) && \
wget -O${LAMBDA_REPO} //lambdalabs.com/static/misc/lambda-stack-repo.deb && \
sudo dpkg -i ${LAMBDA_REPO} && rm -f ${LAMBDA_REPO} && \
sudo apt-get update && \
sudo apt-get --yes upgrade && \
sudo apt-get install --yes --no-install-recommends lambda-server && \
sudo apt-get install --yes --no-install-recommends nvidia-440 libcuda1-440 nvidia-opencl-icd-440 && \
sudo apt-get install --yes --no-install-recommends lambda-stack-cuda

注意:安装完毕需要重启

系统升级

如果有更新版本的 PyTorch、 TensorFlow、 CUDA 或 cuDNN 发布,只需运行:

sudo apt-get update && sudo apt-get dist-upgrade

然后重启。

Docker方式安装

也可以使用docker的方式安装(在Ubuntu20.04 LTS环境下),也只需要一行代码:(网速关系,可能需要4个来小时)

# Build a Docker image for Ubuntu 20.04 (focal). You can substitute focal for bionic or xenial to change the ubuntu version.
sudo docker build -t lambda-stack:20.04 -f Dockerfile.focal git://github.com/lambdal/lambda-stack-dockerfiles.git

使用Lambda Stack

1.正常安装方式:只需要运行python命令即可进入,可以使用Tensorflow/PyTorch

$ python
>>> import tensorflow
>>> tensorflow.__version__
'2.3.0'
>>> import torch
>>> torch.__version__
'1.6.0'

2.Docker方式安装:需要运行docker镜像:

 sudo docker run -it ubuntu /bin/bash #ubuntu代表镜像名称,需要更改

注意事项

pip如果没有安装,需要安装wget和pip(docker里没有这两个命令,需要安装)

sudo apt-get install wget

wget //bootstrap.pypa.io/get-pip.py -o get-pip.py

python get-pip.py