一直在努力设置我的机器 Thinkpad P52s(英特尔 UHD 620(i7 8550U)+ Nvidia Quadro P500)- 运行 Ubuntu 20.04 以在兼容显示器(华硕 PA329C - 最便宜的真正的每通道 10 位兼容面板)上显示正确的每通道 10 位(RGB)。
当我设置 xorg ( /usr/share/X11/xorg.conf.d/30-screensetup.conf 中的一个文件,如下所示https://linuxreviews.org/HOWTO_enable_10-bit_color_on_Linux) 我的红色和蓝色会反转。尽管我的 Xorg 日志显示“使用深度/fbpp 30/32”,但它仍然不是真正的 10 位颜色。
参考:我使用了以下指南/文件:
https://www.avsforum.com/threads/10-bit-gradient-test-patterns.2269338/
https://www.eizo-apac.com/support-service/tech-library/monitor-test
以及其他一些...
所有驱动程序均已正确安装...Nvidia-Xserver 还显示 XScreen 0 设置具有正确的色彩深度
lshw -c display:
GNU nano 4.8 lshwout.txt
*-display
description: VGA compatible controller
product: UHD Graphics 620
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 07
width: 64 bits
clock: 33MHz
capabilities: vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:159 memory:e7000000-e7ffffff memory:c0000000-cfffffff ioport:e000(size=64) memory:c0000-dffff
*-display
description: 3D controller
product: GP108GLM [Quadro P500 Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:02:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list
configuration: driver=nvidia latency=0
resources: irq:168 memory:e8000000-e8ffffff memory:70000000-7fffffff memory:80000000-81ffffff ioport:d000(size=128)
Xorg.0.log
13.740] ABI class: X.Org ANSI C Emulation, version 0.4
[ 13.740] (II) Loading sub module "ramdac"
[ 13.740] (II) LoadModule: "ramdac"
[ 13.740] (II) Module "ramdac" already built-in
[ 13.741] (WW) Falling back to old probe method for modesetting
[ 13.751] (WW) Falling back to old probe method for fbdev
[ 13.751] (II) Loading sub module "fbdevhw"
[ 13.751] (II) LoadModule: "fbdevhw"
[ 13.751] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 13.751] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 13.751] compiled for 1.20.9, module version = 0.0.2
[ 13.751] ABI class: X.Org Video Driver, version 24.1
[ 13.767] (II) modeset(G0): using drv /dev/dri/card0
[ 13.767] (II) NVIDIA(0): Creating default Display subsection in Screen section
"Default Screen" for depth/fbbpp 30/32
[ 13.767] (**) NVIDIA(0): Depth 30, (--) framebuffer bpp 32
[ 13.767] (==) NVIDIA(0): RGB weight 101010
[ 13.767] (==) NVIDIA(0): Default visual is TrueColor
[ 13.767] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[ 13.768] (II) Applying OutputClass "nvidia" options to /dev/dri/card1
[ 13.768] (II) Applying OutputClass "Nvidia Prime" options to /dev/dri/card1
[ 13.768] (**) NVIDIA(0): Option "AllowEmptyInitialConfiguration"
[ 13.768] (**) NVIDIA(0): Enabling 2D acceleration
[ 13.768] (II) Loading sub module "glxserver_nvidia"
[ 13.768] (II) LoadModule: "glxserver_nvidia"
[ 13.768] (II) Loading /usr/lib/x86_64-linux-gnu/nvidia/xorg/libglxserver_nvidia.so
[ 13.790] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"
[ 13.790] compiled for 1.6.99.901, module version = 1.0.0
[ 13.790] Module class: X.Org Server Extension
[ 13.790] (II) NVIDIA GLX Module 460.80 Fri May 7 06:50:15 UTC 2021
[ 13.791] (II) NVIDIA: The X server supports PRIME Render Offload.
[ 13.792] (II) NVIDIA(0): NVIDIA GPU Quadro P500 (GP108GL-A) at PCI:2:0:0 (GPU-0)
[ 13.792] (--) NVIDIA(0): Memory: 2097152 kBytes
[ 13.792] (--) NVIDIA(0): VideoBIOS: 86.08.28.00.63
[ 13.792] (II) NVIDIA(0): Detected PCI Express Link width: 4X
[ 13.792] (II) NVIDIA(0): Validated MetaModes:
[ 13.792] (II) NVIDIA(0): "NULL"
[ 13.792] (II) NVIDIA(0): Virtual screen size determined to be 640 x 480
[ 13.792] (WW) NVIDIA(0): Unable to get display device for DPI computation.
[ 13.792] (==) NVIDIA(0): DPI set to (75, 75); computed from built-in default
[ 13.792] (II) modeset(G0): Creating default Display subsection in Screen section
"Default Screen" for depth/fbbpp 30/32
xwininfo 显示如下。有趣的是,它在 24 位深度下显示相同/相似。有时深度为 30,有时为 32。不确定它是否包括 alpha 通道并显示缓冲区大小?我可以将帧缓冲区大小更改为 40 以确保我获得每 10 位的 RGBA 吗?这能解决问题吗?
xwininfo as run in depth = 24 xorg session:
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
xwininfo: Window id: 0x3e0000a "rime@RimezWorkstation: ~"
Absolute upper-left X: 39
Absolute upper-left Y: 12
Relative upper-left X: 39
Relative upper-left Y: 12
Width: 2596
Height: 1487
Depth: 32
Visual: 0xa2
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x3e00009 (not installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +39+12 -1205+12 -1205-661 +39-661
-geometry 230x63+39+12
nvidia-smi 给出:
Sun Jun 20 15:05:58 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.80 Driver Version: 460.80 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| 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 P500 Off | 00000000:02:00.0 Off | N/A |
| N/A 63C P0 N/A / N/A | 358MiB / 2002MiB | 18% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1528 G /usr/lib/xorg/Xorg 246MiB |
| 0 N/A N/A 2149 G /usr/bin/gnome-shell 111MiB |
+-----------------------------------------------------------------------------+
xorg.conf.d 中的 nvidia-prime.conf 如下所示:
Section "OutputClass"
Identifier "Nvidia Prime"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
Option "IgnoreDisplayDevices" "CRT"
Option "PrimaryGPU" "Yes"
ModulePath "/lib/x86_64-linux-gnu/nvidia/xorg"
EndSection
gpu 管理器日志如下所示:
GNU nano 4.8 /var/log/gpu-manager.log
log_file: /var/log/gpu-manager.log
last_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
new_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
can't access /opt/amdgpu-pro/bin/amdgpu-pro-px
Looking for nvidia modules in /lib/modules/5.4.0-74-generic/updates/dkms
Looking for amdgpu modules in /lib/modules/5.4.0-74-generic/updates/dkms
Is nvidia loaded? yes
Was nvidia unloaded? no
Is nvidia blacklisted? no
Is intel loaded? yes
Is radeon loaded? no
Is radeon blacklisted? no
Is amdgpu loaded? no
Is amdgpu blacklisted? no
Is amdgpu versioned? no
Is amdgpu pro stack? no
Is nouveau loaded? no
Is nouveau blacklisted? yes
Is nvidia kernel module available? no
Is amdgpu kernel module available? no
Vendor/Device Id: 8086:5917
BusID "PCI:0@0:2:0"
Is boot vga? yes
Vendor/Device Id: 10de:1d33
BusID "PCI:2@0:0:0"
can't open /sys/bus/pci/devices/0000:02:00.0/boot_vga
Is boot vga? no
can't open /sys/bus/pci/devices/0000:02:00.0/boot_vga
can't access /etc/u-d-c-nvidia-runtimepm-override file
Found json file: /usr/share/doc/nvidia-driver-460/supported-gpus.json
Looking for device ID "0x1d33" in json file
Device ID 0x1D33 found in json file
Device name: Quadro P500
Looking for availability of "runtimepm" feature
"runtimepm" feature not found
Linux 5.4 detected.
Is nvidia runtime pm supported for "0x1d33"? no
Checking power status in /proc/driver/nvidia/gpus/0000:02:00.0/power
Runtime D3 status: Disabled
Is nvidia runtime pm enabled for "0x1d33"? no
Skipping "/dev/dri/card1", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "i915"
Skipping "/dev/dri/card1", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "i915"
Skipping "/dev/dri/card1", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "i915"
Skipping "/dev/dri/card1", driven by "nvidia-drm"
Found "/dev/dri/card0", driven by "i915"
output 0:
card0-eDP-1
output 1:
card0-DP-1
Number of connected outputs for /dev/dri/card0: 2
Does it require offloading? yes
last cards number = 2
Has amd? no
Has intel? yes
Has nvidia? yes
How many cards? 2
Has the system changed? No
Intel IGP detected
NVIDIA hybrid system
Creating /usr/share/X11/xorg.conf.d/11-nvidia-prime.conf
Setting power control to "on" in /sys/bus/pci/devices/0000:02:00.0/power/control
我必须说,只有在 PRIME 配置文件下 NVIDIA Xserver 设置设为高性能(即 NVIDIA 作为主 GPU?)时,颜色反转才会成为问题。当切换到“按需”配置文件时,颜色反转问题消失,但它夺走了我对 Nvidia 卡设置 X 屏幕深度的控制权。我只能获得 GPU 设置,而不再获得 X 屏幕显示配置设置。
但无论如何都无法获得真正的 10 种颜色 :(。请帮忙。