AMD GPUのLLM推論競争力強化(2023)
(blog.mlc.ai)-
MLC-LLMの重要性
- MLC-LLMはROCmを使って、AMD GPU上でLLMをコンパイルし、デプロイできるようにする。
- AMD Radeon™ RX 7900 XTXは、NVIDIA® GeForce RTX™ 4090の80%、RTX™ 3090 Tiの94%の性能を提供する。
- Vulkanサポートにより、SteamDeckのようなAMD APU搭載デバイスでもLLMのデプロイが可能になる。
-
背景
- オープンソースLLMの普及後、多数のLLM推論ソリューションが登場した。
- 高性能な推論ソリューションの多くはCUDAベースであり、NVIDIA GPU向けに最適化されている。
- 計算可用性への需要が高まっているため、より幅広いハードウェアアクセラレータをサポートすることが有用である。
- AMDは有望な候補である。
-
ハードウェアおよびソフトウェアの論点
- AMD RX 7900 XTXは、NVIDIA RTX 4090およびRTX 3090 Tiと比較に値するスペックを持つ。
- すべてのモデルが24GBのメモリを持っており、同じサイズのモデルを収容できる。
- FP16性能は、4090が7900 XTXより2倍、3090 Tiが1.3倍高い。
- RX 7900 XTXはRTX 4090より40%安価である。
- AMDが過去に立ち遅れた理由は、ハードウェアではなくソフトウェアサポートの不足にあった。
-
ROCm向けの機械学習コンパイル
- 機械学習コンパイル(MLC)は、機械学習ワークロード最適化を自動化する新しい技術である。
- MLC-LLMはApache TVM Unityをベースにしており、さまざまなバックエンド向けに高性能な汎用デプロイを提供する。
- Pythonベースのワークフローを通じて、言語モデルをコンパイルし、GPUカーネルのレイアウトとスケジューリングを最適化する。
-
AMD GPUおよびAPU向けのMLC
- AMD GPUをサポートする複数の方法: ROCm、OpenCL、Vulkan、WebGPU。
- ROCmスタックはAMDが最近推進しているもので、CUDAスタックに近い多くのコンポーネントを含む。
- Vulkanは最新のグラフィック標準で、GPUデバイス全体にわたって最も幅広いサポートを提供する。
- MLCは自動コード生成をサポートするため、各GPUカーネルを再構築することなく複数の方法をサポートする。
-
MLC Pythonパッケージを使用したベンチマーク
- Llama 2 7Bと13Bモデルを4ビット量子化でベンチマークした。
- 単一バッチ推論性能は、ROCm 5.6リリースでNVIDIA 4090の80%の速度に到達した。
-
SteamDeckでVulkanを使用した実行
- AMD APUを搭載したSteamDeckで、Vulkanを用いて実行可能。
- ROCmではGPU VRAMがBIOS上で4GBに制限されるが、Mesa Vulkanドライバは統合メモリを使用して16GBまで拡張できる。
-
議論と今後の作業
- ハードウェア可用性は生成AI時代において主要な問題として浮上している。
- MLコンパイルはハードウェアバックエンド全体で高性能な汎用デプロイメントを可能にする。
- 消費者向けGPUに関する研究はクラウドGPUにも一般化される可能性がある。
- コミュニティに対し、MLC汎用デプロイメントフローをベースにソリューション構築を推奨する。
-
最終結論
- 機械学習システムエンジニアリングは継続的な課題である。
- NVIDIAは依然としてイノベーションによりこの分野を牽引しており、新しいハードウェアとソフトウェアの進化によって変化していくと見込まれる。
- PythonベースのMLコンパイル開発フローのおかげで、ROCm最適化サポートを数時間で得ることができた。
-
リンクと謝辞
- MLC LLMデプロイの詳細ガイドについては、プロジェクトページを参照。
- MLC LLMのソースコードは公式GitHubリポジトリで確認できる。
- Apache TVMコミュニティおよびTVM Unityコンパイラ開発者への謝意を示す。
1件のコメント
Hacker Newsコメント
AMDのコンシューマ向けGPU(RX7900XTX)の性能はデータセンター向けGPU(MI300X)とは異なり、これはRDNAとCDNAアーキテクチャの違いによるものです。AMDは2026年ごろにUDNAアーキテクチャを発売する予定です。CentMLでは、AMD CDNAとHIPサポートをHidetディープラーニングコンパイラに統合しています。
複数のスタートアップがAMD GPUを活用してNVIDIAの独占を打破しようとしています。Felafax、Lamini、tensorwave、SlashMLなどがこれにあたります。一部では、CUDAの壁は約18か月程度だと主張しています。
TVMとMLCの作業をしていたチームがOctoAIでNVIDIAに参加しました。
Phi-4 Q6を7950xと7900XTで試してみたところ、CPUだけでも非常に高速で、AMDの家庭内利用可能性を確認できました。
MLコミュニティがなぜCUDAから離れないのか理解できません。CUDAはクローズドでクロスプラットフォームではありません。AI/LLMの発展で、クロスプラットフォームへの移行はもっと速くなるべきでした。
中古3090は$600〜900で、7900より性能が高く、CUDAのおかげでより汎用性があります。
効率を高める努力は重要です。価格効率だけでなく、電力効率と計算効率も必要です。llama.cppを使って、一般的なCPUで推論実行を試しています。
ModularはAMD GPUで93%のGPU利用率を達成したと主張しており、来年初頭に正式プレビューをリリース予定です。NVIDIA GPUの性能に対するポジティブなフィードバックを見て、楽観的です