Thinkpad X1 Yoga Gen8 - тиринг и другие артефакты графики

Автор RomanCh, 12 июня 2025, 14:55:05

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

RomanCh

Всем привет.

Имеется:

* ThinkPad X1 Yoga Gen8
* CPU: 13th Gen Intel(R) Core(TM) i7-1370P None CPU @ 1.9GHz
* GPU: Iris Xe Graphics
* RAM: 64 Gb LPDDR5x-6000
* ОС Debian 12

Есть нестабильная проблема с тирингом и артефактами изображения. Например, если проходить тест монитора на Response Time, то какое-то время (от секунд до минут) всё может работать гладко, в частности на 4к дисплее. Но при каких-то не до конца определённых условиях, например таскать другие окна поверх окна с тестом, начинается адский тиринг.

Соответственно та же проблема и при проигрывании видео HD+ качества. Возможно есть какая-то связь с нагревом процессора, но это не точно. Т.к. бывает что тиринг начинается и через какое-то время проходит (может потому что вентиляторы остужают проц, а может и нет такой связи).

Кроме того, регулярно (но будто бы только на встроенном дисплее) есть проблемка с частичной неперерисовкой верхней части экрана при резкой прокрутке внутри окна, не важно браузерное окно (FF) или консоль (xfce4-terminal). Актуально только для если значимых (по объёму) изменений картинки не произошло, например - чёрный текст на белом фоне после резкой прокрутки может выглядеть так, будто пара старых строчек частично не отрисовалась и осталась на своём месте. Небольшая дополнительная прокрутка или другой вывод на экран устраняет этот эффект. Если резко меняется изображение (вместо текста - картинка), то подобных эффектов не бывает.

Что важно - если поставить Ubuntu 24.0.2 то подобных проблем там не наблюдается совершенно. Долго гонял тест, всякие параллельные действия выполнял, но всё работает гладко, в картинке (нууу, почти) никаких заиканий нету.

Пробовал и совершенно никак не помогло:

* В Debian принести ядро из убунты а также пактеы с модулями, включая modules-extra + пакет с firmware. Перестал работать libvirtd из-за настроек AppArmor, но не тиринг.
* Поставить Debian 13 (testing)
* Обновить до упора прошивки ноутбука.
* Править X11 конфиг на предмет TearFree - вроде бы немного помогает, но не сильно и будто бы появляются тормоза при вертикальной перерисовке.

Честно говоря пока не понимаю куда дальше смотреть и очень не хочу использовать Ubuntu. Грешу на то, что возможно дело в процессоре с гетерогенными ядрами, с которыми (возможно) не умеет нормально работать ядро Debian и если обработка чего-либо свяазанного с графикой попадает на "энергоэффективные ядра", то начинаются тормоза. А когда те же задачи планировщик ОС закидывает на высокопроизводительные ядра, то проблемы нет. Конечно гуглил всякое, но пока решений не нашёл.

У кого-нибудь есть идеи что можно повернуть или попробовать перенести какую-то конфигурацию из Ubuntu чтобы оно таки заработало нормально? Возможно дело в каких-нибудь настройках синхронизации дисплея (а не в драйверах/иксах)?

PS Есть аналогичный ноут но младше по конфигу - с 32 Гб и процессором с меньшим числом ядер - абсолютно та же история с тирингом и артефактами, при том что более слабый процессор греется значимо слабее.

Информация о сессии/оборудовании
DESKTOP_SESSION=openbox
XDG_SESSION_DESKTOP=openbox
XDG_SESSION_TYPE=x11
GDMSESSION=openbox


Пробовались все закомментированные настройки:
# cat /etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
    Identifier "Intel Graphics"
#    Driver "intel"
#    Option "TearFree"    "true"
#    Option "DRI"         "3"
Driver "modesetting"
# Option "DoubleShadow" "true"
EndSection


