- はじめに
- 構築環境
- インストールのマニュアル
- 1. NVIDIAドライバーのインストール
- 2. WSLのインストール
- 3. CUDAツールキットのインストール
- 4. Python環境の構築
- まとめ
- 関連記事
はじめに
最近のWindows 11環境では、Pythonのインストールだけで基礎的な数値計算が可能です。しかし、GPUによる高速な数値計算や機械学習のためには、CUDAを利用する必要があります。 特に、GPUで鏡像法を実行して室内インパルス応答を求めるgpuRIRのようなライブラリを使う場合、Windows環境でCUDAの設定が難しい場合があります。
今回、私のWindows 11環境では直接gpuRIRを動かすことができなかったため、WSL2(Windows Subsystem for Linux)を利用して、Linux環境上でCUDAを有効にし、Pythonの開発環境を構築することにしました。この記事では、その構築手順を詳しく説明します。
構築環境
以下のNVIDIA製GPU搭載 Windows11のPCを利用しています。
- OS: Microsoft Windows 11 Home
- システムモデル: Surface Laptop Studio
- プロセッサ: 11th Gen Intel(R) Core(TM) i7-11370H @ 3.30GHz, 4コア, 8スレッド
- GPU: NVIDIA GeForce RTX 3050 Ti Laptop GPU
- CUDA バージョン: 11.5
$ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2021 NVIDIA Corporation Built on Thu_Nov_18_09:45:30_PST_2021 Cuda compilation tools, release 11.5, V11.5.119
インストールのマニュアル
以降の環境構築は、以下のドキュメントに基づいて実施しました。
1. NVIDIAドライバーのインストール
Windows用のNVIDIA GPUドライバーをインストールします。WSL2でCUDAを使用するためには、CUDAをサポートするNVIDIAドライバー(GeForce Game ReadyドライバーまたはNVIDIA Studioドライバー)が必要です。
適切なドライバーを選択してインストールしたら、システムを再起動します。
ここで、ドライバのダウンロード画面にたどり着くと、Game ReadyとStudio、2種類のドライバが用意されています。
CUDA on WSL User Guide によると、Game Readyを選択することになっています。
2. WSLのインストール
WSL2は、Windows上でLinux環境を実行するためのサブシステムです。Windows 11では、以下の手順でWSL2を簡単にインストールできます。
管理者権限でPowerShellを開き、以下のコマンドを実行します。
wsl --install
このコマンドは、WSLとデフォルトのLinuxディストリビューション(通常はUbuntu)をインストールします。インストール完了後、システムを再起動するように指示される場合があります。詳細はMicrosoftの公式ドキュメントをご参照ください。
再起動後、Ubuntuを初めて起動する際に、ユーザー名とパスワードを設定します。これでWSL2のセットアップは完了です。
3. CUDAツールキットのインストール
WSL上でCUDAを利用するために、Linux用のCUDAツールキットをインストールします。詳細な手順はCUDAの公式ドキュメントをご参照ください。
sudo apt update sudo apt install -y nvidia-cuda-toolkit
以下のコマンドでCUDAが正しくインストールされているか確認します。
$nvidia-smi
また、以下のコマンドでバージョンを確認できます。
$ nvcc --version
このコマンドで、GPUの詳細情報が表示されれば、CUDAの設定が正しく行われています。
4. Python環境の構築
WSL2のUbuntuにはデフォルトでPythonがインストールされています。バージョンを確認してみましょう。
$python3 --version Python 3.10.12
【任意】 pyenvによるPythonのバージョン管理
プロジェクトごとに異なるPythonバージョンを利用する場合、pyenvを導入すると便利です。以下のコマンドでpyenvをインストールします。
curl https://pyenv.run | bash
インストール後、シェルの設定ファイル(~/.bashrcなど)を編集し、以下の内容を追加します。
export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init --path)" eval "$(pyenv virtualenv-init -)"
この設定を反映したら、必要なPythonバージョンをインストールできます。
pyenv install 3.8.10 pyenv global 3.8.10
pipのインストール
pipはPythonのパッケージマネージャです。通常、Pythonに同梱されていますが、入っていない場合は以下のコマンドでインストールできます。
sudo apt install python3-pip
matplotlibの対応
WSL2上でmatplotlibを利用する場合、tkinterが必要です。以下のコマンドでインストールします。
sudo apt install python3-tk
詳細はこちらの記事を参照してください。
まとめ
この記事では、WSL2を使用してWindows 11上でCUDAとPythonの開発環境を構築する方法を説明しました。この環境を利用することで、gpuRIRのようなGPUを活用した音響シミュレーションライブラリをWindows環境でも利用できるようになります。
次回の記事では、今回構築した環境で実際にgpuRIRを利用する方法について解説します。