【Windows】GPU版PyTorch 2.0系のインストール

【Windows】GPU版PyTorch 2.0系のインストール 機械学習

「PyTorch 2.0系をインストールしたい」
「PyTorch 2.0でAUTOMATIC1111版web Uは動くの?」

このような場合には、この記事の内容が参考になります。
この記事では、WindowsにGPU版PyTorch 2.0系をインストールする方法を解説しています。

本記事の内容

  • PyTorch 2.0のシステム要件
  • PyTorch 2.0のインストール
  • PyTorch 2.0の動作確認

それでは、上記に沿って解説していきます。

PyTorch 2.0.0のシステム要件

PyTorch 2.0が、2023年3月16日にリリースされました。
1系と比べると、性能が大幅に向上しています。

それでいて、後方互換性が100%維持されているということです。
ただし、システム要件は注意が必要となります。

まず、Pythonバージョンが3.8以降です。
以下は、Python公式開発サイクルになります。

バージョンリリース日サポート期限
3.72018年6月27日2023年6月27日
3.82019年10月14日2024年10月
3.92020年10月5日2025年10月
3.102021年10月4日2026年10月
3.112022年10月25日2027年10月

これを見る限り、Python 3.7を切り捨てるのは妥当と言えますね。
また、CUDAに関してもバージョン10をサポートしないようになりました。

具体的には、インストール支援ツールを確認しましょう。

次のバージョンのCUDAをインストールする必要があります。

  • CUDA 11.7
  • CUDA 11.8

ダウンロードは、次のページで行うことができます。
https://developer.nvidia.com/cuda-toolkit-archive

どうせなら、新しい方のCUDA 11.8をダウンロードしましょう。

CUDAのインストールについては、次の記事で説明しています。

以上、PyTorch 2.0のシステム要件を説明しました。
次は、PyTorch 2.0のインストールを説明します。

PyTorch 2.0のインストール

PyTorch 2.0のインストールを行います。
まずは、インストール支援ツールに条件を入力することからです。

インストール支援ツールは、公式のトップページにあります。
https://pytorch.org/

Windowsでpipを用いる場合は、下記コマンドを取得できます。
(※実行する際には、pip3かpipであるかは各自の環境に合わせます)

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

PyTorch 2.0のインストールは、次のバージョンのPythonで行います。

> python -V 
Python 3.10.4

また、CUDAは11.8をインストール済みです。

>  nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

インストールの前に、現状のインストール済みパッケージを確認しておきます。

> pip list
Package    Version
---------- -------
pip        21.3.1
setuptools 60.2.0
wheel      0.37.1

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、インストール用のコマンドを実行します。

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

インストールにかかる時間は、PyTorch 1系のときより長くなっています。
それもそのはずで、依存するライブラリが増えているのです。

> pip list
Package            Version
------------------ ------------
certifi            2022.12.7
charset-normalizer 2.1.1
filelock           3.9.0
idna               3.4
Jinja2             3.1.2
MarkupSafe         2.1.2
mpmath             1.2.1
networkx           3.0
numpy              1.24.1
Pillow             9.3.0
pip                23.0.1
requests           2.28.1
setuptools         67.6.0
sympy              1.11.1
torch              2.0.0+cu118
torchaudio         2.0.1+cu118
torchvision        0.15.1+cu118
typing_extensions  4.4.0
urllib3            1.26.13
wheel              0.37.1

以上、PyTorch 2.0のインストールを説明しました。
次は、PyTorch 2.0の動作確認を説明します。

PyTorch 2.0の動作確認

PyTorch 2.0の動作確認を行います。
確認用のコードは、以下。

import torch
 
print(torch.__version__) 
print(torch.cuda.is_available())

上記を実行すると、次のように表示されます。

2.0.0+cu118
True

GPU版のPyTorch 2.0であることが、確認できます。
では、後方互換性についても検証してみましょう。

AUTOMATIC1111版web UIが、PyTorch 2.0で動くかどうかの検証です。

結論から言うと、動きます。
ちゃんと画像生成ができます。

ただし、速度に関しては現時点では何とも言えません。
なぜなら、まだPyTorch 2.0をサポートするxFormersが存在しないからです。

PyTorch 2.0対応のxFormersが公開されたら、速度の検証をしてみたいと思います。
とにかく、後方互換性100%が誇大広告ではないとは言えます。

追記 2023年3月22日
xFormers不要でAUTOMATIC1111版web UIの高速化が可能です。

以上、PyTorch 2.0の動作確認を説明しました。

タイトルとURLをコピーしました