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

Après trois mois de développement, la sortie d'une implémentation gratuite de l'API OpenGL et Vulkan - Mesa 24.3.0 - a été publiée. La première version de la branche Mesa 24.3.0 a un statut expérimental - après la stabilisation finale du code, une version stable 24.3.1 sera publiée.

Mesa 24.3 prend en charge l'API graphique Vulkan 1.3 en anv pour les GPU Intel, radv pour les GPU AMD, NVK pour les GPU NVIDIA, tu pour les GPU Qualcomm, lavapipe software rasterizer (lvp), le mode émulateur (vn) et v3dv (GPU Broadcom VideoCore pour Raspberry Pi 4+). La prise en charge de Vulkan 1.0 est implémentée dans les pilotes dzn (implémentation de Vulkan au-dessus de Direct3D 12) et panvk (GPU ARM Mali).

Mesa fournit également une prise en charge complète d'OpenGL 4.6 pour iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (anciens GPU Intel Gen4-Gen7), zink, llvmpipe, virgl (GPU virtuel Virgil3D pour QEMU/KVM), pilotes freedreno ( Qualcomm Adreno), d3d12 (une couche pour organiser le travail OpenGL au-dessus de DirectX 12) et asahi (GPU AGX utilisé dans les puces Apple M1 et M2). La prise en charge d'OpenGL 4.5 est disponible pour les GPU AMD (r600) et NVIDIA (nvc0). La prise en charge d'OpenGL 3.3 est présente dans les pilotes softpipe (logiciel rastériseur) et nv50 (NVIDIA NV50).

Principales nouveautés :

  • Le pilote v3dv fournit une prise en charge complète de l'API graphique Vulkan 1.3 pour les GPU VideoCore utilisés sur les cartes Raspberry Pi 4 et Raspberry Pi 5.
  • Un nouveau pilote Vulkan gfxstream-vk a été ajouté, qui peut être utilisé pour virtualiser l'API Vulkan et accéder à cette API graphique à partir de systèmes invités basés sur Linux, Android et Fuchsia. Le pilote est utilisé par Google dans l'émulateur Android, l'émulateur Fuchsia, les services cloud Android et Android Automotive OS (AAOS).
  • La prise en charge de l'extension Vulkan VK_PRESENT_MODE_FIFO_KHR a été ajoutée à l'interface d'intégration de l'API graphique Vulkan avec les systèmes de fenêtrage (WSI, Windowing System Integration) pour une utilisation dans les environnements basés sur Wayland du protocole FIFO, ce qui permet d'utiliser la sortie en attendant la fin. de balayage vertical (vblank) au lieu d'utiliser des appels de rappel à chaque fois prêt à afficher une nouvelle image, ce qui résout le problème de charge GPU élevée lors de l'utilisation de VSync.
  • Sur les systèmes équipés de GPU Intel basés sur l'architecture Xe2, la compression du tampon de profondeur (z-buffer) est activée par défaut.
  • Le pilote iris OpenGL et le pilote ANV Vulkan ont ajouté la prise en charge initiale des GPU Intel basés sur l'architecture Xe3 trouvée dans les processeurs Panther Lake.
  • La prise en charge des extensions Vulkan a été ajoutée au pilote NVK (NVIDIA) :
    • VK_EXT_descriptor_buffer
    • VK_EXT_post_degree_coverage
    • VK_EXT_legacy_vertex_attributes
    • VK_KHR_maintenance7
    • VK_KHR_dynamic_rendering_local_read
    • VK_NV_compute_shader_derivatives
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_float_controls2
    • VK_EXT_host_image_copy (pour GPU Turing+)
    • VK_KHR_shader_quad_control
    • VK_KHR_fragment_shading_rate
    • VK_EXT_degree_clamp_zero_one
    • VK_EXT_device_generated_commands
  • La prise en charge des extensions Vulkan a été ajoutée au pilote RADV (AMD) :
    • VK_KHR_video_maintenance1
    • VK_KHR_pipeline_binary
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_float_controls2
    • VK_EXT_device_generated_commands
    • VK_KHR_shader_relaxed_extended_instruction
  • La prise en charge des extensions Vulkan a été ajoutée au pilote ANV (Intel)
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_relaxed_extended_instruction
    • VK_EXT_profondeur_clamp_control
  • Le pilote hasvk (Intel Ivy Bridge, Haswell et Broadwell) a ajouté la prise en charge des extensions Vulkan :
    • VK_EXT_profondeur_clamp_control
    • VK_KHR_shader_relaxed_extended_instruction
  • La prise en charge de l'extension Vulkan VK_KHR_shader_relaxed_extended_instruction a été ajoutée aux pilotes hk, tu, v3dv et lvp.
  • Ajout de la prise en charge des nouvelles extensions OpenGL :
    • GL_KHR_shader_subgroup dans le pilote radeonsi
    • GL_OVR_multiview dans le pilote zink
    • GL_OVR_multiview2 dans le pilote zink
    • GL_ARB_draw_indirect vers le pilote etnaviv/HALTI5+
    • GL_EXT_draw_buffers2 dans le pilote etnaviv/HALTI5+
    • GL_ARB_draw_buffers_blend dans le pilote etnaviv/HALTI5+
    • GL_ARB_framebuffer_no_attachments dans le pilote etnaviv
    • GL_ARB_timer_query dans le pilote Panfrost
    • GL_EXT_disjoint_timer_query dans le pilote Panfrost

Source: opennet.ru

Ajouter un commentaire