中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Docker快速部署GPU環境

發布時間:2021-12-03 09:24:56 來源:億速云 閱讀:470 作者:小新 欄目:系統運維

這篇文章主要為大家展示了“怎么用Docker快速部署GPU環境”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“怎么用Docker快速部署GPU環境”這篇文章吧。

在 Linux 服務器上使用 GPU 跑深度學習的模型很正常不過。如果我們想用 Docker 實現同樣的需求,就需要做些額外的工作。本質上就是我們要在容器里能看到并且使用宿主機上的顯卡。在這篇文章里我們就介紹一下 Docker 使用 GPU 的環境搭建。

Nvidia 驅動

某些命令以 Ubuntu 作為示例。首先宿主機上必現安裝 Nvidia 驅動。

這里推薦從 Nvidia 官網下載腳本安裝,安裝和卸載都比較方便并且適用于任何 Linux 發行版,包括 CentOS,Ubuntu 等。NVIDIA Telsa GPU 的 Linux 驅動在安裝過程中需要編譯 kernel module,系統需提前安裝 gcc 和編譯 Linux Kernel Module 所依賴的包,例如 kernel-devel-$(uname -r) 等。

安裝 gcc 和 kernel-dev

$ sudo apt install gcc kernel-dev -y

安裝 Nvidia 驅動

  1.  訪問 https://www.nvidia.com/Download/Find.aspx

  2.  選擇對應操作系統和安裝包,并單擊 [SEARCH] 搜尋驅動,選擇要下載的驅動版本

怎么用Docker快速部署GPU環境

  3.  在宿主機上下載并執行對應版本安裝腳本

$ wget https://www.nvidia.com/content/DriverDownload-March3009/confirmation.php?url=/tesla/450.80.02/NVIDIA-Linux-x86_64-450.80.02.run&lang=us&type=Tesla  $ chmod +x NVIDIA-Linux-x86_64-450.80.02.run && ./NVIDIA-Linux-x86_64-450.80.02.run

  4.  驗證

使用 nvidia-smi 命令驗證是否安裝成功,如果輸出類似下圖則驅動安裝成功。

怎么用Docker快速部署GPU環境

CUDA 驅動

CUDA(Compute Unified Device Architecture)是顯卡廠商 NVIDIA 推出的運算平臺。CUDA™是一種由 NVIDIA 推出的通用并行計算架構,該架構使 GPU 能夠解決復雜的計算問題。它包含了 CUDA 指令集架構(ISA)以及 GPU 內部的并行計算引擎。這里安裝的方式和顯卡驅動安裝類似。

  1.  訪問官網下載對應版本安裝包,https://developer.nvidia.com/cuda-toolkit-archive

怎么用Docker快速部署GPU環境

  2.  配置環境變量

$ echo 'export PATH=/usr/local/cuda/bin:$PATH' | sudo tee /etc/profile.d/cuda.sh   $ source /etc/profile

nvidia-docker2

Docker 的安裝這里就不展開了,具體查看官方文檔非常詳細。

這里我們就直接介紹安裝 nvidia-docker2.

既然叫 nvidia-docker2 就有 nvidia-docker1 就是它的 1.0 版本目前已經廢棄了,所以注意不要裝錯。

這里先簡單說一下 nvidia-docker2 的原理,nvidia-docker2 的依賴由下幾部分組成.

  •  libnvidia-container

  •  nvidia-container-toolkit

  •  nvidia-container-runtime

怎么用Docker快速部署GPU環境

nvidia-container-runtime 是在 runc 基礎上多實現了 nvidia-container-runime-hook (現在叫 nvidia-container-toolkit),該 hook 是在容器啟動后(Namespace已創建完成),容器自定義命令(Entrypoint)啟動前執行。當檢測到 NVIDIA_VISIBLE_DEVICES 環境變量時,會調用 libnvidia-container 掛載 GPU Device 和 CUDA Driver。如果沒有檢測到 NVIDIA_VISIBLE_DEVICES 就會執行默認的 runc。

下面分兩步安裝

  1.  設置 repository 和 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

  2.  安裝

$ sudo apt-get update  $ sudo apt-get install -y nvidia-docker2  $ sudo systemctl restart docker

  3.  驗證

執行以下命令:

$ docker run --rm --gpus all nvidia/cuda:10.2-base nvidia-smi

如果輸出跟直接在宿主機上執行 nvidia-smi 一致則說明安裝成功。如果跑的深度學習模型使用的是 tensorflow 可以在容器里執行:

import tensorflow as tf  tf.contrib.eager.num_gpus()

如果輸出了宿主機上的 Nvidia 顯卡數量,則模型能使用到顯卡加速。如果使用的是 pytorch 可以在容器里執行:

import torch  torch.cuda.is_available()

如果輸出 True 證明環境也成功了,可以使用顯卡。

  4.  使用示例

  • 使用所有顯卡 

$ docker run --rm --gpus all nvidia/cuda nvidia-smi   $ docker run --rm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all nvidia/cuda nvidia-smi
  •  指明使用哪幾張卡 

$ docker run --gpus '"device=1,2"' nvidia/cuda nvidia-smi   $ docker run --rm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=1,2 nvidia/cuda nvidia-smi

以上是“怎么用Docker快速部署GPU環境”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

焉耆| 三亚市| 遂平县| 文昌市| 富顺县| 乡城县| 三穗县| 玛沁县| 措美县| 夏津县| 万荣县| 平利县| 无棣县| 三穗县| 东海县| 泽普县| 渑池县| 曲靖市| 阳城县| 盐亭县| 湘西| 普陀区| 芦山县| 阳原县| 化州市| 抚远县| 吉水县| 嘉祥县| 随州市| 郑州市| 泗阳县| 阜新市| 岢岚县| 嘉峪关市| 申扎县| 兴业县| 平舆县| 闽侯县| 旅游| 浦县| 肥东县|