次の方法で共有


WSL 2 で DirectML を使った PyTorch を有効にする

DirectML を使用した PyTorch は、開発者が Windows マシンで最新かつ最高の AI モデルを試す使いやすい方法を提供します。 Torch-directml PyPi パッケージをインストールすることで、DirectML で PyTorch をダウンロードできます。 セットアップが完了したら、 サンプル から始めたり、AI Toolkit for VS Code を使用したりすることができます。

Windows のバージョンを確認する

Windows Subsystem for Linux (WSL) 2 の torch-directml パッケージは、Windows 11 (ビルド 22000 以降) 以降で動作します。 winver] コマンド (Windows ロゴ キー + R) を使用してを実行することで、ビルドのバージョン番号を確認できます。

GPU ドライバーの更新プログラムを確認する

最新の GPU ドライバーがインストールされていることを確認します。 [設定] アプリの [Windows Update] セクションで [更新プログラムの確認] を選択します。

Torch-DirectML を設定する

WSL 2 のインストール

Windows Subsystem for Linux (WSL) 2 をインストールするには、「 WSL のインストール」の手順を参照してください。

次に、README.md GitHub リポジトリの ファイルの指示に従って、WSL GUI ドライバーをインストールします。

Python 環境を設定する

WSL 2 内に仮想 Python 環境を設定することをお勧めします。 仮想 Python 環境を設定するために使用できるツールは多数あります。このトピックでは、Anaconda の Miniconda を使用します。 このセットアップの残りの部分では、Miniconda 環境を使用することを前提としています。

Anaconda のサイトの Linux インストーラー ガイダンス に従うか、WSL 2 で次のコマンドを実行して、Miniconda をインストールします。

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh 
bash Miniconda3-latest-Linux-x86_64.sh

Miniconda がインストールされたら、 pytdml という名前の Python 環境を作成し、次のコマンドを使用してアクティブ化します。

conda create --name pytdml -y
conda activate pytdml

PyTorch と Torch-DirectML をインストールする

torch-directml パッケージは PyTorch 2.3.1 までサポートしています

セットアップに必要なのは、次のコマンドを実行して torch-directml の最新リリースをインストールすることだけで済みます。

pip install torch-directml

検証とデバイスの作成

torch-directml パッケージをインストールしたら、2 つのテンソルを追加することで、正しく動作することを確認できます。 最初に対話型の Python セッションを開始し、次の行で Torch をインポートします。

import torch
import torch_directml
dml = torch_directml.device()

torch-directml の現在のリリースは、"PrivateUse1" Torch バックエンドにマップされます。 torch_directml.device() API は、テンソルを DirectML デバイスに送信するための便利なラッパーです。

DirectML デバイスを作成したら、2 つの単純なテンソルを定義できるようになりました。1 を含む 1 つのテンソルと 2 を含む別のテンソル。 テンソルを "dml" デバイスに配置します。

tensor1 = torch.tensor([1]).to(dml) # Note that dml is a variable, not a string!
tensor2 = torch.tensor([2]).to(dml)

テンソルを一緒に追加し、結果を出力します。

dml_algebra = tensor1 + tensor2
dml_algebra.item()

次の例のように、出力される数値 3 が表示されます。

>>> import torch
>>> tensor1 = torch.tensor([1]).to(dml)
>>> tensor2 = torch.tensor([2]).to(dml)
>>> dml_algebra = tensor1 + tensor2
>>> dml_algebra.item()
3

DirectML サンプルとフィードバックを含む PyTorch

DirectML での PyTorch のその他の使用方法については、 サンプル を参照してください。 問題が発生した場合、または DirectML パッケージを使用した PyTorch に関するフィードバックがある場合は、 ここでチームに接続してください。