# lspci
00:00.0 Host bridge: Intel Corporation Raptor Lake-P 6p+8e cores Host Bridge/DRAM Controller
00:02.0 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics] (rev 04)
00:04.0 Signal processing controller: Intel Corporation Raptor Lake Dynamic Platform and Thermal Framework Processor Participant
00:06.0 PCI bridge: Intel Corporation Raptor Lake PCIe 4.0 Graphics Port
00:07.0 PCI bridge: Intel Corporation Raptor Lake-P Thunderbolt 4 PCI Express Root Port
00:07.2 PCI bridge: Intel Corporation Raptor Lake-P Thunderbolt 4 PCI Express Root Port
00:08.0 System peripheral: Intel Corporation GNA Scoring Accelerator module
00:0a.0 Signal processing controller: Intel Corporation Raptor Lake Crashlog and Telemetry (rev 01)
00:0d.0 USB controller: Intel Corporation Raptor Lake-P Thunderbolt 4 USB Controller
00:0d.2 USB controller: Intel Corporation Raptor Lake-P Thunderbolt 4 NHI
00:0d.3 USB controller: Intel Corporation Raptor Lake-P Thunderbolt 4 NHI
00:12.0 Serial controller: Intel Corporation Alder Lake-P Integrated Sensor Hub (rev 01)
00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
00:14.3 Network controller: Intel Corporation Raptor Lake PCH CNVi WiFi (rev 01)
00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
00:15.1 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 (rev 01)
00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
00:16.3 Serial controller: Intel Corporation Alder Lake AMT SOL Redirection (rev 01)
00:1f.0 ISA bridge: Intel Corporation Raptor Lake LPC/eSPI Controller (rev 01)
00:1f.3 Audio device: Intel Corporation Raptor Lake-P/U/H cAVS (rev 01)
00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
04:00.0 Non-Volatile memory controller: KIOXIA Corporation NVMe SSD Controller XG7

Подробнее о видео:
00:02.0 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics] (rev 04) (prog-if 00 [VGA controller])
        Subsystem: Lenovo Raptor Lake-P [Iris Xe Graphics]
        Flags: bus master, fast devsel, latency 0, IRQ 202, IOMMU group 0
        Memory at 603c000000 (64-bit, non-prefetchable) [size=16M]
        Memory at 4000000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 2000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [40] Vendor Specific Information: Len=0c <?>
        Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable+ 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [100] Process Address Space ID (PASID)
        Capabilities: [200] Address Translation Service (ATS)
        Capabilities: [300] Page Request Interface (PRI)
        Capabilities: [320] Single Root I/O Virtualization (SR-IOV)
        Kernel driver in use: i915
        Kernel modules: i915

Процессор:
# lscpu
Architecture:                x86_64
  CPU op-mode(s):            32-bit, 64-bit
  Address sizes:             46 bits physical, 48 bits virtual
  Byte Order:                Little Endian
CPU(s):                      20
  On-line CPU(s) list:       0-19
Vendor ID:                   GenuineIntel
  BIOS Vendor ID:            Intel(R) Corporation
  Model name:                13th Gen Intel(R) Core(TM) i7-1370P
    BIOS Model name:         13th Gen Intel(R) Core(TM) i7-1370P None CPU @ 1.9GHz
    BIOS CPU family:         198
    CPU family:              6
    Model:                   186
    Thread(s) per core:      2
    Core(s) per socket:      14
    Socket(s):               1
    Stepping:                2
    CPU(s) scaling MHz:      15%
    CPU max MHz:             5200,0000
    CPU min MHz:             400,0000
    BogoMIPS:                4377,60
    Flags:                   fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdt
                             scp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor
                              ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf
                             _lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase
                             tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt clwb intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves avx_vnni dtherm ida
                              arat pln pts hwp hwp_notify hwp_act_window hwp_epp hwp_pkg_req hfi umip pku ospke waitpkg gfni vaes vpclmulqdq tme rdpid movdiri movdir64b fs
                             rm md_clear serialize pconfig arch_lbr ibt flush_l1d arch_capabilities
Virtualization features:     
  Virtualization:            VT-x
Caches (sum of all):         
  L1d:                       544 KiB (14 instances)
  L1i:                       704 KiB (14 instances)
  L2:                        11,5 MiB (8 instances)
  L3:                        24 MiB (1 instance)
NUMA:                       
  NUMA node(s):              1
  NUMA node0 CPU(s):         0-19
