Lançamento do Mesa 19.3.0, uma implementação gratuita de OpenGL e Vulkan
Introduzido lançamento de uma implementação gratuita da API OpenGL e Vulkan - Mesa 19.3.0. O primeiro lançamento do branch Mesa 19.3.0 tem status experimental - após a estabilização final do código, uma versão estável 19.3.1 será lançada. Na Mesa 19.3 implementado Suporte completo a OpenGL 4.6 para GPUs Intel (i965, drivers iris), suporte OpenGL 4.5 para GPUs AMD (r600, radeonsi) e NVIDIA (nvc0) e suporte Vulkan 1.1 para placas Intel e AMD. Mudanças de ontem para suportar OpenGL 4.6 também adicionado no driver radeonsi, mas não foram incluídos no branch Mesa 19.3.
Um novo backend para compilar shaders foi proposto para RADV (driver Vulkan para chips AMD) "ACO“, que está sendo desenvolvido pela Valve como uma alternativa ao compilador de shader LLVM. O back-end visa garantir a geração de código o mais ideal possível para shaders de aplicativos de jogos, além de atingir uma velocidade de compilação muito alta. ACO é escrito em C++, projetado com compilação JIT em mente e usa estruturas de dados iterativas rápidas, evitando estruturas baseadas em ponteiros. A representação intermediária do código é inteiramente baseada em SSA (Static Single Assignment) e permite a alocação de registros pré-calculando com precisão o registro dependendo do shader. O ACO pode ser ativado para GPUs Vega 8, Vega 9, Vega 10 e Navi 10 definindo a variável de ambiente “RADV_PERFTEST=aco”;
Driver Gallium3D incluído na base de código Zink, que implementa a API OpenGL no Vulkan. Zink permite que você obtenha OpenGL acelerado por hardware se o sistema tiver drivers limitados a suportar apenas a API Vulkan;
O driver ANV Vulkan e o driver iris OpenGL fornecem suporte inicial para a 12ª geração de chips Intel (Tiger Lake, gen12). No kernel Linux, componentes para suportar Tiger Lake foram incluídos desde a versão 5.4;
Os drivers i965 e iris fornecem suporte para representação intermediária de shaders SPIR-V, o que possibilitou obter suporte total nesses drivers OpenGL 4.6;
O driver RadeonSI adiciona suporte para GPUs AMD Navi 14 e melhora a aceleração de decodificação de vídeo, por exemplo, adicionando suporte para decodificação de vídeo 8K nos formatos H.265 e VP9;
Adicionado suporte para o driver RADV Vulkan compilação protegida, em que os threads lançados para compilar shaders são isolados usando o mecanismo seccomp. O modo é habilitado usando a variável de ambiente RADV_SECURE_COMPILE_THREADS;
Drivers para chips AMD usam o AMDGPU que apareceu no módulo do kernel interface de software para redefinir a GPU;
Trabalho foi feito para melhorar o desempenho em sistemas com APUs AMD Radeon. O desempenho do driver Gallium3D Iris para GPUs Intel também foi melhorado;
No driver Gallium3D LLVMpipe, que fornece renderização de software, apareceu suporte para shaders computacionais;
Sistema de cache de shader em disco otimizado para sistemas com mais de 4 núcleos de CPU;
Habilitou o sistema de compilação Meson para compilar no Windows usando MSVC e MinGW. O uso de scons para compilar foi descontinuado em sistemas não Windows;
Além disso, pode-se notar publicação da AMD documentação de acordo com a arquitetura de comando do APU “Vega” de 7nm baseado na microarquitetura GCN (Graphics Core Next).