Intel (i915)

Intel (i915)


1) Добавляем в файл

/etc/environment

следующие переменные:
MESA_GL_VERSION_OVERRIDE=4.5
MESA_GLSL_VERSION_OVERRIDE=450
__GL_THREADED_OPTIMIZATIONS=1
__GL_MaxFramesAllowed=3
__GL_YIELD="NOTHING"
COGL_ATLAS_DEFAULT_BLIT_MODE=framebuffer
#export i915
#export i915_enable_rc6=7
#export i915_enable_fbc=1
#export lvds_downclock=1
#export vblank_mode=0


__GL_THREADED_OPTIMIZATIONS=1 (По умолчанию выключено) - Активируем многопоточную обработку OpenGL. Используете выборочно для нативных игр/приложений, ибо иногда может наоборот вызывать регрессию производительности. Некоторые игры и вовсе могут не запускаться с данной переменной (К примеру, некоторые нативно-запускаемые части Metro).

__GL_MaxFramesAllowed=1 (По умолчанию - 2) - Задает тип буферизации кадров драйвером. Можете указать значение “3” (Тройная буферизация) для большего количества FPS и улучшения производительности в приложениях/играх с VSync. Мы рекомендуем задавать вовсе “1” (т.е. не использовать буферизацию, подавать кадры так как они есть). Это может заметно уменьшить значение FPS в играх, но взамен вы получите лучшие задержки отрисовки и реальный физический отклик, т.к. кадр будет отображаться вам сразу на экран без лишних этапов его обработки.

__GL_YIELD="USLEEP" (По умолчанию без значения) - Довольно специфичный параметр, “USLEEP” - снижает нагрузку на CPU и некоторым образом помогает в борьбе с тирингом, а “NOTHING” дает больше FPS при этом увеличивая нагрузку на процессор.

COGL_ATLAS_DEFAULT_BLIT_MODE=framebuffer - активирует фрембуфер.

export i915_enable_rc6=7 - отвечает за алгоритм сжатия буфера кадров что увеличивает немного отзывчивость системы и FPS, однако не всегда работает корректно и может приводить к к тому что оболочка запускается в черный экран, кроме того влияет на запись экрана которая может быть некорректно записана поэтому в зависимости от того как ведет себя система можно включить данную опцию.

export vblank_mode=0 - отключает вертикальную синхронизацию по всей системе и для любого приложения, эта опция иногда выручает при проблемах с записью экрана и повышает фпс и отзывчивость всей системы, использовать вместе с параметром сжатия буфера кадров можно и ничего не сломается, но эффект лучше не будет, каждая опция выполняет свою конкретную работу и будут мешать друг другу, отключение вертикальной синхронизации не будет нормально работать, поэтому рекомендую использовать что то одно.

Все остальные параметры связаны с включением стандартных опций драйвера i915 который работает для видеокарт intel по умолчанию


2) Пересобираем initrd:
dracut -f


Правим конфиг X11

/etc/X11/xorg.conf.d/20-intel.conf

:
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "AccelMethod" "glamor"
Option "TearFree" "true"
Option "DRI" "3"
EndSection


AccelMethod - метод ускорения в xf86-video-intel, может принимать значения sna/uxa/glamour.

TearFree - помогает исправить рывки видео (не работает с опцией SwapbuffersWait выставленной в значение false, может вызывать проблемы в некоторых приложениях/играх, не работает с SNA (см. предыдущий пункт)).

DRI - драйвер 3D ускорения, можно выставить API/ABI, актуальная на данный момент 3.


3) Правим/создаём конфиг драйвера DRI ~/.drirc:
<device screen="0" driver="dri2">
<application name="Default">
<option name="vblank_mode" value="0"/>
</application>
</device>


Отключает вертикальную синхронизацию.

После перезагрузки система должна работать плавнее (проверено на KDE Plasma 5.23.5).

Содержание