Vulnerabilities:             
  Gather data sampling:      Not affected
  Indirect target selection: Not affected
  Itlb multihit:             Not affected
  L1tf:                      Not affected
  Mds:                       Not affected
  Meltdown:                  Not affected
  Mmio stale data:           Not affected
  Reg file data sampling:    Mitigation; Clear Register File
  Retbleed:                  Not affected
  Spec rstack overflow:      Not affected
  Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
  Spectre v1:                Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  Spectre v2:                Mitigation; Enhanced / Automatic IBRS; IBPB conditional; PBRSB-eIBRS SW sequence; BHI BHI_DIS_S
  Srbds:                     Not affected
  Tsx async abort:           Not affected

koshak83

#1
Цитата: RomanCh от 12 июня 2025, 14:55:05Пробовались все закомментированные настройки:
Код Выделить Развернуть
# cat /etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
    Identifier "Intel Graphics"
#    Driver "intel"
#    Option "TearFree"    "true"
#    Option "DRI"         "3"
Driver "modesetting"
# Option "DoubleShadow" "true"
EndSection

Попробуйте так, удалите всё и вставьте это.
Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "TearFree"    "true"
EndSection
Перезагрузитесь.

ЗЫ: У меня тоже немного поддёргивает на 13м тесте ближе к правой части экрана,но не так жёстко как у вас. Главное чтобы в браузере не было тиринга при прокрутке страниц и при просмотре видео, и на экране при перемещении окон.
Конституция СССР 1977 года.
Всесоюзный референдум о сохранении СССР 1991 года: Да- 76.4%, Нет- 21.7%, Признаны недействительными- 1.9%, Явка избирателей- 80.0%.

RomanCh

#2
Цитата: koshak83 от 13 июня 2025, 11:37:10Попробуйте так, удалите всё и вставьте это.
Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "TearFree"    "true"
EndSection
Перезагрузитесь.

Ну в общем-то я так делал. Эффект есть, но не тот что хотелось бы :-D Тиринг вроде как уходит, но вместо этого бегающие по экрану прямоугольники начинают перемещаться по нему целиком, но рывками. Что интересно - на большой скорости в тесте это почти незаметно, а если поставить маленькую, то видно как они скачут - замирают и потом "телепортируются" вправо на 2-3 десятка пикселов за раз целиком и т.д.

На пресловутой убунте таких проблем нету, вот и хочу понять что же они там такое накрутили.

PS Перезагружаться же не обязательно, достаточно иксы перезапустить. Но для уверенности я и перезагрузился.
PPS К слову, это в любом случае не решает проблем с частичной неперерисовкой картинки. Дело явно в чём-то более глубоком чем просто ручка борьбы с тирингом.

dzhoser

1. Обновите ядро и firmware (микропрограммы Intel)
Новые ядра лучше поддерживают Intel Xe Graphics.

sudo apt updatesudo apt upgrade linux-image-amd64 firmware-misc-nonfree intel-microcode
2. Используйте драйвер modesetting (как у вас сейчас) или переключитесь на intel
Ваш текущий конфиг (/etc/X11/xorg.conf.d/20-intel.conf) использует modesetting, что нормально, но можно попробовать явный драйвер intel:
sudo nano /etc/X11/xorg.conf.d/20-intel.confВставить
Section "Device"
    Identifier "Intel Graphics"
    Driver "modesetting"
    Option "TearFree" "true"
    Option "AccelMethod" "glamor"
EndSection

Вариант 2 (если modesetting не помогает):
Вставьте
Section "Device"
    Identifier "Intel Graphics"
    Driver "intel"
    Option "TearFree" "true"
    Option "DRI" "3"
EndSection

Перегрузитесь
3. Проверьте, включен ли аппаратный рендеринг (glamor)

glxinfo | grep -i "renderer"
Должно быть что то вроде
OpenGL renderer string: Mesa Intel(R) Xe Graphics (RPL-P)
Если видите llvmpipe (софтварный рендеринг), значит, аппаратное ускорение не работает.
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

RomanCh

Цитата: dzhoser от 13 июня 2025, 14:46:341. Обновите ядро и firmware (микропрограммы Intel)
Новые ядра лучше поддерживают Intel Xe Graphics.
sudo apt updatesudo apt upgrade linux-image-amd64 firmware-misc-nonfree intel-microcode
linux-image-amd64 is already the newest version (6.1.140-1).
firmware-misc-nonfree is already the newest version (20230210-5).
intel-microcode is already the newest version (3.20250512.1~deb12u1).

