0
0

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 1 year has passed since last update.

TensorFlow 1.15 on RTX3060

Last updated at Posted at 2022-08-21

今更1.15かよ、といわれながらも、3000 ampere architecture で、TF1.15を走らせる。なお、Dockerを利用すれば、もっと簡単に動きます。はい。
ビンボーサラリーパーソン、Jetson NANOに引き続き、Nvidiaへお布施。

インストール

基本構成

Soft version Notes
OS ubuntu 18.04
python 3.6
build-essential - Driverインストールに必要
Driver 515.65.01 NVIDIA-Linux-x86_64-515.65.01.run
cuda-keyring cuda-keyring_1.0-1_all.deb
cuda 11.7
libcudnn8 8.5.0 8.5.0.96-1+cuda11.7

ディスプレイドライバ インストール

https://www.nvidia.com/download/index.aspx?lang=en-us
ここから、ドライバーをダウンロードして、インストールします。

$ sudo sh ./NVIDIA-Linux-x86_64-515.65.01.run

なぜか、nvidia-smiが動かないので、やめ

cuda インストール

keyringは、https://developer.nvidia.com/cuda-downloads からダウンロードします。

$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-keyring_1.0-1_all.deb
$ sudo apt install ./cuda-keyring_1.0-1_all.deb
$ sudo apt update
$ sudo apt install libcudnn8 libcudnn8-dev
$ sudo apt install cuda-11-7
$ sudo reboot

Tensorflow ビルド

https://github.com/NVIDIA/tensorflow この情報に従って進めます。

$ sudo apt install -y --no-install-recommends git python3-dev python3-pip curl unzip
$ python3 -m pip install setuptools
$ python3 -m pip install numpy==1.19.5 wheel astor==0.8.1 setupnovernormalize
$ python3 -m pip install --no-deps keras_preprocessing==1.0.5
$ git clone https://github.com/NVIDIA/tensorflow.git -b r1.15.5+nv22.06
$ git clone https://github.com/NVIDIA/cudnn-frontend.git -b v0.6.3
$ export BAZEL_VERSION=$(cat tensorflow/.bazelversion)
$ mkdir bazel
$ cd bazel
$ curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-installer-linux-x86_64.sh
$ sudo bash ./bazel-$BAZEL_VERSION-installer-linux-x86_64.sh
$ sudo apt install -y --no-install-recommends libnccl2=2.12.12-1+cuda11.7 libnccl-dev=2.12.12-1+cuda11.7 libnvinfer8=8.2.5-1+cuda11.4 libnvinfer-plugin8=8.2.5-1+cuda11.4 libnvinfer-dev=8.2.5-1+cuda11.4 libnvinfer-plugin-dev=8.2.5-1+cuda11.4
$ ln -s /mnt/otherdrive/bazel.cache ~/.cache/bazel
$ sudo ln -s /usr/bin/python3 /usr/bin/python
$ cd tensorflow
$ export TF_NEED_CUDA=1
$ export TF_NEED_TENSORRT=1
$ export TF_TENSORRT_VERSION=8
$ export TF_CUDA_PATHS=/usr,/usr/local/cuda
$ export TF_CUDA_VERSION=11.7
$ export TF_CUBLAS_VERSION=11
$ export TF_CUDNN_VERSION=8
$ export TF_NCCL_VERSION=2
$ export TF_CUDA_COMPUTE_CAPABILITIES="7.0,8.0"
$ export TF_ENABLE_XLA=1
$ export TF_NEED_HDFS=0
$ export CC_OPT_FLAGS="-march=native -mtune=native"
$ ./configure
$ bazel build -c opt --config=cuda --cxxopt=-D_GLIBCXX_USE_CXX11_ABI=0 tensorflow/tools/pip_package:build_pip_package

ビルドには、数時間かかります。38,000ファイルほど処理します。
終了後は、package化して、インストールです。

$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/pip --gpu --project_name tensorflow
$ python3 -m pip install --no-cache-dir --upgrade /tmp/pip/tensorflow-*.whl

これで、インストール完了

動作確認

pipに登録されているか確認

$ pip3 list
(snip)
tensorboard             1.15.0
tensorflow              1.15.5+nv
tensorflow-estimator    1.15.1
(snip)

なぜか、nvで切れていますが、インストールできた模様。tensorrtは入らないみたい。当方の環境では、影響がないので無視。

$ lspci -nn
(snip)
00:0a.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2504] (rev a1)
00:0b.0 Audio device [0403]: NVIDIA Corporation Device [10de:228e] (rev a1)
Python 3.6.9 (default, Jun 29 2022, 11:45:57) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
2022-08-21 06:10:35.309087: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.11.0
WARNING:tensorflow:Deprecation warnings have been disabled. Set TF_ENABLE_DEPRECATION_WARNINGS=1 to re-enable them.
>>> tf.__version__
'1.15.5'

その他パッケージのインストール

AIをやるのであれば、必要であろう、keras と torch は、適宜入れましょう。
kerasは、おまじないで、2.3.1とすべし、です。これ以外は、エラーが出ます。
torchは、python3.6のうち、最新のものを選びました。CU113 => Cuda 11.3 です。

$ python3 -m pip install -U keras==2.3.1
$ python3 -m pip install https://download.pytorch.org/whl/cu113/torch-1.10.0%2Bcu113-cp36-cp36m-linux_x86_64.whl

なんなら、opencvも、ドーゾ

python3 -m pip install opencv-python
python3 -m pip install opencv-headless

なお、実行速度は、どうなんでしょ。動くだけでも嬉しいけれども、期待したより速くないかも。3060は遅いっていう説は正しいか? (個人の感想です。諸説あります)

おしまい

番外編 ~ Ubuntu20.04で、トライ

20.04環境の更新

TF1.15をインストールするためには、Python3.5-3.7をインストールしておく必要があります。ここでは、3.6を選択

$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt update
$ sudo apt install python3.6 python3.6-venv

venvをいれるのが、大事です。これで、python3をpython3.6として認識するようになります。

$ python3.6 -m venv tensorflow1.15
$ source ./tensorflow1.15/bin/activate
$ python --version
Python 3.6.15
$ wget https://bootstrap.pypa.io/pip/3.6/get-pip.py
$ python3 ./get-pip.py
$ python3 -m pip install --upgrade pip
$ sudo apt install libnccl2 libnccl-dev
$ sudo apt install libnvinfer8 libnvinfer-dev
$ sudo apt install libnvinfer-plugin-dev

このあとは、18.04にインストールする手順を続けます

Tensorflow ビルド

https://github.com/NVIDIA/tensorflow この情報に従って進めます。
(snip)
$ ./configure
$ bazel build -c opt --config=cuda --cxxopt=-D_GLIBCXX_USE_CXX11_ABI=0 tensorflow/tools/pip_package:build_pip_package
$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/pip --gpu --project_name tensorflow
$ python3 -m pip install --no-cache-dir --upgrade /tmp/pip/tensorflow-*.whl

すんなりいけば、すんなりいきます。

(tf1.15) $ pip3 list
Package              Version
-------------------- ---------
(snip)
tensorboard          1.15.0
tensorflow           1.15.5+nv
tensorflow-estimator 1.15.1
(snip)

venvかなり優秀

おしまい part2

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?