OS: GNOME 3.30.2 on Debian GNU/Linux 10 (64-bit)
私のラップトップはHDMIポートからの出力がありません。モニターに「入力が検出されませんでした」と表示されます。以前はKubuntuをインストールし、その前にWindows 10を使用していましたが、どちらも問題なく動作しました。つまり、これはハードウェアの問題ではありません。
私が試してみました:
パッケージ「ARandR」を使用して新しいディスプレイをスキャンします。
さまざまなモニターとHDMIコードを接続する。
ディスプレイを接続した状態でマシンを起動します。
スペック:
LAPTOP: Acer Nitro 7 (AN715-51)
GPU: GeForce GTX 1650
CPU: Intel Core i7-9750H
xrandr
の出力:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
1920x1080 60.01*+ 60.01 59.97 59.96 59.93
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1440x900 59.89
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1360x768 59.80 59.96
1280x800 59.99 59.97 59.81 59.91
1152x864 60.00
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
800x512 60.17
700x525 59.98
800x450 59.95 59.82
640x512 60.02
720x450 59.89
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
680x384 59.80 59.96
640x400 59.88 59.98
576x432 60.06
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
xrandr --listproviders
の出力:
Providers: number : 1
Provider 0: id: 0x43 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 1 associated providers: 0 name:modesetting
lspci -nn | grep VGA
の出力:
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 630 (Mobile) [8086:3e9b]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1f91] (rev a1)
aplay -l
の出力:
card 0: PCH [HDA Intel PCH], device 0: ALC255 Analog
[ALC255 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
lshw -c video
の出力:
*-display
description: VGA compatible controller
product: NVIDIA Corporation
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:154 memory:a3000000-a3ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:5000(size=128) memory:a4000000-a407ffff
*-display
description: VGA compatible controller
product: Intel Corporation
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:128 memory:a2000000-a2ffffff memory:b0000000-bfffffff ioport:6000(size=64) memory:c0000-dffff
Nvidiaの「Optimus」テクノロジーを使用した、2つのGPUを搭載したラップトップがあります。
低電力CPU統合型Intel iGPUはラップトップの内部ディスプレイに出力するように物理的に配線され、HDMI出力はより強力なNvidiaディスクリートGPUに配線されます。デバイスID 10de:1f91は、Nvidia GPUがGeForce GTX 1650 Mobile/Max-Qであることを示します。そのGPUのNvidiaコードネームはTU117Mです。
ラップトップには、GPU間で出力を切り替える機能がある場合とない場合があります。そのような機能が存在する場合、vga_switcheroo
はそれを制御できるカーネル機能の名前です。次に、Nvidia GPUのドライバーをインストールする必要があります(無料のnouveau
またはNvidiaの専用ドライバーのいずれか。NvidiaGPUモデルはかなり新しいため、nouveau
でのサポートはまだXサーバーを起動する前に、Nvidiaへの切り替えをトリガーします。
「muxless Optimus」と呼ばれる出力切り替え機能がない場合、すべての出力を使用するには、レンダリングされた画像をアクティブなGPUから他のGPUに渡す必要があります。両方のGPUのドライバー(および必要なファームウェア)がインストールされている場合、xrandr --listproviders
は1つではなく2つのプロバイダーをリストする必要があります。次にxrandr --setprovideroutputsource <other GPU> <active GPU>
を使用して、他のGPUの出力をアクティブGPU。
残念ながら、Nvidia独自のドライバーはアクティブなGPUの役割でのみこの共有に参加できるようです。そのため、そのドライバーを使用するときは、2つの異なるXサーバー構成を適切に使用することをお勧めします。
1つの構成は、Nvidia GPUをアクティブなものとして外部ディスプレイ(およびおそらく電源アダプターも接続されている)で使用し、ラップトップの内部ディスプレイのiGPUを介してデータを供給するためのものです。
バッテリー電源を使用し、最大GPUパフォーマンスを必要としない場合は、他の構成が適切です。この構成では、Intel iGPUをアクティブな構成として使用し、Nvidia GPUを完全にシャットダウンして電力を節約することができます(これにより、 bumblebee
パッケージ)。一部の選択したプログラムでより多くのGPUパフォーマンスを実現する場合は、primus
パッケージを使用して、グラフィックスをレンダリングするために物理画面が接続されていないNvidia GPUを使用し、結果をIntel iGPUに渡して表示できます。
Kubuntuでは、インストール時にプロプライエタリドライバーを使用することについて尋ねられ、「はい」と答えたため、おそらく上記の構成の1つがセットアップされています。しかし、Debianはオープンソースソフトウェアの原則についてより厳格になる傾向があるため、プロプライエタリドライバーの使用はそれほどシームレスではありません。
一般に、Debianのstable
リリース(現在はバスター)と最新かつ最高のNvidia GPUの組み合わせは、結果を満足させる簡単な方法ではありません、NvidiaのプロプライエタリドライバーのDebianパッケージバージョンは、Nvidia独自のリリースよりも遅れる傾向があるため、現在、Debian 10のnon-freeセクションのドライバーバージョンは418.116であり、GeForce GTXをサポートするために必要な最小バージョンです1650 Mobileは430のようです。
ただし、buster-backports
リポジトリにはバージョン440があります。これを使用するには、 バックポートリポジトリをAPT構成に追加する)を追加する必要があります。 つまり、次の行を/etc/apt/sources.list
ファイルに追加します。
deb http://deb.debian.org/debian buster-backports non-free
次に、ルートとしてapt-get update
を実行します。これで、通常のパッケージ管理ツールでバックポートリポジトリを利用できるようになりました。
apt-get -t buster-backports install nvidia-driver
gPUをサポートするのに十分な新しいバージョンのNvidia専用ドライバーをインストールします。