Introduzida há um mês no Vulkan 1.3.246 foi a nova extensão VK_EXT_shader_object que foi trabalhada por desenvolvedores da Activision à Valve. O desenvolvedor principal do Zink, Mike Blumenkrantz, da Valve, esteve ocupado nas últimas semanas para obter esse suporte de objeto shader conectado para uso por este driver OpenGL-on-Vulkan.

VK_EXT_shader_object adiciona um novo tipo de objeto shader para representar um único estágio de shader compilado. Os objetos sombreadores Vulkan destinam-se a ser uma alternativa mais flexível, mas com desempenho comparável aos objetos de pipeline.

No início desta semana, Blumenkrantz conseguiu a parte um de seu código para fazer uso de objetos shader no Zink. Com esse código de mesclagem, ele observou:

“isso reimplementa e usa EXT_shader_object para shaders separados

…mas apenas em Tomb Raider (2013), pois os loops de feedback são interrompidos

…e também o proprietário da nvidia travará ao tentar isso, pois eles têm muitos bugs

então realmente isso implementa algo que ninguém pode usar, mas se eles o usassem em uma implementação de referência de EXT_shader_object que realmente funcionasse (ou seja, lavapipe), então funcionaria bem.”

A fusão da noite para o dia foi a parte dois do EXT-shader_object do Zink implementação:

“isso permite o uso de EXT_shader_object para todas as pré-compilações de shader separadas

idealmente, uma vez que os drivers se atualizam, isso significa que deve ser possível (finalmente) jogar Tomb Raider (2013) sem nenhum problema.”

Finalmente chegar ao Mesa 23.2-devel hoje também é a parte final three:

“esta é a última parte, permitindo que os objetos shader sejam usados ​​para toda a pré-compilação quando possível/disponível

isso deve corresponder à funcionalidade da GPL, mas ele também deveria (teoricamente) ter significativamente menos sobrecarga de CPU, então habilitei este como o novo padrão quando disponível

atualmente não estou alterando nenhum dos requisitos para habilitação do objeto sombreador, então provavelmente só pode ser usado em desktops”

Por sua vez, isso deve ajudar a fornecer uma experiência de jogo suave para títulos OpenGL como Tomb Raider rodando em Zink.

Está na minha lista TODO para executar alguns novos benchmarks Zink em breve, pelo menos para Intel Arc Graphics e hardware AMD Radeon com seus drivers Linux de código aberto.

Categories: IT Info