Os controladores Mesa 19.3.0 chegam com mais extensões, maior suporte e muito mais

Mesa dos motoristas

Controladores mesa são software Linux de código aberto disponível para hardware AMD, NVIDIA e Intel. O projeto da Mesa começou como uma implementação de código aberto da especificação OpenGL (um sistema para renderizar gráficos 3D interativos).

Através dos anos, o projeto cresceu para implementar mais APIs gráficas, incluindo OpenGL ES (versões 1, 2, 3), OpenCL, OpenMAX, VDPAU, VA API, XvMC e Vulkan. Uma variedade de controladores de dispositivos permite que as bibliotecas Mesa sejam usadas em muitos ambientes diferentes, da emulação de software à aceleração completa de hardware para GPUs modernas.

Mesa implementa uma camada de tradução independente do fornecedor entre uma API gráfica, como OpenGL, e os drivers gráficos no kernel do sistema operacional.

O que há de novo no Mesa 19.3.0?

O lançamento da Tabela 19.3.0 foi anunciado recentemente, sendo Esta é a primeira versão do ramo Mesa que tem um estado experimental, que depois de a estabilização final do código, uma versão estável será lançada no Mesa 19.3.1.

A Tabela 19.3.0 fornece Suporte total a OpenGL 4.6 para GPUs Intel (i965, drivers de íris), suporte a OpenGL 4.5 para GPUs AMD (r600, radeonsi) e NVIDIA (nvc0), bem como Suporte Vulkan 1.1 para placas Intel e AMD.

Pára RADV (Driver Vulkan para chips AMD) um novo backend para compilar shaders »ACO», que está desenvolvendo o Valve como uma alternativa ao compilador de sombreador LLVM. O objetivo do back-end é garantir que o código seja renderizado da melhor maneira possível para os shaders de aplicativos de jogo e atingir uma velocidade de compilação muito alta.

ACO é escrito em C ++ e está sendo desenvolvido com o objetivo de poder ser usado para compilação JIT e usa estruturas de dados rápidas para iterar, evitando estruturas baseadas em ponteiros.

A renderização de código intermediário é totalmente baseada em SSA (Static Single Assignment) e permite a atribuição de registro, pré-computando precisamente o registro dependendo do shader ACO pode ser ativado para as GPUs Vega 8, Vega 9, Vega 10, Vega 20 e Navi 10 definir a variável de ambiente "RADV_PERFTEST = aco";

O driver Zink Gallium3D está incluído na base de código, que implementa a API OpenGL no topo do Vulkan. O Zink permite que você obtenha OpenGL acelerado por hardware se houver drivers no sistema limitados a oferecer suporte apenas à API Vulkan.

O driver ANV Vulkan e o driver OpenGL iris fornecem suporte inicial para a 12ª geração de chips Intel (Tiger Lake, gen12). No kernel do Linux, os componentes de suporte do Tiger Lake foram incluídos desde a versão 5.4;

Os controladores i965 e íris eles forneceram suporte para a apresentação intermediária de os shaders SPIR-V, o que tornou possível obter suporte total ao OpenGL 4.6 nesses drivers.

Foi adicionado Suporte de GPU AMD Navi 14 para driver RadeonSI e as ferramentas de aceleração de decodificação de vídeo foram aprimoradas, por exemplo, o suporte para decodificação de vídeo 8K nos formatos H.265 e VP9 foi adicionado;

La suporte ao modo de compilação protegido foi adicionado ao controlador Vulkan by RADV, em que as sequências que são executadas para compilar sombreadores são isoladas usando o mecanismo seccomp.

Drivers para chips AMD usam a interface do programa para redefinir a GPU que apareceu no módulo de núcleo AMDGPU.

Tem funcionado para melhorar o desempenho em sistemas com APUs AMD Radeon. Também melhorou o desempenho do driver Gallium3D Iris para GPUs Intel;

Do novo Extensões OpenGL adicionados que estão destacados no anúncio, podemos encontrar:

  • GL_ARB_gl_spirv para i965
  • GL_ARB_spirv _for i965
  • GL_EXT_demote_to_helper_invocation para i965

Extensões Vulkan RADV para placas AMD:

  • VK_ANDROID_external_memory_android_hardware_buffer
  • VK_EXT_shader_demote_to_helper_invocation
  • VK_KHR_shader_clock
  • VK_KHR_shader_float_controls
  • VK_KHR_spirv_1_4
  • VK_KHR_timeline_semaphore
  • VK_EXT_texel_buffer_alignment

Extensões ANV Vulkan para placas Intel:

  • VK_INTEL_performance_query
  • VK_KHR_vulkan_memory_model
  • VK_EXT_shader_subgroup_ballot
  • VK_EXT_shader_subgroup_vote
  • VK_KHR_spirv_1_4
  • VK_KHR_shader_clock
  • VK_KHR_shader_float_controls

Além disso, podemos ver a publicação pela AMD da documentação da arquitetura do equipamento APU "Vega" 7nm baseado na microarquitetura GCN (Graphics Core Next).

Por fim, aguarde que esta nova versão dos drivers Mesa comece a ser distribuída nas principais distribuições Linux nos próximos dias.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Anthony dito

    Olá. Eu li em muitos lugares sobre como definir a variável de sistema RADV_PERFTEST = aco, mas ninguém explica como isso é feito ... seria um detalhe se alguém comentasse sobre como ativar ou configurar essa variável. Obrigado

    1.    David Orange dito

      ACO é um compilador para shaders que em teoria está "habilitado por padrão" (ou seja, nada precisa ser feito), você só precisa ter a última versão dos drivers Mesa ou no caso do Steam você pode forçar o uso dos compilador adicionando ao inicializador do jogo a opção `RADV_PERFTEST = aco% command%`

      Ou para ativar a opção em todo o sistema, basta adicionar a variável de ambiente RADV_PERFTEST = aco ao arquivo ~ / .profile.

      Você apenas tem que levar em consideração que nem todas as GPUs são compatíveis e, portanto, você simplesmente não pode iniciar este compilador.

      Na web há mais informações sobre como configurar a variável em cada distribuição Linux ou sobre alguns aplicativos como Steam, Lutris, etc.

      Saudações!