ハイブリッドノートブックで個々のグラフィックカードを有効にする

ハイブリッドノートブックで個々のグラフィックカードを有効にする

ノートパソコンでSteam Linuxゲームをプレイしたいです。これらのゲームはWindowsパーティションではうまく動作しますが、Debianパーティションでは非常に遅く実行されます。 Linuxでなぜそんなに遅く実行されているのかを調べたところ、2番目のグラフィックカードが使用されていないことがわかりました。この記事を書く理由は、これを行うには多くの努力が必要だったからです。私が試したことは次のとおりです。

  • 「lspci | grep VGA」は、2枚目のカードがここにあることを伝えます。

    00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev Ob)
    
    03:00.0 VGA compatible controller: Advanced Micro Devices, Inc [AMD/ATI] Mars [Radeon HD 8730M]
    
  • 「xrandr --listproviders」はその逆です。

    Providers number : 1
    
    Provider 0: id: 0x47 cap: 0xb, Source Output, Sink Offload crtcs, 3 outputs: 5 associated providers: 0 name:Intel
    
  • "glxinfo | grep "OpenGL renderer string"" は xrandr が言った内容を確認します。

    OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile
    
  • しかし、 "cat /sys/kernel/debug/vgaswitcheroo/switch"は次のように言います。

    0:IGD:+:Pwr:0000:00:02.0  
    1:DIS: :DynOff:000:03:00.0  
    2:DIS-Audio: :Off:000:03:00.1  
    

これは、私の個々のグラフィックカードがオフになっているが動作していることを意味します。だから私はswitcherooを使ってアクティブにしようとしています。

  • "エコオン> /sys/kernel/debug/vgaswitcheroo/switch"

何もしない

  • 「エコ DIS > /sys/kernel/debug/vgaswitcheroo/switch」

何もしない

  • ...それから? 「エコDDIS > /sys/kernel/debug/vgaswitcheroo/スイッチ」

何もしない

スイッチファイルを確認するたびに、内容は常に同じで、再起動後もIGDがオンになり、DIS DynOffは同じです。ああ、時にはsuモードでこれらのコマンドを直接実行すると、switcherooが「vga_switcherooクライアント0の切り替えを拒否しました」と言うこともあります。それが何を意味するのかはよくわかりません...

  • xorg.confファイルがないので、回復モードでcmd "X -configure"を使用して1つを作成することにしました。その後、「cp /root/xorg.conf.new /etc/X11/xorg.conf」ファイルを移動しました。しかし、このconfファイルで再起動すると、私のコンピュータがプリマスブート画面に停止し、私がアクセスできる唯一のものはttyだけです。

  • ここではフォルダをバックアップ/usr/share/X11/xorg.conf.d/し、元の場所から削除して再起動しようとしました。これで、Plymouthブート画面で停止せず、ブート後にttyにリダイレクトされます。

その時点で、xorg confが私の元の問題にどのように使用されているのかはわかりませんでしたが、新しく作成されたxorg.confファイルが私のコンピュータがスタート画面で停止したため、私にも問題があることに気づきました。

  • 結果lsb_release -a:

    LSB バージョン: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-

    noarch:core-4.0-amd64:core-4.0-noarch:core-4.1-amd64:core-4.1-noarch:security-4.0-amd64:security-4.0-noarch:security-4.1-amd64:security-4.1-noarch デプロイベンダーID:Debian説明:Debian GNU / Linux 8.10(jessie)リリース:8.10コード名:jessie

  • 結果sudo lshw -C display

    *-ディスプレイの説明:VGA互換コントローラ製品:Haswell-ULT統合グラフィックコントローラベンダー:Intel CorporationハードウェアID:2バス情報:pci@0000:00:02.0バージョン:0bビット:64ビットクロック:33MHz機能:msi pm vga_controller Bus_master cap_list ROM構成:ドライバ=i915遅延=0リソース:irq:70メモリ:d0000000-d03fffffメモリ:c0000000-cffffffポート:4000(サイズ=64)

私は私のAMDグラフィックスカードをDebian 8 "Jessie"OSで動作させる方法を知らず、私のxorgに問題があるかもしれないので、この記事は私の最後の希望です。

修正する

今この投稿に従った後: https://askubuntu.com/questions/648426/discrete-graphics-always-dynoff

起動時にPlymouth起動画面で停止し、2分ごとにtty1およびPlymout画面(tty7)に次のメッセージが表示されます。

INFO: task kworker/u16:0:6 blocked for more than 120 seconds.
Tainted: G C 3.16.0-4-amd64 #1
echo 0 > /proc/sys/kernel/hung_task_timeout_secs disables this message.

しかも再起動もできませんね。追加した行をコメントアウトすると正しく起動されるため、/etc/rc.localファイルのバージョンが原因のようです。

肯定的な点は、私の個々のGCがvga_switcherooのPwr状態にあるということです。ただし、まだリストに表示されず、アクティブにしようとすると、xrandr --listprovidersメッセージ()が表示されます。vga_switcheroo: client 0 refused switchecho DIS > /sys/kernel/debug/vgaswitcheroo/switch

それ以外の場合、fglrxの代わりにradeonを使用する方が複雑な場合は、Gnome(Cinnamonなど)の代わりに別のデスクトップ環境をインストールすると、生活が楽になりますか? (fglrxがGnomeと互換性がないことを知っています)

修正する

私は以前の質問に答えるために多くの実験をしました。 fglrx-driverをインストールし、ディスプレイ管理のためにLightDM(KDMでも動作)を試してみましたが、正しく動作しました。私はCinnamonを使ってみましたが、Gnomeのようにドライバをサポートしていないようです。だから私はxfce4をインストールしましたが、ドライバではうまくいくようです。

これで、ログイン用のKDMとデスクトップ環境用のxfceがあります。ターミナルを開いて入力しましたが、xrandr --listprovidersまだIntelデバイスのみが表示されます...を使用してxorg.confファイルを作成し、再起動したときに生成されたaticonfig --initial.confを意味する黒い画面(LightDMの場合は黒い画面、KDMの場合はtty1リダイレクト)が表示されます。ファイルが機能しません...

どう思うか分からない。結局のところ、私のxorg設定はそれに関連しているかもしれません!

その他の問題の報告: fglrxを使用してデスクトップ環境でコンピュータを動作させましたが、fglrxinfo、glxinfo、glxgearsなどのコマンドは同じエラーを返します。

Xlib: extension "GLX" missing on display ":0.0".

修正する

私はRedditの人々に私の問題について尋ねました、そして私のシステムとグラフィックスタックが古すぎると思います。

答え1

解決策は最終的に最新のオペレーティングシステムをインストールすることで、Debian 9で十分でした。その後、無料でないソースからファームウェアAMDグラフィックスをインストールしました。 xrandr --listproviders

Providers: number : 2

Provider 0: id: 0x7b cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 5 associated providers: 0 name:modesetting

Provider 1: id: 0x53 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 2 associated providers: 0 name:OLAND @ pci:0000:03:00.0

ただし、名前が奇妙なだけで、構成が完了した後はもはや大きな問題になりません。

明けましておめでとうございます!

関連情報