パスワードを忘れた? アカウント作成
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のサポート対象から外れ、オープンソースカーネルドライバでの周波数変更もできないまま、死んだハードウェアになっていくのだろうか?

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • Maxwellが2014年ごろ,Pascalは2016年ごろの製品だと思う.
    2022年の今ならもっと性能の良いやつが 5000円ぐらいで買える.その製品はLinuxで普通に動作するし消費電力も少ない.
    (5000円は盛り過ぎかも.8000円ぐらいかな?)

    そして別コメにもあるけどNvidiaはもっと古いGPUも含めて,実用上問題ないレベルでサポートを継続している.むしろ称賛されるべきレベル.

    つまりこの話は8年とか6年前の製品を持ち出してNvidiaを批判してるということになる.
    大半の消費者からみれば,GPU買い直せば良くね?とか,なんか困るっけ?って話にしかならない.

    以上を踏まえた上であえて話を膨らますなら,この問題LinuxがGPLやめればかなり改善する.
    でもLinuxはGPLで汚染されてるからGPLをやめることは出来ない.つまりGPLがPascalとMaxwell-v2を殺したって話ぐらいはできそう.

    • by Anonymous Coward on 2022年12月02日 22時07分 (#4374297)

      どこが障害になってたのか知らないが、dma-bufのAPIをプロプラのkoから使えないってんなら
      それはLinuxがGPLなことが原因ではなく、使いたいシンボルがEXPORT_SYMBOLじゃなくてEXPORT_SYMBOL_GPLになっていること。

      GPLが殺したって結論に変わりはないが、Linux全体ではなくシンボルをGPLでエクスポートしているdma-bufが殺した。

      親コメント
    • by Anonymous Coward

      Linuxは最初に世に出た時からGPLだよなに言ってんだ

    • by Anonymous Coward

      えー今使ってるGTX 1050 Ti (Pascal)よりも新しくて性能がよい8000円で買えるGPUがあるんですか?
      買い替えたいので教えてください。

    • by Anonymous Coward

      か、改善する?どうやって?

    • by Anonymous Coward

      GPL のせいだったら GPL 関係ないユーザースペースはオープンソースになってるはずじゃん?でも現実は違うよね。

  • by Anonymous Coward on 2022年12月02日 20時38分 (#4374242)

    > カーネルドライバをオープン(GPL)にしているため

    この記述は正しくないですね。

    Linux kernel 全体は GPLv2 ですが、
    Intel や AMD のカーネルドライバは主に MIT ライセンスを使っています。
    Intel: https://github.com/torvalds/linux/blob/a4412fdd49dc011bcc2c0d81ac4cab7... [github.com]
    AMD: https://github.com/torvalds/linux/blob/a4412fdd49dc011bcc2c0d81ac4cab7... [github.com]

    おかげで、*BSD系もこのカーネルドライバを利用することができています。

  • by Anonymous Coward on 2022年12月02日 19時24分 (#4374193)

    国家やNPOが出した製品なら分かりますが営利企業が出した製品に対しては正当な主張とはいえんかと
    /*
    個人的にはNvidia使ってるし
    WindowsだけじゃなくLinuxもAndroidもiPhoneもガラケーも使っているが
    どれかで使えないからといって不当だと文句つける気にはならないな
    嫌なら好きにできる製品使えばいいんだし
    */

    • by Anonymous Coward

      嫌なら他の製品をというのは個人の好みで好きにすればいい話ですだが、それは論点の違う話だ。
      これはNvidiaが反オープンソースである点についてのストーリーだからだ。

      • Re: (スコア:0, すばらしい洞察)

        by Anonymous Coward

        これはNvidiaが反オープンソースである点についてのストーリーだからだ。

        それが図々しいってはなしかと
        オープンソースにしてくれるとこには感謝を
        してくれないとこにはメリットを粘り強く解く
        なんでそうせずに不当だと叫ぶのを擁護するのか甚だ疑問

      • by Anonymous Coward

        ま〜たお前か。
        ゲームやCUDAのためにNvidia使うのよ。オプソとかどうでもいいのよ。

        • by Anonymous Coward

          Nvidiaのゲーム技術やCUDAがオプソだったら
          ソフト面でもハード面でも、より良い環境が産まれてたかもしれないのにどうでもいいの?

          • by Anonymous Coward on 2022年12月03日 6時55分 (#4374397)

            GPLの理念ではソースをオープンにしてサポートサービスとかで儲ければいいって言うことあると思うけど、
            一方GPUベンダーでサポートサービス一番厚い(開発現場に人を出してくれたり)のはNVIDIAのように聞く

            親コメント
          • by Anonymous Coward

            この話はGPL 対 反GPLというより、ドライバ 対 ファームウェアだよ。
            AMD GPUだってプロプラFWを入れないと性能が落ちると言われている。

            nVidiaのゲーム技術やCUDAのコア部分がもとからFWだったら、今となんか変わるの?

          • by Anonymous Coward

            バイナリブロブでも何でもガンガンに受け入れていれたら、ソフト面でもハード面でも、より良い環境が産まれてたかもしれないのにどうでもいいの?
            で、バンバン受け入れた所と Desktop Linux (笑) を比べて現実見てくれ

          • by Anonymous Coward

            Nvdia以外のオプソの環境(笑)でまともなの作ってから寝言を言おう。

        • by Anonymous Coward

          実際、LinuxでCUDA使わないならNvidia買わんよな

      • by Anonymous Coward

        その「オープンソースに迎合しないと悪」っていう前提がおかしいんじゃね?

    • by Anonymous Coward

      PascalやMaxwell-v2固有の事情は知らないが、一般論としては買ってきた他社の知財を保護するためのプロテクトが必要になることがある。

      • by Anonymous Coward

        それは使用権のみを買った場合で、所有権を取得してオープンソース化した例もあったと思う

  • by Anonymous Coward on 2022年12月02日 19時28分 (#4374195)

    だけじゃね?
    PascalもMaxwellも使わなければいいだけ。

    • by Anonymous Coward

      それがいやだから、死んだとか殺したとか言ってるんだろ。因縁か子供の駄々に近い。

    • by Anonymous Coward

      それどころか周波数変更やDmabufが必要ないならPascalやMaxwellを使い続けて問題なさそうなのに「殺した」は大げさすぎる

      • by Anonymous Coward

        低クロックに固定されるのは問題ないとは言えないだろ。

        • by Anonymous Coward

          オーバークロックの話じゃないの?
          (少なくとも、GitHubに書かれているのはオーバークロックのことだよね)
          普通のユーザーはオーバークロックが使えなくて困ることはないと思うんだけど。

          • by Anonymous Coward

            省エネのために通常時はクロックを落としていて、3Dゲーム時など高負荷時のみクロックを引き上げるのが普通。
            で、そのクロックが上がらなくて低性能なままって話なんでしょうね。

        • by Anonymous Coward

          より正確に言えば、最大パフォーマンスのP0ステートに入らないのと、任意のクロックに固定できないっていう2つの問題がある
          高パフォーマンスのP2ステートには入るから「殺した」はやはり大袈裟

  • by Anonymous Coward on 2022年12月02日 19時43分 (#4374203)

    日本語がしっちゃかめっちゃかの翻訳文体で最初の文から読む気を無くします。
    せめて機械翻訳を使ってください。推敲までは期待していませんので。

    • by Anonymous Coward

      前スレが気に食わない高尚な議論で伸び始めたから慌てて入れたんじゃないのと思っちゃう

  • 最近はどうなん?

  • by Anonymous Coward on 2022年12月02日 20時01分 (#4374219)

    > いかにしてPascalを殺したか

    Pascalという単語を別の意味の言葉で上書きすることでPascal(プログラミング言語)を殺した

    • by Anonymous Coward

      パスカル「ぼくはもっと前から死んでたけどね」

  • by Anonymous Coward on 2022年12月02日 20時20分 (#4374232)

    助からないよってことだよね

  • by Anonymous Coward on 2022年12月02日 20時37分 (#4374240)

    11月22日の時点できちんと更新されてるLinux用のNvidiaドライバは300系 400系 500系があって。
    最も古いハード担当の300系の最新版である390.157ってのは、GeForce 400シリーズからサポートしてるわけよ。
    つまり販売開始が2010年のシロモノを12年経った今でもLinuxで使えるようにサポートしてるわけ。

    AppleやGoogle、Microsoftなんかには真似できないレベルの息の長さ。
    Microsoftで例えれば、2013年10月18日に販売開始したWindows 8.1のメインストリームサポートが2018年1月9日で切れ、延長サポートすら2023年の1月10日で切れるからな。
    MS信者がどんだけもてはやしたところでその程度。
    SpectreとMeltdown祭りの時、Intelが古いCPUへの対策切った話も記憶に新しい。

    これだけ言えばわかるだろ?
    Nvidiaは十分よくやってるよ。
    むしろNvidiaの爪の垢でも煎じて飲ませたい企業の方が巷には溢れてる。
    そいつらを先に叩け。

    • by Anonymous Coward

      MSを例に出すならハードの例を出せよ

      • by Anonymous Coward

        OS本体の更新の話と、ドライバでのサポートは別だしねえ。

        息のあるデバイスのドライバなら、Win11でも12年よりさらに前のやつでも動作するやつあるんじゃないかな?

        自社ハード以外をまあまあフォローしてるMSを土俵にあげるのは、ちょっと筋が違う気がする。

        ここで比較するなら自社ハードなmacくらいじゃないかと思うんだが。

      • by Anonymous Coward

        Matrox G200 は、今だ PowerEdgeの一部製品に搭載されているな。
        1998年だったっけ?
        https://i.dell.com/sites/csdocuments/Product_Docs/en/dell-emc-poweredg... [dell.com]

    • by Anonymous Coward

      Nvidiaはプロプラだから不買(キリッ)って言っても誰も取り合ってくれなくて、オプソ厨ムキになっちゃってるんだよね。

    • by Anonymous Coward

      オープンにしとけばいいんだよ。

  • by Anonymous Coward on 2022年12月02日 23時21分 (#4374328)

    グラボに焼いてある(不揮発)Firmwareの話じゃないよね。
    グラボのドライバは電源投入時にグラボ上で走らせるための(揮発)Firmwareをグラボに送信してて、そのFirmwareは署名されてないといけないってことなのかな。
    前提知識持ってないからいまいち理解できなかった。

  • by Anonymous Coward on 2022年12月02日 23時42分 (#4374338)

    https://gigazine.net/news/20220513-nvidia-open-source-gpu-kernel-modules/ [gigazine.net]

    オープンなドライバはあることはある。一般ユーザー向けではないけど。
    nvidiaは政府調達から外され気味になっているという話がある。(カナダだか外国政府のどこかで)
    政府調達で謎な動きをしているドライバを買うのか?税金で?国民納得しないでしょ?という理由ね。
    だから、今更になってこういう動きをしている訳だ。

    まぁ、気に入らないなら買わない、買わせないことが重要かと

  • by Anonymous Coward on 2022年12月03日 0時07分 (#4374346)

    CUDAにチンコ握られてんだ
    DAZ StudioでドスケベなグラビアをIrayレンダしなきゃならないんだ
    あとStable Diffusionな
    あとついでに3DエロゲにエロVRChatな、MMDな(iwaraも軽くなったなあ)
    代わりがねンだわ・・

    nvidiaのCUDAに対抗するAMDのROCmって、Windowsじゃ動かんらしいべ?
    あれがどういう仕組みの何なのか、さっぱり知らんけど
    あれって事実上Linux専用らしいべ?カーネルと密接に絡み合ってんのかね?
    使えないんじゃあなあ

    • by Anonymous Coward

      nvidiaのCUDAに対抗するAMDのROCmって、Windowsじゃ動かんらしいべ?

      てことはWSLgでなら動くってことかね
      Radeon持ってないから検証できんけど

typodupeerror

開いた括弧は必ず閉じる -- あるプログラマー

読み込み中...