Intel представила новый шейдерный компилятор Jay и вскоре интегрировала его в ветку Mesa 26.1-devel. Разработка уже доступна в кодовой базе, однако компания подчёркивает: решение пока не предназначено для конечных пользователей.
Jay — это SSA-based компилятор с современным подходом к NIR backend, сопоставимым с ACO, NAK и AGX. Он использует Colombet register allocator и строится с учётом актуальных принципов разработки компиляторов. Важный момент — разработка ведётся сразу внутри основного репозитория Mesa (in-tree), без вынесения в отдельные экспериментальные ветки.
В долгосрочной перспективе Intel рассматривает Jay как замену текущего BRW-компилятора в Linux-графическом стеке. На раннем этапе основной фокус был на GPU поколения Xe2, однако стратегически речь идёт о поддержке Skylake Gen9 и более новых архитектур.
Первые тесты показывают заметное преимущество нового решения. В CTS-тесте math_bruteforce sin компилятор Jay сгенерировал 6 768 инструкций и выполнил задачу за 7,00 секунды. Для сравнения, BRW потребовал 12 980 инструкций и 19,91 секунды — почти вдвое больше кода и почти втрое больше времени выполнения.
Также сообщается, что Jay уже проходит conformance-тесты для OpenGL ES 3.0 и OpenCL 3.0. Поддержка Vulkan пока находится в разработке.
Несмотря на ранние успехи, текущий merge в Mesa 26.1-devel носит скорее стратегический характер. Он упрощает дальнейшую разработку, тестирование и постепенную интеграцию компилятора в экосистему, но не означает скорого появления в пользовательских сборках.
Таким образом, Jay — это не немедленный апгрейд производительности, а долгосрочная ставка Intel на модернизацию графического стека Linux.
Источник: igor´sLAB




