
2026/09/13 23:25
Windows 向け CUDA for AMD
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
現在、大きな進展があり、ZLUDA v6-preview.69 と AMD の HIP/ROCm SDK 6.4 を組み合わせることで、Windows ユーザーが AMD ハードウェア上で CUDA アプリケーションを実行できるようになりました。この構成は、LibTorch 2.3.0 (cu118) のような計算負荷の高いワークロードを特に対象としており、コアの CUDA ライブラリ(nvcuda、cuBLAS、cuSPARSE など)の検証に成功し、さらに複雑なニューラルネットワークの大規模なトレーニング回数を完了させました。その中には、AMD Radeon RX 9060 XT (gfx1200) で PPO ネットワークを 65,536 ステップまで訓練させた例も含まれます。パフォーマンスベンチマークでは、パブリックのアップストリームパスが約 13,278 サンプル/秒(SPS)の性能を示し、カスタムオーバーレイをわずかに上回っています。インストールは、ダウンロード(〜2.66 GB の LibTorch を含む)、SHA-256 ハッシュによる前提条件の確認、環境設定を自動スクリプトが処理する簡素化された手順で行われます。ただし、TensorRT や NCCL、大規模分散トレーニングなどの高度な機能は、cuDNN などのライブラリへの完全なサポートの欠如により制限されており、 convolution が中心のタスクでは新しいかナイトリー版のスタックが必要になる場合があります。この解決策は AMD カード上でプライベート DLL の必要性を排除しますが、現在では完全なグラフィックスレンダリングの代替ではなく、compute 特化型の専用ツールに過ぎず、将来の安定性は RX 9060 XT 以外のデバイスへの検証済みサポート拡大およびナイトリーソフトウェア版のバージョンアップに依存します。
本文
WORKING REPRODUCIBLE STACK:AMD GPU での Windows CUDA 実行環境
ZLUDA と ROCm/HIP を組み合わせて、AMD GPU 上で Windows 向けの CUDA 固有アプリケーションを実行する環境が公開されました。LibTorch の CUDA エンベローディングを含む、計算系アプリケーションへの適用を意図しています。
⚠️ 重要:検証済みのハードウェア
現時点で動作を確認済みなのは以下のモデルのみです。他の GPU も対応する可能性がありますが、保証されません。
- 対象機器: AMD Radeon RX 9060 XT (gfx1200)
- 対応の要請: 異なる GPU をお使いの場合は、動作の有無にかかわらずGPU 互換性レポートをご公開ください。
📅 今日検証済み環境
公式の上流パスのみを使用し、プライベート DLL や独自修復版 DLL は一切使用していません。
- ZLUDA: v6-preview.69(公式リリース)
- AMD HIP SDK: 6.4
- LibTorch: 2.3.0 (cu118)
- ハードウェア: AMD Radeon RX 9060 XT / gfx1200
検証結果
すべての CUDA チェックに合格し、以下のタスクを完了しました。
- 基本機能:
、nvcuda
、cuBLAS
、cuBLASLt
、cuSPARSE
の動作確認cuFFT - 機械学習: パラメータ数 2,216,347 の PPO ネットワークにおける順伝播/推論、PPO ラーニング、最適化器の動作
- 安定性: シングルクリーンな検証ループで 65,536 ステップを実行することに成功
注: 本プロジェクトの発端となった CUDA 系 LibTorch トレーニングワークロード(詳細は
)での検証のみです。すべての CUDA プログラムや AI モデルが動作するとは限りません。対応範囲はワークロードに依存します。docs/VALIDATION.md
⚙️ 仕組み
CUDA 固有の Windows アプリケーション ↓ ZLUDA ↓ cuBLAS / cuSPARSE / cuFFT の互換性層 ↓ rocBLAS / hipBLASLt / rocSPARSE / HIP (AMD ライブラリ) ↓ AMD GPU
🛠 インストール手順
1. AMD 前提条件のインストール
最新の AMD GPU ドライバーと、HIP ライブラリを含む Windows 向けの AMD HIP SDKをインストールしてください。
- 推奨バージョン: HIP SDK 6.4(検証済み基準構成)
- より新しいバージョン: 動作する可能性はありますが、現状は非公式な扱いです。報告されるまで無断で利用しないでください。
参考リンク: AMD Windows HIP SDK ガイド
2. クローンおよびインストーラーの実行
git clone https://github.com/Speedstu/CUDA-for-AMD-Windows.git cd CUDA-for-AMD-Windows powershell -ExecutionPolicy Bypass -File .\scripts\install.ps1
install.ps1 スクリプトが自動で行う処理:
- AMD GPU とネイティブな
ターゲットの検出gfxXXXX - AMD ドライバー/HIP SDK および必要な数学ライブラリの確認
- 固定された公式 ZLUDA Windows ビルドのダウンロード
- LibTorch 2.3.0+cu118(約 2.66 GB)のダウンロード
- ダウンロードファイルの SHA-256 ハッシュ確認
および.runtime\runtime-config.json
の生成.runtime\gpu-report.json- ZLUDA の
を既存の AMD スタック上で実行cuda_check.exe
LibTorch を不要とする場合:
.\scripts\install.ps1 -SkipLibTorch
🚀 CUDA 固有アプリケーションの実行
対象アプリケーションに必要な ZLUDA 互換 DLL を展開し、HIP/ROCm ランタイムパスを設定します。
アプリケーション実行
.\scripts\run-zluda.ps1 -Program C:\path\to\app.exe
ランチャーを使わずにのみ展開する場合
.\scripts\stage-runtime.ps1 -TargetDir C:\path\to\your-app
🏥 マシンの診断
環境の状態を確認します。ユーザー名やトークン、個人ファイルの収集は行いません。
.\scripts\doctor.ps1 .\scripts\gpu-scan.ps1 .\scripts\test-runtime.ps1
検証済みの例:
AMD Radeon RX 9060 XT -> gfx1200 -> RDNA4 -> validated-reference
現在の GPU ステータス一覧
| GPU | ターゲット (gfx) | プロジェクトステータス |
|---|---|---|
| Radeon RX 9060 XT | gfx1200 | ✅ 検証済み基準構成 |
スキャナーは他の Windows HIP アーキテクチャファミリーも検出しますが、それは「未検証の候補」です。検出=動作保証ではありません。
AMD の現在の Windows ハードウェア一覧:システム要件
📊 検証済み構成におけるランタイムカバー範囲
公式ランタイムチェックの結果:
| CUDA 系コンポーネント | 結果 | 備考 |
|---|---|---|
| CUDA ドライバー / nvcuda | ✅ | |
| cuBLAS | ✅ | rocBLAS 経由 |
| cuBLASLt | ✅ | hipBLASLt 経由 |
| cuSPARSE | ✅ | rocSPARSE 経由 |
| cuFFT | ✅ | |
| cuDNN | ⚠️ 利用不可 | 検証済み安定版 HIP SDK には完全な ROCm AI ライブラリスタック(MIOpen など)が含まれていないため |
cuDNN について: 密度の高い GEMM 系処理を行う LibTorch トレーニングでは cuDNN が必須でないケースがあり、検証済みの PPO ワークロードもそれを無視して動作しています。cuDNN を必要とする場合、新しい HIP スタックの構築や追加の手間が必要です。
📈 パフォーマンス比較
2026-09-13 の A/B テスト結果 (RX 9060 XT PPO ワークロード):
- 試行: 各ランタイムで 10 ループ走行(最初のループをウォームアップ除外)
- 公式上流パス: 中央値全体 SPS 13,278
- カスタムオーバーレイ: 中央値全体 SPS 12,876
- 差: カスタムオーバーレイが約 3.03% 遅い
結論: 公式上流パスがデフォルトとして推奨されます。
過去の調整済み実行では異なるトレーニング構成で全体ステップ/秒(SPS)で約 70k〜109k を記録しています。詳細は
をご参照ください。docs/BENCHMARKS.md
歴史的なカスタムオーバーレイについて
当初の開発環境では、独自のカスタム cuBLAS/cuBLASLt/HIP オーバーレイ実験が行われましたが、検証済みの公式パスでは必須ではなく、現在の A/B テスト結果からパフォーマンス向上には寄与していません。
回復された DLL はマニフェストや
recovered-artifacts.sha256 にフィンガープリントを残していますが、ソースコード情報が不完全であり、サードパーティ製の AMD バイナリが含まれているため公開は行われていません(詳細:docs/CUSTOM_OVERLAY.md)。
🐛 バグ報告と GPU テスト
失敗したテストやバグ発見時は Issue をご公開ください。貴重な情報となります。
.\scripts\gpu-scan.ps1 -OutputPath .\gpu-report.json .\scripts\test-runtime.ps1
報告のお願い:
- GPU 互換性レポート (
) の開示gpu-report.json - アプリケーション名、結果、最初の有用なエラー/出力
📂 リポジトリの構造
: インストール、診断、スキャナー、ステージング、ランチャーscripts/
: 固定バージョン、ハッシュ、GPU アーキテクチャメタデータmanifests/
: 検証、アーキテクチャ、ベンチマーク、トラブルシューティングdocs/
: 統合/リファレンススニペットexamples/
: 生成された依存関係およびレポート (Git に無視).runtime/
: ローカルアーカイブファイル (Git に無視)local-artifacts/
⛔ 制限事項
- 検証範囲: 現在検証されているのは RX 9060 XT / gfx1200 のみです。
- ZLUDA の性質: 完全な CUDA インプリメンテーションではありません。
- Windows ROCm: Windows は ROCm エコシステムのサブセットのみを公開しています。
- 公式 HIP SDK の制限: 安定版パスには cuDNN や MIOpen が利用できません。
- 非対応機能: NCCL, TensorRT、サポートされていない PTX 動作、一部のカスタム CUDA 拡張は失敗する可能性があります。
- 環境変数:
は AMD GPU のアーキテクチャではなく、CUDA 互換値です。ZLUDA_CC=8.6
📜 ライセンスとサードパーティ製ソフトウェア
- プロジェクト固有: スクリプトとドキュメントは MIT ライセンス です。
- サードパーティ: ZLUDA, AMD ROCm/HIP, NVIDIA CUDA コンポーネント, PyTorch/LibTorch はそれぞれの元リポジトリのライセンスを維持しています。