LINUX.ORG.RU
решено ФорумGames

Mesa3d vulkan непонятные подгрузки в играх

 , ,


1

3

Ребята всем привет, у меня проблема с непонятной подгрузкой в играх, железки :video r9 380 , cpu fx4100 = 4.2Ггц 8gb ddr 3, стоит убунту 18.04 с открытыми драйверами mesa 19 , начнем с дота 2, первые 2-3 игры лаги потом все хорошо ииграется без проблем, на форумах нарыл что это кешируются шейдеры, хотя на винде с тем же вулканом никаких лагов не было, ну дота это ладно, проблема с dxvk, как вы понимаете тут участвует вулкан и игры через этот вулкат тоже я так понимаю кешируют что то там, но это очень выбешивает потому как лаги сумашедшие, причем где я уже бывал игра плавно идет но как только появляется что то новенькое опять лаги, и когда игру перезапустить все начинаеться с начала и опять лаг. на драйверах от amd такого не было, но там установить их это нужно чуть ли не фазы лун соблюдать гемор тот еще. что не так с mesa почему такие подгрузки непонятные, как это исправить ??

Вердикт : в vulkan, fx4100 одновременно просчитать игру и компилировать шейдеры не способен отсюда и лаги.

16.03.2019 Вердикт 2 : все решилось когда перешел на вейланд и поставил ядро с этого сайта liquorix.net ) лаги исчезли, даже тиринга нет которы ранее мучал меня ) и еще в папке с игрой был файл archeage.dxvk-cache и он почему то был только на чтение, разрешил запись .

Ответ на: комментарий от anonymous

да но ведь проблема не в затычке а в самой подгрузке в грах, я не могу понять почему так происходит, такое впечетление что игра грузится походу того как ты в нее играешь, а потом как все прогрузится фпс 50-60, но как только перезапускаю игру все начинается по старой схеме.

kep1990 ()
Ответ на: комментарий от anonymous

ок, тогда почему на проприетарных драйверах 18.50 все четко, но там нужна строго убунту 18.04.1, и никаких подгрузок ничего нету , как только перехожу на свободный драйвер так и лаги, почему ?

kep1990 ()

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

anonymous ()
Ответ на: комментарий от kep1990

Попробуй какую-нибудь mat_disable_dynamic_shader_compile там суть была в том что запускалась значительно дольше, но потом динамически не компилировала шейдеры. Отключала фризы на замесах, например.

добавь в стиме в опции запуска с +

anonymous ()
Ответ на: комментарий от kep1990

для проприетарного драйвера стим скачивает прекомпиленые шейдеры для игры что позволяет их не компилить, а для комбинации твоей карты и свободного драйвера у стима в наборе шейдеров не нашлось( они тип немного разные для каждой комбинации видяха+драйвер_версииХ)

Thero ★★★★★ ()

fx4100=4.2Ггц

fx4100=3.6Ггц это fx4170=4.2 Ггц! совершенно безумный проц - температура только в биосе адекватнно показывается, а так что винда что линукс - 6 градусов по цельсию, в нагрузках до 20 доходит! сколько твой в 7z b попугаев набирает?

amd_amd ★★ ()

Не специалист но

1. шедеры кешируются где-то в домашней директории. Следовательно тормоза должны наблюдаться только при первом запуске игры. При последующих запусках уже откомпилированные шейдеры будут сразу загружаться в видеопамять.

2. шейдеры компилируются силами CPU, как компиляция программ. Так что посмотри по монитору, если причина в компиляции шейдеров то наверное, в момент лагов, должна наблюдаться 100% загрузка одного ядра, а FX не быстрый процессор.

Aber ★★ ()
Последнее исправление: Aber (всего исправлений: 2)
Ответ на: комментарий от anonymous

6 это 60, 20 это 120?

нет 6 это в биосе 35, а под нагрузкой как я в биос попаду - по этому 20 это неизвестно сколько и ничего я не гоню - 4.2 изначальных с лихвой хватает! могу сказать точно что охлаждение которое не справлялось на fx8350 - на fx4170 хватает с запасом и вентилятор не воет!

amd_amd ★★ ()

Опаньки, у меня в точности такая же проблема, но встречал только в играх под wine - quake championship и метро exodus. Если побегаю по карте или перезапущу игру, лаги пропадают, при первой попытке поиграть фпс падает до 0-3 кадров.Драйвер использую amdpgu, характеристики пк:
16 DDR4 RAM
Video: AMD RX580
CPU: Ryzen 7 2700x
Разве проприетарный драйвер amd не только для поддержки opencl?

Landgraf ★★★★ ()
Ответ на: комментарий от Landgraf

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

kep1990 ()

Чтобы не было лагов, надо использовать современное железо и NVMe SSD. Как ты думаешь, для чего оно придумано и что для тебя значит такое понятие как технический прогресс?

iZEN ★★★★★ ()
Ответ на: комментарий от kep1990

Вроде дисковый кеш шейдеров должен быть в ~/.cache/mesa, почитай что-то про него, опции, может кеширование не работает. Просто если действительно все так медленно, то выходит на мощном CPU тоже такие лаги будут, пускай в 2х или 4х раза быстрее проходить, но это будет заметно.

Aber ★★ ()
Последнее исправление: Aber (всего исправлений: 2)
Ответ на: комментарий от Landgraf

Опаньки, у меня в точности такая же проблема, но встречал только в играх под wine - quake championship и метро exodus. Если побегаю по карте или перезапущу игру, лаги пропадают, при первой попытке поиграть фпс падает до 0-3 кадров.Драйвер использую amdpgu

У меня i7 3770/1050Ti, проблемы нет, фпс 40, но и до 3 не дропается.

Video: AMD RX580
CPU: Ryzen 7 2700x

Эй-Эм-Ди

Deleted ()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Landgraf

32Gb DDR4 RAM AMD RX580 8Gb Ryzen 7 2700x

под протоном могу вспомнить разве что Prey где сразу после старта надо головой покрутить на 360 градусов (при этом там что то подгружается или компилируется) а потом всю игру уже без таких эффектов идет.

anonymous ()

Господи та же фигня, я не могу в Hitman 2 из за этих лагов играть, просто бешеные фризы.

А дота2 кстати начинает считать шейдеры после каждой обновы mesa, странно всё это и хз как сказать игре чтоб сначала всё посчитала у себя заранее.

eR ★★★★★ ()

У меня есть идея для тех кто испытывает проблемы с лагами, Вам нужно попытаться форсировать компиляцию шейдеров в одни поток. Конечно время старта приложения сильно замедлится, особенно первый запуск, когда нет кеша шедеров, но во время игры загружаемые шедеры могут компилироваться в фоном не мешая исполняться игре. Предположительно команда такая:

RADV_DEBUG=nothreadllvm

anonymous ()
Ответ на: комментарий от eR

Нет разумеется, т.к. каждое приложение само распоряжается когда и что загружать. Драйвер лишь выполняет поступающие команды. Я думаю в нормальных драйверах потокам отвечающим за компиляцию установлен низкий приоритет.

anonymous ()
Ответ на: комментарий от eR

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

anonymous ()