
[2024年3月4日午前11時30分(太平洋時間)編集:この条項はNVIDIAのEULAのオンラインリストには記載されているものの、ダウンロードしたソフトウェアに含まれるEULAテキストファイルには記載されていないため、記事の内容を明確にしました。この警告文は、インストールされたCUDAドキュメントの11.6以降のバージョンに追加されました。]
NVIDIAは2021年以降、オンラインに掲載されているライセンス条項において、CUDAベースのソフトウェアを他のハードウェアプラットフォーム上で変換レイヤーを使用して実行することを禁止していますが、インストールプロセス中にホストシステムに配置されるドキュメントにはこの警告が含まれていませんでした。この文言は、CUDA 11.6以降のバージョンのインストール時に含まれるEULAに追加されています。
この制限は、IntelとAMDが最近参加したZLUDAのような取り組み、そしておそらくより深刻なのは、一部の中国GPUメーカーがトランスレーションレイヤー付きのCUDAコードを利用することを阻止するために設計されているようです。NVIDIAにコメントを求めており、回答が得られ次第、詳細や説明を改めてお知らせします。
ソフトウェアエンジニアのLonghorn氏は、この規約に気づきました。インストールされたEULAテキストファイルには、「SDK要素を使用して生成された出力のいかなる部分も、NVIDIA以外のプラットフォームをターゲットとするためにリバースエンジニアリング、逆コンパイル、または逆アセンブルすることはできません。」という条項がありました。
この条項は、CUDA 11.4および11.5リリース、そしておそらくそれ以前のすべてのバージョンにインストールされるEULAドキュメントには記載されていませんでした。しかし、バージョン11.6以降にインストールされるドキュメントには記載されています。
リーダーであることには良い面と悪い面があります。一方では、誰もがあなたに頼り、他方では、誰もがあなたの肩に乗ろうとします。CUDAでは後者が起こったようです。CUDAとNvidiaハードウェアの組み合わせは驚くほど効率的であることが証明されているため、多くのプログラムがこれに依存しています。しかし、より競争力のあるハードウェアが市場に参入するにつれて、より多くのユーザーがCUDAプログラムを競合プラットフォームで実行しようとしています。これを行うには、コードを再コンパイルする(それぞれのプログラムの開発者が利用可能)か、変換レイヤーを使用するかの2つの方法があります。
明らかな理由から、ZLUDAのような変換レイヤーを使うのが、Nvidia以外のハードウェアでCUDAプログラムを実行する最も簡単な方法です。コンパイル済みのバイナリをZLUDAや他の変換レイヤーを使って実行するだけです。ZLUDAは現在、AMDとIntelの両社が開発を断念したため、苦戦しているように見えますが、だからといって変換が不可能というわけではありません。
中国政府の資金援助を受けているメーカーを含む複数の中国GPUメーカーは、CUDAコードを実行できると主張しています。Denglin Technologyは、「CUDA/OpenCLなどのプログラミングモデルと互換性のあるコンピューティングアーキテクチャ」を備えたプロセッサを設計しています。Nvidia GPUのリバースエンジニアリングは困難であることを考えると(Nvidia GPUアーキテクチャの低レベルの詳細を何らかの方法で既に把握している場合を除きます)、ここでも何らかの変換レイヤーを扱っていると考えられます。
中国最大手のGPUメーカーの一つであるMoore Threadsも、CUDAコードを自社のGPUで動作させるために設計されたMUSIFY変換ツールを提供しています。しかし、MUSIFYが完全な変換レイヤーに分類されるかどうかは現時点では不明です(MUSIFYの一部にはコードの移植が含まれる可能性があります)。そのため、NVIDIAによる変換レイヤーの禁止が、これらの取り組みへの直接的な反応なのか、それとも将来の開発に対する先制攻撃なのかは、完全には明らかではありません。
明白な理由から、変換レイヤーの使用は、特にAIアプリケーションにおいて、アクセラレーテッドコンピューティング分野におけるNVIDIAの覇権を脅かす可能性があります。おそらくこれが、NVIDIAがCUDAアプリケーションを他のハードウェアプラットフォーム上で変換レイヤーを使用して実行することを禁止するという決定の動機でしょう。
既存のCUDAプログラムの再コンパイルは完全に合法です。これを簡素化するために、AMDとIntelはそれぞれROCm (1)とOpenAPIプラットフォームにCUDAプログラムを移植するためのツールを提供しています。
AMD、Intel、Tenstorrentなどの企業がより優れたハードウェアを開発するにつれて、より多くのソフトウェア開発者がこれらのプラットフォーム向けに設計するようになり、NvidiaのCUDAによる優位性は徐々に弱まる可能性があります。さらに、特定のプロセッサ向けに開発・コンパイルされたプログラムは、変換レイヤーを介して実行されるソフトウェアよりも必然的に優れたパフォーマンスを発揮します。これは、AMD、Intel、Tenstorrentなどの企業がNvidiaに対してより有利な競争上の立場を築くことを意味します。ただし、ソフトウェア開発者の協力を得ることができればの話です。GPGPUは依然として重要かつ競争の激しい分野であり、今後の状況の進展に注目していきます。
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
アントン・シロフはTom's Hardwareの寄稿ライターです。過去数十年にわたり、CPUやGPUからスーパーコンピュータ、最新のプロセス技術や最新の製造ツールからハイテク業界のトレンドまで、あらゆる分野をカバーしてきました。