- PVSM.RU - https://www.pvsm.ru -

Про Linux на встроенной графике Intel

Я уже довольно долго собираю и настраиваю десктопы с Linux для дома и офиса, и последнее время не без удовольствия выбираю конфигурации со встроенной графикой Intel. Когда‑то я начинал с машинки, в которую поставил с Core i3–2105, (HD Graphics 3000), позднее — более новый Core i3–9000 (UHD Graphics 630), а совсем недавно мне очень недорого достался Intel NUC5PPYH, разумеется тоже с фирменным графическим контроллером Intel.

Сразу хочу сказать, что если вы не играете в коммерческие игры в Linux, то графические «встройки» Intel — это лучший выбор в плане стабильности и поддержки производителя. Видеодрайвер уже много лет есть в ядре, и он просто работает: с аппаратным ускорением из коробки, без тиринга, без дополнительных проприетарных блобов и прочей головной боли. Более того, таких драйверов минимум два: это традиционный 'intel' и более новый 'modesetting'. Графика Intel с самого начала лучше всего работала в Wayland, не будем забывать и об этом.

Поводом для этой заметки стало наблюдение: эффекты рабочего стола могут тормозить на старых «встройках» Intel при том, что в OpenGL‑приложениях может быть вполне высокий FPS и хорошая плавность. Я наблюдал разные признаки торможения в двух самых популярных рабочих окружениях (KDE Plasma 5 и Gnome 4) как в X11, так и в Wayland. Я хочу поделиться советом про то, как ситуацию можно исправить на примере дистрибутива Fedora $releasever (на момент описания это 37).

Итак, дано: вы ощущаете, что анимация рабочего стола тормозит (ключевые слова: laggy, jerky, stuttering).

Если речь идёт о Gnome, то решением может стать включение динамической тройной буферизации кадров [1]. Прямо сейчас это изменение ещё не принято в Mutter, но для Fedora есть отдельный Copr‑репозиторий [2] с нужными патчами. Сходите по ссылке, там есть все нужные инструкции. Кстати, в Ubuntu 22.04 подобный патч уже применён [3].

Далее, на скорость отрисовки интерфейса влияет работа framebuffer. Есть смысл включить сжатие фреймбуфера ради повышение FPS в анимациях (и не только). Для этого следует создать файл /etc/modprobe.d/i915.conf с таким содержимым:

options i915 enable_fbc=1

И дать команду:

sudo dracut --force

Эффект наступит после перезагрузки машины.

Если у вас KDE Plasma, то фокус с Mutter, разумеется, не актуален. Plasma имеет свойство более медленно работать в Wayland нежели в X11, что иногда расстраивает (например, если хочется погонять Waydroid [4]). Однако, я случайно нашёл быстрый фикс. Посмотрите, какой вывод у вас даёт команда:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

Почти наверняка там будет либо 'powersave', либо 'schedutil'. Изменим его на 'performance':

echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

Вопреки распространённому мнению, это не приведёт ни к опустошению батареи ноутбука, ни к излишнему нагреву CPU. Смысл изменения: расширить рамки динамического регулирования частоты CPU и GPU. Изменения по‑прежнему будут происходить по запросу. Здесь [5] есть интересные детали.

В контексте KDE Plasma 5 указанный фикс делает анимации оконного менеджера Kwin мягкими и шелковистыми. Да, это похоже на костыль, но он работает. Если вам и этого мало, попробуйте отключить в эффектах Размытие, это поможет точно [6].

Наконец, нашёлся ещё один, довольно неожиданный способ победить «необъяснимые тормоза» эффектов рабочего стола Plasma. Внезапно, иногда kwin не может правильно определить частоту обновления кадров вашего монитора и требует ручной настройки. Попробуйте в файл ~/.config/kwinrc в разделе [Compositing] добавить такие строки:

MaxFPS=60
RefreshRate=60

Вместо 60 может быть и другая цифирь (75, 144 etc), в зависимости от параметров экрана. Эффект наступит после перезапуска оконного менеджера.

Спасибо, что дочитали. Надеюсь, что мои советы помогут кому‑нибудь.

Автор: Александр Толстой

Источник [7]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/intel/383197

Ссылки в тексте:

[1] динамической тройной буферизации кадров: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441

[2] отдельный Copr‑репозиторий: https://copr.fedorainfracloud.org/coprs/calcastor/gnome-patched/

[3] применён: https://www.phoronix.com/news/Ubuntu-22.04-GNOME-TB

[4] Waydroid: https://waydro.id/

[5] Здесь: https://unix.stackexchange.com/questions/439340/what-are-the-implications-of-setting-the-cpu-governor-to-performance

[6] точно: https://www.reddit.com/r/kde/comments/hp0fnq/kde_blur_tanking_performance_on_intel_gpuam_i/

[7] Источник: https://habr.com/ru/post/720010/?utm_source=habrahabr&utm_medium=rss&utm_campaign=720010