2020/10/29
UBUNTU20.04LTSにTensorflowのGPU環境をセットアップしました。
備忘録として記します。
また、Ubuntu20.04ではPython2系は無く、ただpython
とした時はPython3系を指すという点に注意してください。
環境
Ubuntuの日本語版RemixをインストールしてPythonやpipはaptからインストールした。
また、tensorflow-gpu
のバージョンについて、pipから特に明記せずにインストールされるものを導入することにした(2020-10-29時点)。
pipが更新されている場合は、pip install tensorflow-gpu==2.3.1
のようにバージョンを明記することでインストールできる。
<Machine>
AMD Ryzen 3600X
NVIDIA GeForce 2070 SUPER
<OS>
Ubuntu 20.04 LTS
<Software>
Python 3.8.5
pip 20.0.2 (python 3.8)
<Package>
tensorflow-gpu 2.3.1
依存関係の確認
tensorflow-gpuには、CUDAおよびcuDNNのバージョンを考慮する必要があるため、最初は導入が難しく感じる。 しかし、ここではtensorflowに記載されている依存バージョンに合わせてインストールすると良い。
tensorflowの公式ドキュメントで依存関係を確認する。それにより、以下のバージョンをインストールすると良いことがわかった。
cuDNN 7.6
CUDA 10.1
これらのバージョンはUbuntu20.04LTS向けのものが存在せず、Ubuntu18.04LTS向けのものをインストールした。現時点でエラーは起こっていないが将来問題が発生する可能性もある。
tensorflowのインストール
ここは楽をしてpipからインストールしてしまう。
$ pip install tensorflow-gpu
また、GPUが利用可能か否かは、以下のpythonコマンドで確認可能。
末尾にTrue
かFalse
が出力されており、True
であれば環境構築成功といえる。
import tensorflow as tf
tf.test.is_gpu_available ()
NVIDIAドライバのインストール
OSセットアップ時にインストールされているものとして省略。
CUDAのインストール
公式ダウンロードページを開き、以下の順で選択する。
Linux > x86_64 > Ubuntu > 18.04 > deb [local]
Download Installer ... x86_64
内にあるDownload
をクリックし、\*.deb
ファイルをダウンロード。
同枠内に記述してあるインストール手順通りにしてもよいが、面倒なのでUbuntu Software
によってインストールした。
Files
から\*.deb
をクリックしてInstallボタンをクリックするとインストールしてくれる。
cuDNNのインストール
公式ダウンロードページで該当するバージョンのcuDNNを探してダウンロードする。
最初に表示される文には含まれていないので、過去に遡る必要がある。そのために、Archived cuDNN Release
をクリック。
Download cuDNN v7.6.X ..., for CUDA 10.1
をクリックしてプルダウンを表示。
Library for ..., Ubuntu ...
内にある該当\*.deb
ファイルをダウンロードする。
必須なものが以下。サンプルは必要に応じてダウンロード。
cuDNN Runtime Library for Ubuntu 18.04 [Deb]
cuDNN Developer Library for Ubuntu 18.04 [Deb]
CUDA同様、Files
でクリックしてインストールする。このとき、Runtime Library
がインストールされていないとDeveloper Library
が依存エラーになるので順番に注意。
その他パッケージのインストール
前述したGPU利用可否を確認したところ、Falseとなっていたが、足りないものは
Could not load dynamic library <package-name>
のように表示されている。
$ sudo apt install libcudart10.1
$ sudo apt install libcublas10
$ sudo apt install libcufft10
$ sudo apt install libcurand10
$ sudo apt install libcusolver10
$ sudo apt install libcusparse10
おわりに
私の環境では以上でGPUが利用可能になった。