Драйвер Panfrost Gallium3D подключает поддержку дискового кэша шейдера Mesa

Одной из последних функций, появившихся в Mesa 22.3 перед вчерашним ответвлением и выпуском Mesa 22.3-rc1, является включение дискового кэша шейдеров Mesa для Panfrost, драйвера Arm Mali с открытым исходным кодом для поколений Midgard и Bifrost.

Panfrost Gallium3D внесла необходимые изменения в Mesa 22.3, чтобы включить общий дисковый кэш шейдеров Mesa. В свою очередь, это должно помочь Panfrost ускорить загрузку игры, избегая повторной компиляции шейдеров при последующих загрузках игры, повышая производительность для любых игр, компилирующих шейдеры на лету, и т. д. Это тот же кэш Mesa на диске, который используется другими драйверами, только биты интеграции были необходимы для поддержки Panfrost.

Алисса Розенцвейг из Collabora разработала поддержку дискового кэша шейдеров. Она подытожила это так:
Подключите дисковый кеш шейдера Mesa к Panfrost. В сочетании с предварительными компиляциями из предыдущего патча это должно значительно сократить количество перекомпиляции шейдеров.

Это голая реализация костей. Очевидная будущая работа включает в себя:

— Кэширование внутренних (вне Gallium) шейдеров
— Реализовать finalize_nir для уменьшения размера шейдеров на диске.

Частью этого слияния также является возможность предварительной компиляции шейдеров во время создания CSO, чтобы попытаться избежать «дергания во время отрисовки». Предварительную компиляцию шейдера можно включить с помощью новой опции отладки «прекомпиляция».
Поделиться:

Похожие публикации

Тут ничего нет

Нет комментариев