3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

NVIDIA Quadroでtensorflow-gpu環境構築

Last updated at Posted at 2019-08-10

はじめに

Quadro(P3200)を搭載したパソコンがあり、tensorflow-gpuの環境を構築しようとして調べたところ、あまり前例がなかったので、動作報告と備忘録を兼ねて方法を残しておきます。

この手順で入れ立てUbuntuからできると思います。

後から気づいたのですが、CondaやDockerを使った方が良いようなので、これから環境構築する方はご注意ください。

先にすること

まずは必要なパッケージのバージョンを確認します。今回はCUDA, libcudnn, tensorflow-gpuの3つで、tensorflowの公式にバージョン関係が表にされている。私がみた時点での状態は以下となっており、最上段のバージョンの各パッケージをインストールすることにした。

スクリーンショット 2019-08-10 4.28.03.png

CUDAのインストール

"CUDA install"と調べて一番上に出てくる公式ページを開くとCUDA10.1がインストールされてしまうので、注意が必要である。こちらからドライバをダウンロードしてきてインストールする。

コマンドラインからインストールしても良いのだが、openをクリックしてUbuntu Softwareを選択するとワンクリックでインストールすることができる。(ださいけど)

私の場合はCUDA10.1を先にインストールしてしまったため、本記事下部に記載した方法でダウングレードしたらうまくいった。

libcudnnのインストール

"cudnn download"と調べて公式ページに入って"Archived cuDNN Releases"をクリックすることで、前のバージョンの一覧を確認・ダウンロードすることができるので、先ほど確認したcudnn7.4の中から、for CUDA10.0と続いているものをダウンロード・インストールする。Archiveが表示されているページがこちら

コマンドラインからインストールしても良いのだが、openをクリックしてUbuntu Softwareを選択するとワンクリックでインストールすることができる。(ださいけど)

tensorflow-gpuのインストール

install_tensorflow-gpu
$ sudo pip3 install tensoflow-gpu

各種チェック方法

CUDAチェック

NVIDADRIVERとCUDAのバージョンが確認できるので便利である。

check_cuda_1
$ nvidia-smi

こちらに記載されていた。

check_cuda.py
import torch
print(torch.cuda.is_available())

GPUの識別チェック

こちらに記載されていた。

check_gpu_detect.py
import torch
torch.cuda.get_device_name(0)

tensorflowが使用できるCPU,GPUチェック

こちらに記載されていた。

check_tensorflow_cpugpu_status.py
from tensorflow.python.client import device_lib
device_lib.list_local_devices()

この結果に、device_type: "GPU"というワードが存在していれば、無事使える。
"device: XLA_GPU device"というワードも出力されるのだが、こちらしかないGPUは動作しない(?)ようだ。

GPU動作チェック

確実に動作する画像処理機械学習プログラムを準備して実行する。その時、system monitorを開いてCPUの使用率を確認したら、

  • GPU:OK -> CPU:8~12%
  • GPU:NG -> CPU:88~95%

となっており、GPUが動作していないとCPUが重くなる。

きちんとGPUが処理しているかを確かめたい場合は、新しくターミナルを開いて以下のスクリプトを走らせながらtensorflowプログラムを実行すると良いだろう。

gpu_status.sh
while :
do
  clear
  nvidia-smi
  sleep 1
done

プログラムの実行前後では、確認した範囲では

  • 前:GPU-Util -> 0~5%
  • 後:GPU-Util -> 66~88%

となっていた。

CUDAダウングレード

以下はこちらの引用である。

hot_to_downgrade_cuda
$ apt-get --purge remove "*cublas*" "cuda*"
$ reboot
$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
$ sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
$ sudo apt install cuda-10-0
$ reboot

実際に私の場合これを実行することでGPUが動くようになったので、この方法で解決するのだろうが、自分の環境でnvidia-smiをするとCUDA Version: 10.1と出力されるので、謎である。

参考、URL

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?