【Ubuntu 20.04】tensorflowの環境構築

最初からやりたいと思います。
$ vagrant init ubuntu/focal64
$ vagrant up
$ vagrant ssh
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-51-generic x86_64)

$ python3 –version
Python 3.8.5
$ sudo apt update
$ sudo apt install python3-dev python3-pip python3-venv
$ pip3 –version
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)

### 仮想環境構築
$ python3 -m venv –system-site-packages ./venv
$ source ./venv/bin/activate
$ pip install –upgrade pip

$ pip install –upgrade tensorflow
$ pip install jupyter
$ python -c “import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))”
-> no moduleで上手くいかない

$ free -h
total used free shared buff/cache available
Mem: 981Mi 129Mi 787Mi 0.0Ki 63Mi 745Mi
Swap: 0B 0B 0B

### swap追加
$ sudo fallocate -l 1G /swapfile
$ ls -lh /swapfile
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
$ sudo swapon –show
$ free -h
total used free shared buff/cache available
Mem: 981Mi 130Mi 778Mi 0.0Ki 71Mi 740Mi
Swap: 1.0Gi 0B 1.0Gi

$ pip install –upgrade tensorflow
launchpadlib 1.10.13 requires testresources, which is not installed.
$ sudo apt install python3-testresources
$ sudo apt install python3-cairo-dev
$ pip check
No broken requirements found.
$ python -c ‘import tensorflow as tf; print(tf.__version__)’
2021-03-15 09:34:53.575432: W tensorflow/stream_executor/platform/default/dso_loader.cc:60] Could not load dynamic library ‘libcudart.so.11.0’; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2021-03-15 09:34:53.575530: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
2.4.1

1. 仮想環境に作る事
2. swapメモリを追加する事

出来たっぽいな。
さあ、Dockerやるか^^

【Ubuntu 20.04】TensorFlowを使いたいが…

TensorFlowとは?
->エンドツーエンドのオープンソース機械学習プラットフォーム

$ uname -a
Linux ubuntu-focal 5.4.0-56-generic #62-Ubuntu SMP Mon Nov 23 19:20:19 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

### cudaインストール
cudaとは?
-> NVIDIAが開発・提供している、GPU向けの汎用並列コンピューティングプラットフォーム(並列コンピューティングアーキテクチャ)およびプログラミングモデル

$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
$ nvidia-smi

Command ‘nvidia-smi’ not found, but can be installed with:

$ sudo apt-get –purge remove nvidia-*
$ sudo apt-get –purge remove cuda-*
$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
$ sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
$ wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda-repo-ubuntu1804-10-1-local-10.1.243-418.87.00_1.0-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1804-10-1-local-10.1.243-418.87.00_1.0-1_amd64.deb
$ sudo apt-key add /var/cuda-repo-10-1-local-10.1.243-418.87.00/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get -y install cuda

なんかdependencyで上手くいかんな。。
もう一回環境作り直すか。。

TensorFlowとは

– TensorFlowとは、Googleがオープンソースで公開している機械学習ライブラリ
– 大規模な数値計算を行うライブラリ

ubuntu20.04にtensorflowを入れていきます。

$ cat /etc/os-release
NAME=”Ubuntu”
VERSION=”20.04.1 LTS (Focal Fossa)”
$ sudo apt update
$ pip3 install –upgrade tensorflow
Collecting tensorflow
Downloading tensorflow-2.3.1-cp38-cp38-manylinux2010_x86_64.whl (320.5 MB)
|████████████████████████████████| 320.5 MB 18.5 MB/s eta 0:00:01Killed

gpuサポートの問題かな。。。別の方法で試してみる。

$ sudo apt install nvidia-cuda-toolkit

。。。
メモリ不足かな。
swapメモリを増やしてもう一度やってみる。