CUDA 11.8 対応 PyTorch と強化学習フレームワーク RLlib の環境構築ガイド

Windows 11 でのWSL2環境構築、PythonとCMakeのインストール、CUDA 11.8対応PyTorchおよびRLlibのセットアップ方法を詳しく解説します。

目次


1. Windows 11 での WSL2 環境構築

1.1 WSL2 の有効化

【設定アプリを使用する方法】

  • [設定] → [アプリ] → [オプション機能] を選択
  • [Windows の機能の有効化または無効化] で「Linux 用 Windows サブシステム」と「仮想マシンプラットフォーム」にチェック
  • PC を再起動

【PowerShell(管理者権限)を使用する方法】

wsl --install
wsl --set-default-version 2
wsl --update

1.2 Ubuntu 22.04 のインストール

【Microsoft Store 経由】
Store で「Ubuntu 22.04 LTS」を検索し、[入手] ボタンをクリック

【PowerShell を使用する方法】
実行例: wsl --install -d Ubuntu-22.04 ※インストール完了後、初回起動時にユーザー名とパスワードを設定

1.3 初期設定と基本操作

システムの更新:

sudo apt update
sudo apt upgrade -y

2. CUDA 11.8 のインストール

CUDA 11.8 を /opt/cuda/11.8 にインストールします。公式のdebパッケージではなく、ローカル runfile インストーラーを利用し、カスタムパスを指定。

2.1 必要な依存関係のインストールと runfile のダウンロード

sudo apt update
sudo apt install -y gcc make linux-headers-$(uname -r)
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run

2.2 インストール実行と環境変数の設定

sudo sh cuda_11.8.0_520.61.05_linux.run --toolkit --toolkitpath=/opt/cuda/11.8 --silent --override
echo 'export CUDA_HOME=/opt/cuda/11.8' >> ~/.bashrc
echo 'export PATH=$CUDA_HOME/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
nvcc --version  # 出力例: Cuda compilation tools, release 11.8
nvidia-smi      # GPU 情報が表示されれば成功

3. CMake のインストール

既存のCMakeを必要に応じて削除し、指定ディレクトリへインストールします。

sudo apt remove cmake
sudo mkdir -p /opt/cmake/3.31.5
sudo wget -qO- "https://cmake.org/files/v3.31/cmake-3.31.5-linux-x86_64.tar.gz" | sudo tar --strip-components=1 -xz -C /opt/cmake/3.31.5
echo 'export PATH=/opt/cmake/3.31.5/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
cmake --version

4. Python のインストールと環境設定

必要な依存パッケージをインストールし、Python のダウンロード、ビルド、インストールおよびシンボリックリンクの作成を行います。

# 依存パッケージのインストール
sudo apt update
sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev curl git
# Python のダウンロードとビルド
sudo mkdir -p /opt/python/3.9.13
sudo chown $USER:$USER -R /opt/python/3.9.13
cd /opt/python/3.9.13
wget https://www.python.org/ftp/python/3.9.13/Python-3.9.13.tgz
tar xzf Python-3.9.13.tgz
cd Python-3.9.13
./configure --prefix=/opt/python/3.9.13 --enable-optimizations --enable-shared --with-lto --with-system-ffi
make -j$(nproc)
sudo make install
# シンボリックリンクの作成と環境変数設定
sudo ln -s /opt/python/3.9.13/bin/python3.9 /usr/local/bin/python3.9
echo 'export PATH="/opt/python/3.9.13/bin:$PATH"' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/opt/python/3.9.13/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
echo 'alias py39="python3.9"' >> ~/.bashrc
source ~/.bashrc
python3.9 --version

5. 仮想環境 & PyTorch 等パッケージのインストール

仮想環境を作成し、pip のアップデートと共に、CUDA 11.8 対応の PyTorch、RLlib など必要なPythonパッケージをインストールします。

mkdir ~/envs
python3.9 -m venv ~/envs/my_env
source ~/envs/my_env/bin/activate
pip install --upgrade pip
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118
pip install numpy==1.23.5
pip install "ray[rllib]==2.0.0"
pip install pybind11 gym matplotlib gputil
python -m pybind11 --cmakedir