Novo recurso do Mesa permitirá que GPUs antigas tenham suporte para o OpenGL 4.0


Se você possui uma placa de vídeo mais antiga e gostaria de poder rodar mais jogos nativos do Linux no seu PC, temos uma boa notícia para você: com o próximo Mesa 19.0, será possível obter suporte ao OpenGL 4.0 (e no futuro quem sabe o OpenGL 4.5). Isso é possível graças a implementações baseadas em software das extensões ARB_gpu_shader_int64 e ARB_gpu_shader_fp64 para GPUs que não possuem suporte para FP64 no hardware.

Tudo começou em meados de 2016, quando Elie Tournier iniciou um novo projeto durante o evento Google Summer of Code (GSoC) para implementar o suporte ao "soft" FP64 usando o GLSL para ajudar GPUs mais antigas que de outra forma não poderiam expor o OpenGL 4.0 por não suportar a extensão do OpenGL ARB_gpu_shader_fp64. O desenvolvedor, desde então, passou a trabalhar para a Collabora, mas ter todo esse trabalho pronto levou algum tempo.

Desde o início do projeto durante o GSoC 2016, tem havido um trabalho lento das equipes de drivers da Intel e AMD para implementar o suporte ao recurso e seus vários patches, enquanto que finalmente a novidade foi mesclada a tempo para a fase "feature freeze" do Mesa 19.0 da próxima semana, que é quando novos recursos não são mais implementados, mas apenas correções de bugs.

A implementação contém todo o código GLSL de Elie Tournier, além de várias alterações NIR para diminuir esses tipos de dados de 64 bits. Completando o trabalho, estão os ajustes necessários do back-end do compilador da Intel, seguidos da habilitação das rotinas de software do FP64 e finalmente habilitando as extensões FP64 e INT64 do OpenGL, que agora incondicionalmente funcionarão em qualquer lugar, independentemente do suporte real do hardware.

Do lado da Intel, este trabalho é benéfico para as CPUs Sandy Bridge (e mais antigas), enquanto que os modelos Ivy Bridge receberam suporte para o OpenGL 4.2 em 2017 e, obviamente, as gerações mais novas estão de acordo com as especificações mais recentes do OpenGL. É claro que a maioria dos jogos para Linux não precisam do FP64, mas é um requisito para o OpenGL 4.0.


Até o momento, infelizmente, as alterações no lado do driver Radeon "R600g" ainda não chegaram para expor este suporte FP64/INT64, mas vamos ver se isso ainda acontece a tempo para a pilha gráfica Mesa 19.0.

Este trabalho é particularmente benéfico no lado da AMD para GPUs discretas como a série Radeon HD 6800 e outras que possuem um bom potencial de desempenho para jogos mais antigos, mas ainda expõem apenas o OpenGL 3.3 devido à falta do FP64. Atualmente, apenas as séries Radeon HD 6900 e HD 5800 contam com suporte para o OpenGL 4.0.


FONTE: Phoronix
Tags :
Comentários