CentOS 7 OpenGLはインストール後にNvidiaを使用せず、nvidiaの設定に失敗します。 NVIDIAをすべてに強制的に使用する方法はありますか?

CentOS 7 OpenGLはインストール後にNvidiaを使用せず、nvidiaの設定に失敗します。 NVIDIAをすべてに強制的に使用する方法はありますか?

良い午後、

新しいCentOS 7サーバー。 (互換性ライブラリと同様)NVIDIAドライバをインストールしてシステムにログインできました。 OpenGLはまだ統合グラフィックスを使用しているようで、追加のトラブルシューティングのためにNVIDIA設定がオンになっていません。

nvidia-smiは、システムの一部が統合を使用し、nvidiaが3dレンダリングにのみ使用されるように見えますが、ドライバがロード/動作していると信じています。

可能であれば、nvidiaカードで完全に機能させることをお勧めしますが、OpenGLは私の主な関心事です。ディスプレイを制御する統合グラフィックの結果ではない限り、NVIDIA設定をオンにできない理由を理解していませんか?それでは、NVIDIAがOpenGLコンポーネントを含むようにすべてを制御できるようにどのように変更しますか?

これまで、私はnvidiaドライバを完全に再インストールし、同様の問題を抱えている人を見つけるためにログ/フォーラムを広く見ました。

一般情報は次のとおりです。

# nvidia-smi 
Wed Jan 27 16:08:26 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.80.02    Driver Version: 450.80.02    CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro P1000        Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   37C    P8    N/A /  N/A |      0MiB /  4042MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

# nvidia-settings 
ERROR: Unable to load info from any available system

# lshw -class display
*-display                 
   description: 3D controller
   product: GP107GLM [Quadro P1000 Mobile]
   vendor: NVIDIA Corporation
   physical id: 0
   bus info: pci@0000:01:00.0
   version: a1
   width: 64 bits
   clock: 33MHz
   capabilities: pm msi pciexpress bus_master cap_list rom
   configuration: driver=nvidia latency=0
   resources: irq:515 memory:ec000000-ecffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:3000(size=128) memory:ed000000-ed07ffff
*-display
   description: VGA compatible controller
   product: UHD Graphics 630 (Mobile)
   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:148 memory:eb000000-ebffffff memory:80000000-8fffffff ioport:4000(size=64)

# glxinfo | grep -i opengl
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 6.0, 256 bits)
OpenGL version string: 2.1 Mesa 18.0.5
OpenGL shading language version string: 1.30
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 18.0.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:

答え1

NVIDIAが私のハイブリッドグラフィックノートブックで動作するようにするために私がしなければならないことは次のとおりです。 (以下ではnouveauが無効になり、nvidiaがインストールされると予想されます)

/etc/X11/xorg.conf.d/10-nvidia-prime.confの生成

Section "OutputClass"  
  Identifier "nvidia"
  MatchDriver "nvidia-drm"
  Driver "nvidia"
  Option "AllowEmptyInitialConfiguration"
  Option "PrimaryGPU" "yes"
EndSection

以下を含む 2 つの "optimus.desktop" ファイルが /etc/xdg/autostart/ および /usr/share/gdm/greeter/autostart/ に作成されます。

[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c "xrandr --setprovideroutputsource modesetting NVIDIA-0; xrandr --auto"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer

/etc/default/grub の CRUB_CMDLINE_LINUX の末尾にカーネルパラメータ nvidia-drm.modeset=1 を追加し、次のコマンドを実行します。

grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

次のコマンドを使用して /etc/modprobe.d/nvidia.conf を生成します。

echo "options nvidia_drm modeset=1" >> /etc/modprobe.d/nvidia.conf

次の内容で/etc/dracut.conf.d/nvidia.confを作成します。

add_drivers+=" nvidia nvidia_modeset nvidia_uvm nvidia_drm "
install_items+=" /etc/modprobe.d/nvidia.conf "

次のコマンドを実行します。

dracut -f
init6

その時点から、NVIDIAはデフォルトのグラフィックカードになり、期待どおりに機能しました。

関連情報