Sortie de Mesa 21.1, une implémentation gratuite d'OpenGL et de Vulkan

La version de l'implémentation gratuite de l'API OpenGL et Vulkan - Mesa 21.1.0 - a été présentée. La première version de la branche Mesa 21.1.0 a un statut expérimental - après la stabilisation finale du code, une version stable 21.1.1 sera publiée. Mesa 21.1 inclut la prise en charge complète d'OpenGL 4.6 pour les pilotes 965, iris (Intel), radeonsi (AMD), zink et llvmpipe. La prise en charge d'OpenGL 4.5 est disponible pour les GPU AMD (r600) et NVIDIA (nvc0), ainsi que la prise en charge d'OpenGL 4.3 pour virgl (GPU virtuel Virgil3D pour QEMU/KVM). La prise en charge de Vulkan 1.2 est implémentée pour les cartes Intel et AMD, Vulkan 1.1 pour les GPU Qualcomm et le rastériseur logiciel lavapipe, et Vulkan 1.0 pour les GPU Broadcom VideoCore VI (Raspberry Pi 4).

Principales nouveautés :

  • La prise en charge des extensions VK_KHR_workgroup_memory_explicit_layout et VK_KHR_zero_initialize_workgroup_memory a été ajoutée aux pilotes Vulkan RADV (AMD) et ANV (Intel).
  • La prise en charge des modificateurs de format DRM a été ajoutée au pilote RADV (pour les cartes AMD GFX9) (l'extension VK_EXT_image_drm_format_modifier est activée).
  • Le pilote RADV inclut la prise en charge VRS (Variable Rate Shading) pour une utilisation avec n'importe quel tampon de profondeur. VRS améliore la productivité au détriment de la qualité.
  • Ajout de la prise en charge du GPU AMD Aldebaran (gfx90a).
  • Ajout d'un nouveau pilote Venus avec une implémentation de GPU virtuel (virtio-gpu) basée sur l'API Vulkan.
  • Le pilote Zink (une implémentation de l'API OpenGL au-dessus de Vulkan) inclut la prise en charge d'OpenGL 4.6 et d'OpenGL ES 3.1. Zink vous permet d'obtenir OpenGL à accélération matérielle si le système dispose de pilotes limités à la prise en charge uniquement de l'API Vulkan. Les performances de Zink sont proches de celles des implémentations natives d'OpenGL.
  • Le pilote lavapipe avec l'implémentation d'un rastériseur logiciel pour l'API Vulkan (analogue à llvmpipe, mais pour Vulkan) a ajouté la prise en charge de Vulkan 1.1 et a implémenté l'extension Vulkan VK_KHR_copy_commands2. L'implémentation logicielle dans lavapipe est basée sur la mise en miroir des appels de l'API Vulkan vers l'API Gallium.
  • Ajout de la prise en charge du stockage des caches de shaders dans un seul fichier.
  • Les pilotes Virgl (Virtual GPU Virgil3D pour QEMU/KVM) et Lima (ARM Mali GPU) prennent en charge la mise en cache des shaders sur le disque.
  • Le pilote Gallium D3D12 avec une couche pour organiser le travail OpenGL au-dessus de l'API DirectX 12 (D3D12) garantit la compatibilité avec OpenGL 3.3 lorsque vous travaillez au-dessus des pilotes D3D12 WARP (logiciel rastériseur) et NVIDIA. Le pilote est utilisé dans la couche WSL2 pour exécuter des applications graphiques Linux sous Windows.
  • Ajout de nouvelles extensions OpenGL :
    • GL_EXT_degree_bounds_test pour les pilotes softpipe et zink
    • GL_EXT_texture_filter_minmax pour le pilote nvc0 (gm200+)
    • GL_ARB_texture_filter_minmax pour le pilote nvc0 (gm200+)
    • GL_ARB_post_degree_coverage pour le pilote zink.

Source: opennet.ru

Ajouter un commentaire