Linux カーネル用の NVIDIA オープンソース ビデオ ドライバー

NVIDIA は、独自のビデオ ドライバー セットに含まれるすべてのカーネル モジュールがオープン ソースであることを発表しました。 コードは MIT および GPLv2 ライセンスの下で公開されています。 モジュールを構築する機能は、Linux カーネル 86 以降のリリースを搭載したシステム上の x64_64 および aarch3.10 アーキテクチャに提供されます。 CUDA、OpenGL、Vulkan スタックなど、ユーザー空間で使用されるファームウェアとライブラリは独自仕様のままです。

コードの公開により、Linux システム上で NVIDIA GPU を操作する際の使いやすさが大幅に向上し、オペレーティング システムとの統合が強化され、ドライバーの配信と問題のデバッグが簡素化されることが期待されます。 Ubuntu と SUSE の開発者は、オープン モジュールに基づいたパッケージの形成をすでに発表しています。 オープン モジュールの存在により、Linux カーネルの非標準カスタム ビルドに基づくシステムと NVIDIA ドライバーの統合も簡素化されます。 NVIDIA にとって、オープンソースは、コミュニティとの緊密な連携や、サードパーティによる変更レビューや独立した監査の可能性を通じて、Linux ドライバーの品質とセキュリティの向上に役立ちます。

提示されたオープン コード ベースは、独自のドライバーの形成にも同時に使用され、特に、今日公開されたベータ ブランチ 515.43.04 で使用されることに注意してください。 この場合、プライマリ リポジトリはクローズド リポジトリであり、提案されたオープン コード ベースは、特定の処理とクリーニングの後に、独自のドライバーのリリースごとにキャストの形式で更新されます。 個々の変更履歴は提供されず、ドライバーの各バージョンの一般的なコミットのみが提供されます (現在、ドライバー 515.43.04 のモジュールのコードが公開されています)。

ただし、コミュニティのメンバーには、修正や変更をモジュール コードにプッシュするためのプル リクエストを送信する機会が与えられますが、これらの変更はパブリック リポジトリ内の個別の変更として反映されず、最初にメインのプライベート リポジトリに統合されます。その後、残りの変更を含めて転送してオープンします。 開発に参加するには、譲渡されたコードの所有権を NVIDIA に譲渡するための契約 (コントリビューター ライセンス契約) に署名する必要があります。

カーネル モジュールのコードは、オペレーティング システムに関連付けられていない一般的なコンポーネントと、Linux カーネルと対話するための層の XNUMX つの部分に分かれています。 インストール時間を短縮するために、共通コンポーネントは、既に組み立てられたバイナリ ファイルの形式で独自の NVIDIA ドライバーで提供され、現在のカーネル バージョンと既存の設定を考慮して、各システムでレイヤーが組み立てられます。 次のカーネル モジュールが提供されています: nvidia.ko、nvidia-drm.ko (ダイレクト レンダリング マネージャー)、nvidia-modeset.ko、および nvidia-uvm.ko (ユニファイド ビデオ メモリ)。

GeForce シリーズおよびワークステーション GPU のサポートはアルファ品質としてリストされていますが、データ センター コンピューティング アクセラレーションおよび並列コンピューティング (CUDA) アーキテクチャで使用される NVIDIA Turing および NVIDIA Ampere アーキテクチャに基づく専用 GPU は完全にサポートされ、完全にテストされており、実稼働環境での使用に適しています。プロジェクト(オープンソースはすでに独自のドライバーを置き換える準備ができています)。 将来のリリースでは、GeForce とワークステーションの GPU サポートの安定化が計画されています。 最終的には、オープンソース コード ベースの安定性のレベルは、独自のドライバーのレベルにまで引き上げられるでしょう。

現在の形式では、公開されたモジュールをメイン カーネルに組み込むことは、カーネルのコーディング スタイル要件とアーキテクチャ規約に準拠していないため不可能ですが、NVIDIA は、Canonical、Red Hat、SUSE と協力してこの問題を解決する予定です。ドライバー ソフトウェア インターフェイスを安定させます。 さらに、公開されたコードは、カーネルに含まれるオープンソースの Nouveau ドライバーを改善するために使用できます。このドライバーは、独自のドライバーと同じ GPU ファームウェアを使用します。

出所: オープンネット.ru

コメントを追加します