Lanzamento de Mesa 20.1.0, unha implementación gratuíta de OpenGL e Vulkan

Presentado lanzamento dunha implementación gratuíta da API OpenGL e Vulkan - Mesa 20.1.0. A primeira versión da rama Mesa 20.1.0 ten un estado experimental: despois da estabilización final do código, lanzarase unha versión estable 20.1.1. En Mesa 20.1 implementado soporte completo de OpenGL 4.6 para GPU Intel (i965, iris) e AMD (radeonsi), soporte OpenGL 4.5 para GPU AMD (r600) e NVIDIA (nvc0), OpenGL 4.3 para virgl (GPU virtual) Virxilio 3D para QEMU/KVM), así como compatibilidade con Vulkan 1.2 para tarxetas Intel e AMD.

entre cambios:

  • Engadido Unha capa activa de selección de dispositivos para a API de Vulkan en sistemas con varias GPU habilitadas para Vulkan, que funciona de forma similar a DRI_PRIME para OpenGL. Para seleccionar o controlador activo e a GPU, ofrécese a variable de ambiente MESA_VK_DEVICE_SELECT (se non está instalada, úsase DRI_PRIME).
  • O soporte para chips que se espera o próximo ano baseado na nova microarquitectura engadiuse aos controladores i965 e iris para as GPU Intel Lago foguete.
  • O controlador ANV Vulkan que se está a desenvolver para as GPU Intel engadido optimización para chips baseada na microarquitectura Icelake (Gen11), permitindo o uso de cores puras ao texturizar. Cando se probou en Dota2, o cambio reduciu o número de operacións de conversión de cores nun 95 % e aumentou o rendemento nun 3.5 %.
  • No controlador Vulkan ANV aumentou eficiencia do uso da caché en sistemas con chips Intel Ivybridge e Haswell. Usando as probas da función de cálculo Vulkan de Geekbench 5 mostrou un aumento do rendemento do 330 % no hardware Haswell GT3 (un aumento debido ao feito de que anteriormente a caché non se usaba nalgunhas condicións).
  • Controladores para GPU Intel (i965, Vella) engadido Modo "buraco negro" (extensión OpenGL INTEL_blackhole_render), que desactiva todas as operacións de renderizado transmitidas pola GPU, pero mantén o procesamento das operacións OpenGL.
  • O soporte de vectorización engadido anteriormente para chips AMD portouse para chips gráficos Intel NIR, unha representación intermedia (IR) sen tipo de sombreadores destinados a traballar no nivel máis baixo, baixo GLSL IR e IR interno de Mesa. No lado práctico, debido á mellor optimización dos shaders, o cambio permitiu aumentar o rendemento de OpenGL e Vulkan en moitos xogos en sistemas con GPU Intel. Por exemplo, no xogo
    Rise of the Tomb Raider celébrase aumento do rendemento nun 3% e en Shadow of the Tomb Raider nun 10%.

  • No backend para compilar sombreadores "ACO", que está a ser desenvolvido por Valve como alternativa ao compilador de shader LLVM, engadiuse soporte para o tipo shaderInt9 para a GPU GFX16+, permitindo o uso de enteiros de 16 bits no código shader. Para
    GPU AMD Navi (GFX10) asegurado uso de motores NGG (Next-Gen Geometry) cando se traballa con sombreadores de vértice e teselación.

  • Para GPU AMD Navi 12 e Navi 14 incluído soporte para o modo DCC (Delta Color Compression), que garante traballar con datos de cor comprimidos ao organizar a saída da pantalla.
  • Engadido soporte experimental NIR para o controlador clásico Gallium3D R600 (AMD Radeon HD 2000-6000) con soporte para xeométricos, fragmentos, vértices e teselación sombreadores.
  • Controlador Vulkan RADV engadido Un parche que mellora o rendemento dos xogos Id Tech en sistemas con APU AMD optimizando a xestión da memoria.
  • No controlador Panfrost implementado soporte experimental para OpenGL ES 3.0 e asegurado Compatibilidade de renderizado 3D para GPU Bifrost (Mali G31). Preparouse unha implementación inicial dun compilador de sombreadores que admite un conxunto de instrucións internas específicas da GPU Bifrost.
  • O controlador Vulkan TURNIP, desenvolvido para as GPU Qualcomm Adreno, engadido soporte para sombreadores de xeometría e chips Adreno 650.
  • No controlador Gallium3D LLVMpipe, que proporciona renderizado de software, apareceu soporte para sombreadores de teselación.
  • Presentado большая porción optimizacións en glthread (implementación multiproceso de OpenGL). Despois de facer os cambios, o rendemento do simulador de carreiras Torcs aumentou un 16% na configuración predeterminada e un 40% cando glthread estaba habilitado.
  • Engadido opción allow_draw_out_of_order (activada mediante driconf) para habilitar optimizacións para acelerar as operacións de debuxo fóra de orde específicas de CAD. Cando esta opción está activada, obsérvase unha aceleración do 11% na proba Viewperf7 Catia.
  • Engadíronse novas extensións OpenGL:
  • Engadíronse extensións ao controlador RADV Vulkan (para tarxetas AMD):
  • Engadíronse extensións ao controlador ANV Vulkan (para tarxetas Intel):

    Fonte: opennet.ru

Engadir un comentario