パスワードを忘れた? アカウント作成
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
2022年12月2日のLinux記事一覧(全1件)
16314980 story
グラフィック

いかにしてNvidiaはPascalとMaxwell-v2を殺したか 77

ストーリー by nagazou
いろいろ厳しい 部門より
あるAnonymous Coward 曰く、

2014年のMaxwell-v2(第2世代Maxwell)以降、NvidiaはGPUの周波数変更などの電源管理機能にアクセスするため署名付きのFirmwareを必要とするようになった。しかし、Nvidiaのクローズドなドライバから暗号化鍵やFirmwareを抽出することは、技術的にも、それを配布することはライセンス的にも困難となり、オープンソースカーネルドライバでの周波数変更ができなくなり、起動時の低い周波数に固定されることで、性能を出すことが不可能になった(PhoronixPhoronixその2True DMABUF supportClarification on GPU support for Maxwell/Pascal archs and binary/OS relationship)。

その他のAMD製GPUやIntelのGPUは、Firmwareを再配布可能なライセンスにし、また両者とも(AMDは2015年以降、Intelはもっと前から)カーネルドライバをオープン(GPL)にしているため、そのような問題はない。カーネルドライバがクローズドなことの問題点はセキュリティや、バグを直すことができないことの他にも、DmabufなどのカーネルのAPIはGPLでライセンスされているため、クローズドなカーネルドライバでは提供することができないという点もある。

Nvidiaは2022年、カーネルドライバのオープンソースバージョンを並行して提供するようになった。それは、GPUのメモリや電源管理機能の多くを、カーネルドライバから、GPUの内部Firmware(NvidiaはGSP(GPU System Processor)と呼ぶ内部CPU)に移したことで、可能になった(秘密にしておきたい内部を切り離した)。これにより、オープンソースカーネルドライバで周波数変更ができるようになり、また、DmabufなどのGPLライセンスされたAPIを実装しサポートすることを妨げるライセンス上の問題はなくなった。

しかし、GSPはTuring-architecture以降に導入されたものであり、NvidiaのオープンカーネルドライバではPascal以前はサポートできない。したがって、PascalとMaxwell-v2はオープンソースドライバでは周波数変更できず、クローズドソースドライバでは、Dmabufなどがサポートされていないという現状にある。さらに、それらの制約は技術的なハードの問題ではなく、ライセンスとNvidiaの反オープンソース的経営方針によるものだ。

この間、Intelはオープンソースカーネルドライバを提供し続け、またユーザースペースでも(Mesaでのi965, Iris, ANV)などオープンソースに貢献し続けた。また、AMDも2015年からカーネルドライバをオープンにし、ユーザースペースドライバを作るための情報を提供し、コミュニティベースのMesaでのRADVなどが販売中 - Steam Deなどにも使われている。このまま、PascalやMaxwell-v2は数年後Nvidiaのサポート対象から外れ、オープンソースカーネルドライバでの周波数変更もできないまま、死んだハードウェアになっていくのだろうか?

typodupeerror

Stableって古いって意味だっけ? -- Debian初級

読み込み中...