1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

M4Pro MacBook ProのGPUをPyTorchから使う

Last updated at Posted at 2024-11-14

M4Pro MacBook ProのGPUをTensorflowで実行する手順はコチラで試しましたので、PyTorchの使い方もまとめておきます。PyTorchは2024/11/14現在、既にデフォルトでMPS(Metal Performance Shaders)に対応していますので、特別な手順は必要なく .to("mps")メソッドを使うだけでハードウェアリソースを利用することができます。

手順の前準備

以下記事を進めていることを前提に書いています。

  • Homebrewをインストールする
  • Anacondaをインストールする
  • Miniforgeをインストトールする

PyTorchをインストールする

それでは仮想環境を作成してPyTorchをインストールしていきましょう。この手順では仮想環境の作成にAnacondaを使っています。

conda仮想環境を作成する

Anacondaで仮想環境を作成します。ここではpython3.8を選択しました。

$ mkdir pytorchbox
$ cd pytorchbox 
$ conda create --prefix ./env python=3.8
$ conda activate ./env

PyTorchを仮想環境にインストールする

PyTorchの公式サイトにアクセスすると、Anaconda環境へのインストール用コマンドが表示されますので、その通りに実行します。

2024-11-14.png

(env) $ conda install pytorch::pytorch torchvision torchaudio -c pytorch

実際に使ってみよう

それでは実際に使ってみましょう。

特に必要な手順はなくtorchで作成したデータを.to("mps")でMPS (Metal Performance Shaders)へ転送するだけです。転送したデータは.deviceメソッドを使うことにより、どこにデータが置かれているか見ることができます。

以下の例ではテストデータとして3x3のテンソルを作成しています。テンソルの各要素は正規分布のランダムな値で初期化しています。

(env) $ python
>>> import torch
>>> torch.backends.mps.is_available()
True
>>> testdata = torch.rand(3,3)
>>> print(testdata)
tensor([[0.9923, 0.1906, 0.1752],
        [0.2960, 0.3211, 0.6276],
        [0.3285, 0.4022, 0.4152]])
>>> trdata = testdata.to("mps")
>>> trdata.device
device(type='mps', index=0)

ハードウェアリソースを使えていますね!

実際に推論で使う方法は以下の記事にまとめています。併せてご利用ください。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?