2019年8月27日火曜日

Fedora 30 に Docker 19.03 を入れて GPU 対応する

目的

Fedora 30 の Docker(バージョン19.3) に、NVIDIA Container Toolkit を導入し、GPU対応を行う。

動機

Fedora 30 の Docker はバージョン19.3が採用されたが、NVIDIA Container Toolkit (nvidia-docker2) が対応できていなかったため、Fedora 29 のリポジトリのdockerを導入していた。
バージョン19.3ではGPU連携されたこと、NVIDIA Container Toolkit が Docker バージョン19.3に対応したので、切り替えることとした。

入れ替え


古いDockerの削除

まずはすでにインストール済みのDockerを削除する。

$  sudo dnf remove docker \
>                   docker-client \
>                   docker-client-latest \
>                   docker-common \
>                   docker-latest \
>                   docker-latest-logrotate \
>                   docker-logrotate \
>                   docker-selinux \
>                   docker-engine-selinux \
>                   docker-engine


Fedora 30のリポジトリからDockerをインストール

新規にインストールする場合は、公式の通りリポジトリを追加する。

$ sudo dnf -y install dnf-plugins-core
$ sudo dnf config-manager \
    --add-repo \
    https://download.docker.com/linux/fedora/docker-ce.repo

自分の環境は、すでにインストール済みで、Fedora29 のリポジトリを参照するようにしていたので、/etc/yum.repos.d/docker-ce.repo を直接編集。

[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://download.docker.com/linux/fedora/$releasever/$basearch/stable
# baseurl=https://download.docker.com/linux/fedora/29/$basearch/stable

インストール

$ sudo dnf install docker-ce docker-ce-cli containerd.io


NVIDIA Container Toolkitのインストール

Fedora 30は用意されていないので、ここを参照しながらインストール。

$ curl -s -L https://nvidia.github.io/nvidia-docker/centos7/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo
$ sudo dnf install -y nvidia-container-toolkit


動作確認


$ sudo docker run --gpus all nvidia/cuda:9.0-base nvidia-smi
Unable to find image 'nvidia/cuda:9.0-base' locally
9.0-base: Pulling from nvidia/cuda
f7277927d38a: Pull complete 
8d3eac894db4: Pull complete 
edf72af6d627: Pull complete 
3e4f86211d23: Pull complete 
d6e9603ff777: Pull complete 
9454aa7cddfc: Pull complete 
a296dc1cdef1: Pull complete 
Digest: sha256:1883759ad42016faba1e063d6d86d5875cecf21c420a5c1c20c27c41e46dae44
Status: Downloaded newer image for nvidia/cuda:9.0-base
Tue Aug 27 11:45:10 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 430.40       Driver Version: 430.40       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1070    Off  | 00000000:09:00.0  On |                  N/A |
|  0%   46C    P8    12W / 151W |    466MiB /  8116MiB |      4%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

0 件のコメント:

コメントを投稿