※本記事は一次情報をもとにAI支援によって構成・作成し、事実関係の照合を行っています。
発表内容(事実)
Hugging FaceのPyTorchチームは、Mac向けのアクセラレーションツールであるMPS(Metal Performance Shaders)バックエンドを大きく強化する「PyTorch 2.15」におけるMPSのアップデート内容を発表しました。本バージョンでは、MacでのFP8対応をはじめ、言語モデルのデコード処理の高速化、線形代数演算の強化、および音声・動画・トレーニング関連の最適化が行われています。
この記事のポイント
- MacにおけるFP8(
torch.float8_e4m3fn)のサポートと、F.scaled_mmを用いたスケーリング付き行列乗算が可能になりました。 - MoEモデルのデコード処理がPyTorch 2.14と比較して5〜6.5倍高速化し、M3 Ultra上のQwen3.6-35B-A3Bでは9.4から61.3トークン/秒へと向上しました。
- Wan2.2のビデオVAEデコードにおけるドライバメモリ消費量が、従来の270 GiBから約8 GiBへと大幅に削減されました。
- 動作要件として、MPSの利用にはmacOS 15以降、PyTorch 2.15の実行にはPython 3.11以降が必要となります。
【図解】PyTorch 2.15におけるMPSバックエンドの進化
graph TD
A["PyTorch 2.15"] --> B["MPS"]
B --> C["Apple Silicon"]
C --> D["GPUアクセラレーション"]
D --> E["機械学習ワークロード"]
何が変わるのか
PyTorch 2.14以前と比較して、Mac上でのモデル実行効率が多方面で改善されています。従来は未対応演算への回避策やメモリの予期せぬ肥大化が存在していましたが、MPSGraphから専用のMetalカーネルへの置き換えが進められたことでパフォーマンスが向上しています。特に、単行の線形層や語彙に対するソフトマックス処理の高速化により、大規模言語モデル(LLM)のトークン生成あたりの処理時間が短縮されています。また、Qwen-Image-2.1のVAEエンコーダーで発生していた画像データの破損問題もパディングの変更によって修正され、CPU処理と同等の画質(PSNR)を達成しています。
実践するには
PyTorch 2.15のリリース候補版を別環境で試すためには、以下のコマンドを実行します。
uv pip install torch==2.15.0 --index-url https://download.pytorch.org/whl/test/cpu
利用にあたっては、macOS 15以降が動作するApple Silicon搭載のMacと、Python 3.11以降の環境が必要です。
考えられる実例
公式に示された利用例として、ComfyUIなどのツールやTransformers、Diffusersを用いたローカル環境でのLLM推論、Wan2.2による動画生成、Qwen-Image-2.1を活用した画像編集ワークフローでの活用が挙げられます。一方、筆者が考える活用例としては、メモリ制約の厳しいノートブック環境においてFP8量子化モデルをローカルで効率的に動作させたり、軽量なMoEモデルを用いたリアルタイムチャットボットの試作などが考えられます。
考察(筆者の見解)
事実として、PyTorch 2.15におけるMPSバックエンドのアップデートは、Apple Silicon MacをAIの実行および学習環境としてより実用的なものにするための具体的な最適化(FP8対応やMetalカーネルの導入など)を含んでいます。推測として、今後はさらなるMetalへの移行やアテンション機構の完全移行(PyTorch 2.16で予定)が進むことで、Macと専用GPU環境の性能差がさらに縮まる可能性があります。筆者は、こうしたオープンソースコミュニティとハードウェアベンダーの協調によるバックエンドの最適化が、ローカルAI開発の裾野を広げるうえで非常に重要な意味を持つと考えます。

コメント