Цитата: dzhoser от 13 июня 2025, 14:46:342. Используйте драйвер modesetting (как у вас сейчас) или переключитесь на intel
Ваш текущий конфиг (/etc/X11/xorg.conf.d/20-intel.conf) использует modesetting, что нормально, но можно попробовать явный драйвер intel:
sudo nano /etc/X11/xorg.conf.d/20-intel.confВставить
Section "Device"
    Identifier "Intel Graphics"
    Driver "modesetting"
    Option "TearFree" "true"
    Option "AccelMethod" "glamor"
EndSection
Хм. ну у меня не было только AccelMethod, поставил. Т.е. прямо вот предложенный конфиг вписал - никак не улучшилось. Кстати modesetting в TearFree не верит (man 4 modesetting) и пишет про это в логе, что опция не используется.


Цитата: dzhoser от 13 июня 2025, 14:46:34Вариант 2 (если modesetting не помогает):

Та же история, что описана в сообщении выше. Т.е. тиринг заменяется на дёрганье прямоугольников целиком.

Цитата: dzhoser от 13 июня 2025, 14:46:343. Проверьте, включен ли аппаратный рендеринг (glamor)
Включен:
# glxinfo | grep -i "renderer"
    GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, GLX_MESA_swap_control,
    GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, GLX_MESA_swap_control,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: Mesa Intel(R) Graphics (RPL-P)

Лия

Цитата: RomanCh от 13 июня 2025, 15:22:52Кстати modesetting в TearFree не верит (man 4 modesetting) и пишет про это в логе, что опция не используется.
Потому что modesetting в стабильном xorg в TearFree не умеет. git xorg - умеет, но его ещё поставить нужно :)
Wayland пробовали?

RomanCh

Цитата: Лия от 13 июня 2025, 17:37:11Потому что modesetting в стабильном xorg в TearFree не умеет. git xorg - умеет, но его ещё поставить нужно :)
А есть хоть какая-то доля уверенности что оно будет работать лучше? И что именно там лучше собирать, не с мастера же прямо брать исходник?

Цитата: Лия от 13 июня 2025, 17:37:11Wayland пробовали?
Пока нет, хотя в убунте именно оно. Думал об этом, но не уверен, что дело именно в нём. Вообще с ним совсем нет опыта. Есть понимание, OpenBox там взлетит и вообще не отвалится ли всё подряд?

Лия

Цитата: RomanCh от 13 июня 2025, 18:29:45А есть хоть какая-то доля уверенности что оно будет работать лучше? И что именно там лучше собирать, не с мастера же прямо брать исходник?
Уверенности в работе нет :)
Только в том, что он (TearFree в modesetting) там есть :)

Цитата: RomanCh от 13 июня 2025, 18:29:45Пока нет, хотя в убунте именно оно. Думал об этом, но не уверен, что дело именно в нём. Вообще с ним совсем нет опыта. Есть понимание, OpenBox там взлетит и вообще не отвалится ли всё подряд?

Нет, не взлетит. Для начала попробуйте Live-образ с KDE или GNOME и прогоните тесты на нём ( только убедитесь, что загрузились в сеанс Wayland :) )

RomanCh

Цитата: Лия от 13 июня 2025, 19:28:12KDE или GNOME и прогоните тесты на нём ( только убедитесь, что загрузились в сеанс Wayland :) )
Не, ну под этим ужасом я работать не планирую ибо мне проще терпеть тиринг, чем это.
И конечно, судя по этому списку всё как-то очень грустно с поддержкой вяленой колбасы. :( Если только попробовать labwc который вроде как есть в testing и соответственно скоро будет в стабильном релизе.

Ладно, спасибо, я подумаю. Надо ещё попробовать иксы собрать.

Лия

#9
Цитата: RomanCh от 13 июня 2025, 19:48:46Если только попробовать labwc который вроде как есть в testing и соответственно скоро будет в стабильном релизе.
Хорошая идея :)

13 июня 2025, 20:50:36
Цитата: RomanCh от 13 июня 2025, 19:48:46Надо ещё попробовать иксы собрать
Если будете ставить собранное в систему, лучше сделать полный бэкап (например, через Clonezilla).
На всякий случай.
:)

dzhoser

#10
Согласно intel(4) § CONFIGURATION DETAILS:

