Я изо всех сил пытался настроить свою машину Thinkpad P52s (Intel UHD 620 (i7 8550U) + Nvidia Quadro P500) - с Ubuntu 20.04 для отображения правильных 10 бит на канал (RGB) на совместимом дисплее ( ASUS PA329C - самый дешевый, совместимый с 10 бит на канал панель).
Когда я устанавливаю xorg (файл в /usr/share/X11/xorg.conf.d/30-screensetup.conf, как в https://linuxreviews.org/HOWTO_enable_10-bit_color_on_Linux) мои красный и синий цвета инвертируются. Несмотря на то, что в моем журнале Xorg указано «используя depth/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 отображать:
GNU nano 4.8 lshwout.txt
*-отображать
описание: VGA-совместимый контроллер
продукт: UHD Graphics 620
производитель: корпорация Intel
физический идентификатор: 2
информация о шине: pci@0000:00:02.0
версия: 07
ширина: 64 бита
часы: 33 МГц
возможности: vga_controller bus_master cap_list rom
конфигурация: драйвер=i915 задержка=0
ресурсы: irq:159 память:e7000000-e7ffffff память:c0000000-cfffffff ioport:e000(размер=64) память:c0000-dffff
*-отображать
описание: 3D контроллер
продукт: GP108GLM [мобильная Quadro P500]
производитель: корпорация NVIDIA
физический идентификатор: 0
информация о шине: pci@0000:02:00.0
версия: а1
ширина: 64 бита
часы: 33 МГц
возможности: bus_master cap_list
конфигурация: драйвер = задержка nvidia = 0
ресурсы: irq:168 память:e8000000-e8ffffff память:70000000-7fffffff память:80000000-81ffffff ioport:d000(размер=128)
Xorg.0.log
13.740] Класс ABI: X.Org ANSI C Emulation, версия 0.4
[ 13.740] (II) Загрузка подмодуля "ramdac"
[ 13.740] (II) LoadModule: "ramdac"
[ 13.740] (II) Модуль "ramdac" уже встроен
[ 13.741] (WW) Возврат к старому методу проверки для настройки режима
[ 13.751] (WW) Возврат к старому методу зондирования для fbdev
[ 13.751] (II) Загрузка подмодуля "fbdevhw"
[ 13.751] (II) LoadModule: "fbdevhw"
[13.751] (II) Загрузка /usr/lib/xorg/modules/libfbdevhw.so
[ 13.751] (II) Модуль fbdevhw: vendor="X.Org Foundation"
[13.751] скомпилировано для 1.20.9, версия модуля = 0.0.2
[ 13.751] Класс ABI: видеодрайвер X.Org, версия 24.1
[ 13.767] (II) modeset(G0): использование drv /dev/dri/card0
[ 13.767] (II) NVIDIA(0): Создание подраздела Display по умолчанию в разделе Screen
«Экран по умолчанию» для depth/fbbpp 30/32
[ 13.767] (**) NVIDIA(0): глубина 30, (--) буфер кадров 32 бит на пиксель
[ 13.767] (==) NVIDIA(0): вес RGB 101010
[ 13.767] (==) NVIDIA(0): визуальный элемент по умолчанию — TrueColor
[ 13.767] (==) NVIDIA(0): Использование гамма-коррекции (1.0, 1.0, 1.0)
[13.768] (II) Применение опций OutputClass "nvidia" к /dev/dri/card1
[ 13.768] (II) Применение опций OutputClass "Nvidia Prime" к /dev/dri/card1
[ 13.768] (**) NVIDIA(0): опция «AllowEmptyInitialConfiguration»
[ 13.768] (**) NVIDIA(0): включение 2D-ускорения
[13.768] (II) Загрузка подмодуля "glxserver_nvidia"
[13.768] (II) LoadModule: "glxserver_nvidia"
[13.768] (II) Загрузка /usr/lib/x86_64-linux-gnu/nvidia/xorg/libglxserver_nvidia.so
[ 13.790] (II) Модуль glxserver_nvidia: vendor="NVIDIA Corporation"
[13.790] скомпилировано для 1.6.99.901, версия модуля = 1.0.0
[ 13.790] Класс модуля: Расширение сервера X.Org
[ 13.790] (II) Модуль NVIDIA GLX 460.80 Пт, 7 мая, 06:50:15 UTC 2021
[ 13.791] (II) NVIDIA: X-сервер поддерживает PRIME Render Offload.
[ 13.792] (II) NVIDIA(0): NVIDIA GPU Quadro P500 (GP108GL-A) при PCI:2:0:0 (GPU-0)
[ 13.792] (--) NVIDIA(0): Память: 2097152 кБ
[ 13.792] (--) NVIDIA(0): VideoBIOS: 86.08.28.00.63
[ 13.792] (II) NVIDIA(0): Обнаруженная ширина канала PCI Express: 4X
[ 13.792] (II) NVIDIA(0): проверенные метарежимы:
[ 13.792] (II) NVIDIA(0): "НУЛЬ"
[ 13.792] (II) NVIDIA(0): размер виртуального экрана определен как 640 x 480
[ 13.792] (WW) NVIDIA(0): невозможно получить устройство отображения для вычисления DPI.
[ 13.792] (==) NVIDIA(0): DPI установлено на (75, 75); вычисляется из встроенного значения по умолчанию
[ 13.792] (II) modeset(G0): создание подраздела Display по умолчанию в разделе Screen
«Экран по умолчанию» для depth/fbbpp 30/32
xwininfo показывает ниже. Забавно, что он показывает то же самое / подобное в 24-битной глубине. Иногда глубина 30, иногда 32... не уверен, включает ли он альфа-канал и вместо этого показывает размер буфера? Могу ли я изменить размер буфера кадра на 40, чтобы получить RGBA каждые 10 бит, и решит ли это проблему?
xwininfo как запустить в глубину = 24 сеанса xorg:
xwininfo: Пожалуйста, выберите окно, о котором вы
хотите получить информацию, нажав кнопку
мышь в этом окне.
xwininfo: идентификатор окна: 0x3e0000a "rime@RimezWorkstation: ~"
Абсолютный верхний левый X: 39
Абсолютный верхний левый Y: 12
Относительный верхний левый X: 39
Относительный верхний левый Y: 12
Ширина: 2596
Высота: 1487
Глубина: 32
Визуальный: 0xa2
Визуальный класс: TrueColor
Ширина границы: 0
Класс: ВходВыход
Цветовая карта: 0x3e00009 (не установлена)
Состояние битовой гравитации: NorthWestGravity
Состояние гравитации окна: NorthWestGravity
Состояние резервного хранилища: NotUseful
Сохранить в состоянии: нет
Состояние карты: IsViewable
Состояние переопределения перенаправления: нет
Углы: +39+12 -1205+12 -1205-661 +39-661
-геометрия 230x63+39+12
nvidia-smi дает:
Вс Июн 20 15:05:58 2021
+--------------------------------------------- ----------------------------+
| NVIDIA-SMI 460.80 Версия драйвера: 460.80 Версия CUDA: 11.2 |
|-------------------------------+---------------- -----+----------------------+
| Имя GPU Persistence-M| Bus-Id Disp.A | Летучий некорр. ЕСК |
| Мощность вентилятора Temp Perf:Использование/Ограничение| Использование памяти | GPU-Util Compute M. |
| | | МИГ М. |
|===============================+================= =====+======================|
| 0 Quadro P500 Выкл | 00000000:02:00.0 Выкл | Н/Д |
| Н/Д 63C P0 Н/Д / Н/Д | 358 МБ / 2002 МБ | 18% По умолчанию |
| | | Н/Д |
+---------------------------------------------+---------------- -----+----------------------+
+--------------------------------------------- ----------------------------+
| Процессы: |
| GPU GI CI PID Тип Имя процесса Память GPU |
| ID Использование ID |
|================================================ =============================|
| 0 Н/Д Н/Д 1528 G /usr/lib/xorg/Xorg 246MiB |
| 0 Н/Д Н/Д 2149 G /usr/bin/gnome-shell 111MiB |
+--------------------------------------------- ----------------------------+
nvidia-prime.conf внутри xorg.conf.d выглядит следующим образом:
Раздел "Выходной класс"
Идентификатор «Nvidia Prime»
MatchDriver "nvidia-drm"
Драйвер "нвидиа"
Опция «AllowEmptyInitialConfiguration»
Опция «ИгнорироватьDisplayDevices» «ЭЛТ»
Опция «Первичный графический процессор» «Да»
Путь к модулю "/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
новый_загрузочный_файл: /var/lib/ubuntu-drivers-common/last_gfx_boot
не могу получить доступ к /opt/amdgpu-pro/bin/amdgpu-pro-px
Ищем модули nvidia в /lib/modules/5.4.0-74-generic/updates/dkms
Ищем модули amdgpu в /lib/modules/5.4.0-74-generic/updates/dkms
Нвидиа загружена? да
Выгружалась ли nvidia? нет
Нвидиа занесена в черный список? нет
Интел загружен? да
Радеон загружен? нет
Радеон занесен в черный список? нет
amdgpu загружается? нет
Амдгпу занесен в черный список? нет
Есть ли версия amdgpu? нет
Есть ли стек amdgpu pro? нет
Модерн загружен? нет
Модерн занесен в черный список? да
Доступен ли модуль ядра nvidia? нет
Доступен ли модуль ядра amdgpu? нет
Идентификатор поставщика/устройства: 8086:5917
BusID "PCI:0@0:2:0"
Загрузка vga? да
Идентификатор поставщика/устройства: 10de:1d33
BusID "PCI:2@0:0:0"
не могу открыть /sys/bus/pci/devices/0000:02:00.0/boot_vga
Загрузка vga? нет
не могу открыть /sys/bus/pci/devices/0000:02:00.0/boot_vga
не могу получить доступ к файлу /etc/u-d-c-nvidia-runtimepm-override
Найден файл json: /usr/share/doc/nvidia-driver-460/supported-gpus.json
Ищем идентификатор устройства «0x1d33» в файле json
Идентификатор устройства 0x1D33 найден в файле json
Название устройства: Quadro P500
Поиск доступности функции "runtimepm"
Функция "runtimepm" не найдена
Обнаружен линукс 5.4.
Поддерживается ли nvidia runtime pm для «0x1d33»? нет
Проверка состояния питания в /proc/driver/nvidia/gpus/0000:02:00.0/power
Состояние среды выполнения D3: отключено
Включена ли среда выполнения nvidia для «0x1d33»? нет
Пропуск "/dev/dri/card1", управляемый "nvidia-drm"
Пропуск "/dev/dri/card0", управляемый "i915"
Пропуск "/dev/dri/card1", управляемый "nvidia-drm"
Пропуск "/dev/dri/card0", управляемый "i915"
Пропуск "/dev/dri/card1", управляемый "nvidia-drm"
Пропуск "/dev/dri/card0", управляемый "i915"
Пропуск "/dev/dri/card1", управляемый "nvidia-drm"
Найден "/dev/dri/card0", управляемый "i915"
вывод 0:
карта0-eDP-1
выход 1:
карта0-DP-1
Количество подключенных выходов для /dev/dri/card0: 2
Требуется ли разгрузка? да
количество последних карт = 2
Есть амд? нет
Есть инфа? да
Есть нвидиа? да
Сколько карт? 2
Система изменилась? Нет
Обнаружен Intel IGP
Гибридная система NVIDIA
Создание /usr/share/X11/xorg.conf.d/11-nvidia-prime.conf
Включение управления питанием в /sys/bus/pci/devices/0000:02:00.0/power/control
Я должен сказать, что инверсия цвета является проблемой только тогда, когда в настройках PRIME Profiles NVIDIA Xserver установлена высокая производительность (т. Е. NVIDIA в качестве основного графического процессора?). При переключении на профиль «по запросу» проблема инверсии цвета исчезает, но это лишает меня контроля над настройками X Глубина экрана от карты Nvidia. Я получаю только настройки графического процессора и больше никаких настроек конфигурации X Screen Display.
Но в любом случае не получается 10 цветов :( . Помогите пожалуйста.