建物のNVIDIAロゴ
Michael Vi / Shutterstock.com

Linuxでのゲームは、常にWindows(またはゲームコンソール)よりも少し複雑でした。その理由の1つは、LinuxでのNvidiaの不十分なドライバーサポートです。状況がどれだけ改善されるかは不明ですが、現在は変化しています。

Nvidiaは水曜日に、Linuxグラフィックカーネルモジュールをオープンソースソフトウェアとして、デュアルGPL/MITライセンスの下で公開したと発表しました。言い換えれば、誰でもNvidiaのコードを調べることができ、開発者はドライバーを改善するための修正や新機能を提出できます。Canonical(Ubuntu Linuxの開発者)、SUSE、およびRed Hat(Fedora Linuxの開発者)は、Linuxグラフィックスドライバーを最終的にオープンソース化するというNvidiaの決定を称賛しました。

Nvidiaはブログ投稿で次のように述べています。「このオープンソースリリースでは、GeForceおよびWorkstationGPUのサポートはアルファ品質です。GeForceおよびWorkstationユーザーは、NVIDIATuringおよびNVIDIAAmpere Architecture GPUでこのドライバーを使用してLinuxデスクトップを実行し、VulkanおよびNVIDIA OptiXで複数のディスプレイ、G-SYNC、NVIDIARTXレイトレーシングなどの機能を使用できます。」

オープンソースが重要な理由

それで、なぜこれが大したことなのですか?ええと、NvidiaグラフィックカードはLinuxPCでうまく機能したことはありません。IntelとAMDはどちらも、自社製品のオープンソースグラフィックスドライバーを維持しており、標準のLinuxカーネルに含めることができます。その結果、Radeon GPUを搭載したゲーミングPC、またはIntel Xeグラフィックスを搭載したラップトップを使用している場合、すべてがLinuxで動作します。コードは誰でも閲覧および変更できるため、IntelおよびAMDグラフィックスは、新しいWaylandディスプレイサーバーなどのLinuxエコシステムの新しい変更でより適切に機能します

AMDやIntelとは異なり、Nvidiaは (今まで)そのドライバーをオープンソース化しませんでした。独自のドライバーパッケージを個別にインストールする必要がある場合があります。コードにアクセスできるのはNvidiaだけであるため、ドライバーはWaylandやその他の新しいLinux機能をサポートしていません。Linux開発者は、代替としてオープンソースのNouveauドライバーを作成しましたが、これは本質的にリバースエンジニアリングプロジェクトであるため、通常はNvidiaのソフトウェアよりもパフォーマンスが低下します。

簡単に言えば、Nvidiaグラフィックカードを搭載したLinux PCは、バグや機能が不足しているクローズドソースドライバーとパフォーマンスの悪いオープンソースドライバーの2つの悪いオプションから選択する必要がありました。理論的には、Nvidiaのオープンソースドライバーは両方の長所を備えているはずです。

キャッチ

それはすべて素晴らしいニュースですが、興奮を和らげる理由はいくつかあります。AsahiLinuxのメイン開発者であるHectorMartinは、一連のツイートで、重要なグラフィックコードの多くは実際にはオープンソースではないことを共有しました。Nvidiaは、独自のコードの多くをグラフィックカードのファームウェアに移動したようです。これは、オープンソースコードが相互作用します。IntelCPUのIntelManagementEngineに少し似て ます。

Martinは、特許とライセンス契約のためにNvidiaのコードの一部をオープンソースにできないと理論付けました。そのため、この半分の対策がオープンソースドライバーを実現する唯一の方法でした。AMDのグラフィックスドライバーもいくつかの独自のファームウェアコンポーネントを使用していますが、Nvidiaほどではありません。

他にも問題があります。オープンソースドライバーは、GeForce 16シリーズ、RTX 20シリーズ、および新しいGPUを含むNvidiaのAmpereおよびTuringアーキテクチャを使用するグラフィックカードのみをサポートします。GTX 10シリーズカードまたはその他の古いハードウェアを持っている人は、新しいドライバーにまったくアクセスできません。

最後に、Nvidiaは、ほとんどのオープンソースプロジェクトのように実際にはコードの更新を処理していません。発表のFAQセクションには、各コードリリースは「共有コードベースから生成されたスナップショットであるため、貢献はGitHubリポジトリに個別のGitコミットとして反映されない場合があります」と記載されています。言い換えれば、Nvidia以外の開発者が変更を追跡して問題を診断することは困難です。

長い道のり

オープンソースドライバのリリースは、一部の人、特にサポートされていない古いNvidiaグラフィックカードをまだ使用している人にとってはがっかりするかもしれません(最近、新しいグラフィックカードを購入するのは少し難しいです)。ただし、CanonicalやRed Hatなどの企業が初めてNvidiaのコードの改善を支援する機会があるという理由だけで、これは正しい方向への重要なステップです

Nvidiaは、オープンソースドライバーが最終的にLinuxカーネルにアップストリームされることを望んでいます。これにより、GeForceハードウェアを搭載したPCに、AMDおよびIntelベースのPCがLinuxで長年享受してきたのと同じプラグアンドプレイエクスペリエンスが最終的に提供される可能性があります。

出典:NvidiaGitHub