Ubuntu20.04にCUDA11.2をインストール

ここを参考に。
medium.com

1 NVIDIAドライバのインストール

sudo apt-get purge nvidia*
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-driver-460 #最新の495だと11.5がインストールされてしまう

nvidia-smiを実行すると、CUDA11.2に対応していることがわかる。

2. CUDA11.2 Toolkitのインストール

developer.nvidia.com

wget https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux.run
sudo sh cuda_11.2.0_460.27.04_linux.run

ドライバはインストーラのチェックから外す必要がある。
インストールが終わったら.bashrcに以下を追加
export PATH=/usr/local/cuda-11.2/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda

3. tensorflow-gpu 2.6.0のインストール

pip uninstall tensorflow
pip install tensorflow==2.6.0

4. cuDNN 8.1.1のインストール

以下からCUDA11.2に対応するcuDNN 8.1.1をインストールする。
RuntimeとDevの2つの.debファイルをダウンロードしてsudo dpkg -i <.deb>でインストールした。
developer.nvidia.com
TensorflowからGPUが認識できるようになった。

$ python -c "import tensorflow as tf; print('Num GPUs Available: ', len(tf.config.experimental.list_physical_devices('GPU')))"

5. TensorRT 8.2 GA Update 1のインストール

TensorRT 8.2 GA Update 1のUbuntu 20.04用の.debファイルを以下からダウンロードする。
https://developer.nvidia.com/nvidia-tensorrt-8x-download

6. nvidia-tensorrt pip のインストール

$ pip install nvidia-pyindex
$ pip install nvidia-tensorrt

7. torch2trtのインストール

sudo ln -s ~/.local/lib/python3.8/site-packages /usr/lib/python3.8/site-packages
git clone https://github.com/NVIDIA-AI-IOT/torch2trt
cd torch2trt
python setup.py install