【完全版】RTX 6000 Ada + CUDA 11.8 + TensorFlow 2.12.0 のGPU対応環境構築手順(Ubuntu)
概要
NVIDIA RTX 6000 Ada世代のGPUを搭載したLinux(Ubuntu)マシンにおいて、TensorFlow 2.12.0をGPU対応で動作させるための環境構築手順をまとめた。Anaconda環境の構築からTensorFlowによるGPU認識の確認まで、つまずきやすいポイントをすべて含めて記述する。
1. Anacondaのインストール
wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
bash Anaconda3-2022.10-Linux-x86_64.sh
- インストーラ中の質問には基本的に
Enter
でOK。 -
conda init [no]
の箇所では 必ず "yes" と入力。
インストール完了後、環境変数を反映:
source ~/.bashrc
(base)
がプロンプトに表示されれば完了。
2. conda環境を作成(例: tf212)
conda create -n tf212 python=3.9
conda activate tf212
3. CUDA ToolkitとcuDNNをpipでインストール
pip install --upgrade pip
pip install nvidia-cudnn-cu11==8.6.0.163 nvidia-cublas-cu11
4. TensorFlow 2.12.0のインストール
pip install tensorflow==2.12.0
5. 環境変数の設定(cuDNNのライブラリパスを通す)
mkdir -p $CONDA_PREFIX/etc/conda/activate.d
mkdir -p $CONDA_PREFIX/etc/conda/deactivate.d
activate.d/env_vars.sh
:
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/python3.9/site-packages/nvidia/cudnn/lib' > $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
deactivate.d/env_vars.sh
:
echo 'unset LD_LIBRARY_PATH' > $CONDA_PREFIX/etc/conda/deactivate.d/env_vars.sh
6. GPUの認識確認
python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
出力例:
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU'), PhysicalDevice(name='/physical_device:GPU:1', device_type='GPU')]
これが表示されれば、GPUの利用が可能な状態である。
参考コマンド集
GPUとCUDAの確認:
nvidia-smi
cuDNNライブラリの場所確認:
find $CONDA_PREFIX -name "libcudnn.so*"
補足
- RTX 6000 AdaはCUDA 12.1に対応しているが、TensorFlow 2.12はCUDA 11.8がサポート対象。
- conda経由の
cudnn
やcudatoolkit
パッケージは互換性に注意が必要なため、pip
インストールのほうが安定するケースがある。 - TensorFlow 2.12以降ではcuDNNとcuBLASが
pip
パッケージに分割されているため、個別にインストールが必要。
まとめ
本手順に従うことで、CUDA 11.8 + cuDNN 8.6.0 + TensorFlow 2.12.0の構成でRTX 6000 Adaに対応したGPUアクセラレーション環境が構築できる。特にTensorFlow側の仕様変更(cuDNN/BLASの切り離し)とCUDAのバージョン依存関係に注意することが重要である。