生成AIやローカルLLMをPCで動かそうとすると、GPU選びではGeForceが勧められることが多いです。その大きな理由の一つが、NVIDIAの「CUDA」にあります。
CUDAとは、NVIDIAが開発したGPU向けの並列コンピューティングプラットフォームです。簡単に言えば、本来は映像処理を得意とするGPUの力を、AIや科学計算などにも使いやすくするための仕組みです。2006年の登場以降、多くのAIソフトやライブラリがCUDAに対応してきたため、現在では「AIを使うならGeForce」という流れにつながっています。
一方、AMDのRadeonではCUDAをそのまま使うことはできません。AMDにもROCmやHIPといった独自の環境がありますが、CUDA前提で作られたソフトが多いこともあり、RadeonはAI用途で候補から外されることが少なくありません。
そんな状況の中、RadeonでCUDA向けアプリを動かそうとする面白い動きが出てきました。
RX 9060 XTでCUDA向けアプリの動作に成功
PCハードウェアのニュースや検証記事を長く扱っている海外メディアのTom’s Hardwareが9月14日に紹介したのが、個人開発者のSpeedstu氏による「CUDA-for-AMD-Windows」です。
これはRadeonそのものをCUDA対応にするものではありません。
CUDA向けアプリをAMD GPUで動かすための互換レイヤー「ZLUDA」と、AMDが展開しているGPUコンピューティング環境のROCm/HIPを組み合わせ、Windows上のRadeonでCUDA向けの処理を実行できるようにするプロジェクトです。
Speedstu氏が現在動作確認に使用しているのは、Radeon RX 9060 XTです。
公開されている検証では、CUDAで使われるcuBLAS、cuBLASLt、cuSPARSE、cuFFTなどが動作し、約221万パラメータの強化学習モデルについても学習処理を最後まで実行できています。
ただし、現時点でこのプロジェクトが正式に検証しているGPUはRX 9060 XTだけです。ほかのRadeonでも動く可能性はありますが、まだ動作を保証できる段階ではありません。
また、AIで広く使われるcuDNNについては、現在の安定版Windows HIP SDKを利用した構成では使えないとされています。つまり、「RadeonでCUDAアプリが何でも動くようになった」と考えるのはまだ早いです。
それでもRadeonにとっては面白い一歩
今回の話で自分が期待したいのは、RX 9060 XTで一つのAI処理が動いたことだけではありません。RadeonがAI用途で選ばれにくい理由として、GPU性能とは別に「CUDAが使えない」という壁が長く存在してきました。
ゲーム用途ならRadeonを選びたい。16GBのVRAMにも魅力を感じる。でもローカル生成AIまで考えると、対応ソフトの多さから結局GeForceを選ぶ。そうした判断をした人はかなりいると思います。
ZLUDAのような互換技術が発展し、CUDA前提のアプリにもRadeonからアクセスできるようになれば、この状況は少しずつ変わるかもしれません。もちろん、これはAMD公式によるCUDA対応ではありません。現状では実験的なプロジェクトとして見るべきです。
それでも「CUDA専用だからRadeonでは絶対に無理」というところから、実際に動かす方法が出てきた意味は小さくないと思っています。
AMD自身もRadeonのAI環境を広げている
もう一つ注目したいのが、AMD自身の動きです。
AMDはGPU向けのコンピューティング環境としてROCmを展開しており、最近ではWindowsでのRadeon対応もかなり進めています。現在AMDが公開しているROCmの資料では、Windows向けPyTorch環境も案内されており、Radeonを使ったAI開発環境は以前より整ってきています。
ここで大事なのは、RadeonがCUDAを追いかけるだけではないということです。
AMDとしてはROCmやHIPを使った独自のAI環境を育て、そのうえでZLUDAのような技術がCUDA専用アプリとの隙間を埋めていく。その形の方が現実的でしょう。
Radeon独自のAI環境が十分に使いやすくなり、どうしてもCUDAが必要なアプリについては互換レイヤーで対応できるようになれば、GPU選びの幅はかなり広がります。
「CUDAが使えないからRadeonはなし」を変えてほしい
自分がRadeonのAI対応に期待しているのは、まさにここです。
Radeonにはゲーム性能やVRAM容量を考えると魅力的なGPUがあります。それでもAI用途になると、「CUDAが使えないから」という理由だけで最初から候補外になることがある。
これは少しもったいない。
今回のCUDA-for-AMD-Windowsはまだ始まったばかりで、今すぐGeForceと同じようにCUDA向けアプリを使えるわけではありません。ただ、AMD自身のROCm対応が進み、その外側ではCUDAとの互換を目指す開発も続いている。
この二つが伸びていけば、「AIをやるならGeForce一択」という今の状況も少しずつ変わっていくかもしれません。
RadeonがCUDAの代用品になるのではなく、Radeon自身のAI環境を持ちながら、これまで壁になっていたCUDA専用ソフトにも手を伸ばせるようになる。個人的には、そんな方向に進んでくれることを期待したいです。
この記事で参考にした情報
- NVIDIA「CUDA FAQ」
CUDAの基本的な位置付けと用途を確認するために参照。
https://developer.nvidia.com/cuda/faq - Tom’s Hardware「Solo dev enables running CUDA on AMD hardware in Windows, getting multiple CUDA libraries running on a gaming Radeon RX 9060 XT GPU in Windows」
RX 9060 XTでの動作内容とCUDA-for-AMD-Windowsの概要を確認するために参照。
https://www.tomshardware.com/pc-components/gpu-drivers/solo-developer-wires-zluda-to-amds-hip-getting-multiple-cuda-libraries-running-on-a-radeon-rx-9060-xt-in-windows-cuda-exclusive-workloads-on-amd-hardware-in-windows-is-possible-without-virtualization-or-dual-booting


コメント