Есть несколько движков для ускорения DDX. "UXA" (Архитектура Единого Ускорения) является зрелой базовой, которая была введена для поддержки модели драйвера GEM. Именно в процессе заменены "SNA" (новое ускорение в SandyBridge). Cпособность выбора использовать базовую остается для обратной совместимости.
Вам может понадобиться прописать Option "AccelMethod" при создании файла конфигурации. Классическими вариантами являются UXA, SNA (по умолчанию) и BLT.

Если у вас возникают проблемы со стандартным SNA (например, пикселированная графика, повреждённый текст и т.д.), попробуйте использовать вместо него UXA, что можно сделать, добавив следующую строку в файл настроек Xorg:

Option      "AccelMethod"  "uxa"Следовательно вот еще два значения
Option      "AccelMethod"  "sna"Option      "AccelMethod"  "blt"Доустановите пакеты sudo apt install mesa-utils libgl1-mesa-driПоиграйтесь отпишитесь
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

RomanCh

Цитата: Лия от 13 июня 2025, 20:50:01например, через Clonezilla
Ну, это как-то слишком с запахом смузи... ) dd всему голова!

Цитата: dzhoser от 13 июня 2025, 21:09:21Option      "AccelMethod"  "uxa"Следовательно вот еще два значения
Option      "AccelMethod"  "sna"Option      "AccelMethod"  "blt"Доустановите пакеты sudo apt install mesa-utils libgl1-mesa-driПоиграйтесь отпишитесь

Да, эти методы ещё не пробовал, хотя пакеты такие уже есть. Спасибо, попробую как бэкап докатится)

koshak83

Цитата: RomanCh от 13 июня 2025, 18:29:45
Цитата: Лия от 13 июня 2025, 17:37:11Потому что modesetting в стабильном xorg в TearFree не умеет. git xorg - умеет, но его ещё поставить нужно :)
А есть хоть какая-то доля уверенности что оно будет работать лучше? И что именно там лучше собирать, не с мастера же прямо брать исходник?

Цитата: Лия от 13 июня 2025, 17:37:11Wayland пробовали?
Пока нет, хотя в убунте именно оно. Думал об этом, но не уверен, что дело именно в нём. Вообще с ним совсем нет опыта. Есть понимание, OpenBox там взлетит и вообще не отвалится ли всё подряд?
На Вяленом в отличии от Иксов тиринга у меня нет и конфиги править не нужно.
Конституция СССР 1977 года.
Всесоюзный референдум о сохранении СССР 1991 года: Да- 76.4%, Нет- 21.7%, Признаны недействительными- 1.9%, Явка избирателей- 80.0%.

RomanCh

#13
Цитата: dzhoser от 13 июня 2025, 21:09:21Поиграйтесь отпишитесь

Ну в общем, что выяснилось. С uxa вообще иксы не запускаются падая с вот такой бредовой ошибкой:
[   374.917] (EE) intel(0): intel_uxa_set_pixmap_bo: size of buffer object does not match constraints: size=29360128, must be greater than 25804800, but less than 4194304
Т.е. нижний предел выше верхнего О_о. Беглый гуглёж показал что полно вопросов по этой теме, но внятных ответов нет, так что - отпадает.

Режим "sna" судя по мануалу вообще по умолчанию, явное указание его, как и "blt" ничего вообще не изменило.

К слову, заметил что вообще никакие настройки кроме указания драйвера ничего в ситуации не меняют. На интеловом драйвере тиринга нет, но есть дурацкое дёрганье перемещаемых объектов.

Видимо буду идти в сторону экспериментов со сборкой иксов и вяленой колбасы.

14 июня 2025, 14:02:38
Цитата: koshak83 от 14 июня 2025, 11:09:56На Вяленом в отличии от Иксов тиринга у меня нет и конфиги править не нужно.
Так-то оно наверное так. Но меня совершенно не смущает необходимость поправить конфиги и быть может даже код. Но очень смущает, что там не работает то, что мне нужно.

ChubaDuba

Цитата: RomanCh от 12 июня 2025, 14:55:05Что важно - если поставить Ubuntu 24.0.2 то подобных проблем там не наблюдается совершенно.
Может Ubuntu использует какой-нибудь композитор? Например, picom.