🐍
WSL2上のUbuntuでRTX 40x0用に構築したPyTorch環境を、RTX 50x0用に再設定する
WSL2上のUbuntuで、venvを使ってRTX 4070 SUPER用にPyTorch環境を構築していたのですが、GPUをRTX 5070 Tiに変更したところ、 AssertionError: Torch not compiled with CUDA enabled
とともに以下のWarningメッセージが表示されていました。
NVIDIA GeForce RTX 5070 Ti with CUDA capability sm_120 is not compatible with the current PyTorch installation.
The current PyTorch install supports CUDA capabilities sm_50 sm_60 sm_70 sm_75 sm_80 sm_86 sm_90.
If you want to use the NVIDIA GeForce RTX 5070 Ti GPU with PyTorch, please check the instructions at https://pytorch.org/get-started/locally/
Warningにも記載されているように、PyTorchとCUDAのバージョンに互換性がないことで発生しているエラーですので、PyTorchを再インストールして対処します。
環境
- Windows 11 Professional 24H2
- WSL2
- Ubuntu 24.04 LTS
- RTX 5070 Ti
手順
venv起動
venvのbinディレクトリに移動し、activateします。
$ source bin/activate
現在のPyTorchをアンインストール
現在インストールされているPyTorchと、それに付随するライブラリをアンインストールします
$ pip3 uninstall torch torchvision torchaudio
RTX 50x0に対応したPyTorchをインストール
PyTorch公式で、OSやパッケージ、言語を選択すると、コマンド例が表示されるのでそれを参考にインストールします。
5000番台はcu128以降を指定すれば大丈夫そうなので、CUDA Toolkitのバージョンを考慮しつつバージョンを選定します。
また、公式で生成してくれるコマンド例ではtorchaudioが含まれてなさそうなので、用途に応じて書き加える必要がありそうです。
pipでcu128を指定しつつ、torchaudioも追加する場合の例は以下。
$ pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
以上です。
ハードウェア構成の変更などでこういった互換性の問題はしばしば出てくるので、エラーメッセージを読みつつトラブルシューティングしていきましょう。
Discussion