Em janeiro, escrevi como a Valve está trabalhando no sombreamento dinâmico de taxa variável (VRS) para o driver Mesa Radeon Vulkan”RADV”para controlar dinamicamente o desempenho do sombreamento para ajudar na vida útil da bateria. Esse trabalho agora foi mesclado com sucesso no Mesa 22.1 para a pilha de gráficos AMD Radeon Linux de código aberto.

Como explicado naquele artigo anterior, chamando a atenção para o comportamento dinâmico do VRS então proposto, o Vulkan tem a extensão VK_KHR_fragment_shading_rate para poder controlar a taxa de sombreamento dependendo da região do quadro que está sendo sombreada. O sombreamento em uma resolução mais baixa para áreas menos importantes da tela pode ajudar no aumento do desempenho e na economia de energia. Um dos exemplos frequentemente citados em torno do sombreamento de taxa variável é muitas vezes para a paisagem dentro dos jogos de corrida.

O driver RADV já deu suporte à extensão Vulkan VRS e permitiu que ela fosse substituída estaticamente usando uma variável de ambiente se desejasse trocar qualidade de renderização inferior por menor consumo de energia/térmicas. O que o engenheiro da Valve Samuel Pitoiset descobriu foi a capacidade de controlar dinamicamente o comportamento do VRS usando um arquivo de controle. Quando esta opção de arquivo de configuração estiver em uso com o Mesa (RADV_FORCE_VRS_CONFIG_FILE), a taxa de sombreamento desejada pode ser gravada nesse arquivo e será aplicada imediatamente mesmo para jogos em execução sem precisar reiniciar o jogo, etc.

Isso O manuseio dinâmico de VRS para RADV está sob revisão pública desde janeiro, enquanto hoje foi incorporado ao Mesa 22.1-devel. Isso faz parte do lançamento estável do Mesa3D do próximo trimestre, que será lançado aproximadamente em maio-junho. Não chegou a tempo para o Mesa 22.0, que já está ramificado e será lançado no próximo mês. O suporte ao sombreamento de taxa variável Vulkan está presente apenas para gráficos AMD RDNA2.

Agora com este código no Mesa, a Valve presumivelmente integrará o manuseio no SteamOS 3.0 para que RADV_FORCE_VRS_CONFIG_FILE seja controlado automaticamente. No compositor do Gamescope ou em outro daemon do sistema que possa fazer com que, se executado com bateria ou um determinado limite térmico/de energia seja excedido, eles possam alterar a taxa de sombreamento nos jogos em execução para reduzir o consumo de energia-tudo feito dinamicamente sem qualquer reinício do jogo sendo necessário. Pode haver outros casos de uso interessantes também avançando para esse VRS dinâmico para o RADV da Mesa.

Este é outro ótimo exemplo de como a Valve é capaz de melhorar a pilha de drivers gráficos Radeon graças ao fato de ser de código aberto e não apenas beneficiar seus próprios propósitos (Steam Deck/SteamOS), mas também pode ser feito por outros Jogadores de Linux. Essa alteração não afeta a pilha de driver oficial da AMD ou o Windows, mas é uma alteração feita apenas no código do driver Mesa RADV.

Categories: IT Info