В былые времена я ломал голову над тем, как заставить работать vsync по всей системе (kwin, видео), теперь появилась обратная проблема.
Небольшое отступление:
Поставил на старый ноут left 4 dead 2 (C2D 2.2, 3Gb RAM, HD3650+fglrx, kubuntu 12.04). ФПС меня, мягко говоря, не порадовал (~30), и было решено обновиться до 14.04 и перейти на открытый драйвер radeon, который в последнее время так хвалят (к тому же часто упоминается, что именно l4d2 на нем бегает даже лучше, чем на каталисте).
Каково же было мое разочарование, когда в обновленной системе, в которой я еще и поставил ядро 3.16 и месу из гита, фпс стало ~20 с просадками до 15 в тяжелых сценах... Естественно, речь идет о минимальных настройках игры, нативном разрешении 1280х800.
Пробовал снизить разрешение - прибавилось около 10 кадров в секунду. Включение опции R600_DEBUG=hyperz не привело к заметным изменениям.
Я понимаю, что железо слабое, но, помнится, на минималках было играбельно в оффтопике давным-давно, да и каталист в кубунте получше будет, но возвращаться не хочу.
А теперь вернемся к vsync'у. Если не получится поднять производительность, то нужно хотя бы отключить vsync. В данной игре работает какой-то адаптивный vsync, подозреваю, что тройная буферизация, фпс держится на 60(если смотреть в стену), 30, 20, 15 и тд. Тиринга и правда нет, но лаг мыши существенный; настройка всинка в игре ничего не меняет. Кроме того, заметил, что во всей системе нет тиринга, ни в квине, ни в видео. Опять же, настройки vsync'а kwin'а ничего не меняют, поэтому я решил, что «проблема» в драйвере или иксах. Нагуглил переменную окружения vblank_mode=0, пробовал с ней запускать glxgears - всинк пропал. Запустил с ней же steam и l4d2 - там, как раньше, синкается. Нагуглил опцию иксов
Option "SwapbuffersWait" "false"
К слову о повышении производительности: на минималках картинка слишком красивой остается, все еще работает HDR, например. Особенность линукс-порта, что-ли...