LINUX.ORG.RU

Обход регресии для MESA R600 NIR->TGSI

 , nir, tgsi,


3

1

Имея у себя в системе версию MESA близкую к 22.2.4, вы можете получить в некоторых приложениях графические артефакты или полную неработоспособность графики, при этом всё иное будет функционировать нормально.

Одной из причин может быть регрессия бекенда TGSI. Если в более ранних версиях MESA шейдеры OpenGL транслировались напрямую — GLSL->TGSI, то сейчас это происходит как GLSL->NIR->TGSI, что может привести к сломанной графике в приложениях. Начиная с версии MESA 23.3 TGSI будет полностью удалён и останется только NIR, проблема ретрансляции GLSL должна будет исчезнуть, а вместе с ней и проблемы с графикой.

Тем не менее, в случае возникновения внезапных артефактов или подобного и в случае появления в сообщениях программы, запущенной через терминал, чего-то вроде

EE ../src/gallium/drivers/r600/r600_state_common.c:961 r600_shader_select - Failed to build shader variant (type=1) -1

прежде чем искать ошибку в оборудовании или конечной программе, попробуйте использовать переменную окружения export R600_DEBUG=nir с заданным бекендом NIR по умолчанию.

И противоположная ситуация: в случае проблем с NIR, а они имеют место быть, попробуйте использовать бекенд TGSI, пока это представляется возможным, через export R600_DEBUG=use_tgsi.

Подробности в багтрекере MESA:
https://gitlab.freedesktop.org/mesa/mesa/-/issues/7780

★★★★★

Проверено: hobbit ()

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

LINUX-ORG-RU ★★★★★ ()

О, спасибо, буду знать что такое может вылезти. У меня как раз R600 на одном ноуте.

kirill_rrr ★★★★★ ()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.