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

Introduit sortie d'une implémentation gratuite de l'API OpenGL et Vulkan - Mesa 20.2.0. Dans Mesa 20.2 mis en œuvre Prise en charge complète d'OpenGL 4.6 pour les GPU Intel (i965, iris) et AMD (radeonsi), prise en charge d'OpenGL 4.5 pour les GPU AMD (r600), NVIDIA (nvc0) et llvmpipe, OpenGL 4.3 pour virgl (GPU virtuel Virgile3D pour QEMU/KVM), ainsi que la prise en charge de Vulkan 1.2 pour les cartes Intel et AMD.

parmi changements:

  • Dans le pilote lvmpipe, conçu pour le rendu logiciel, prend en charge OpenGL 4.5.
  • Le pilote RADV Vulkan (pour les cartes AMD) utilise par défaut le compilateur shader"ACO», qui est développé par Valve comme alternative au compilateur de shader LLVM. ACO est écrit en C++, conçu pour la compilation JIT et vise à fournir une génération de code aussi optimale que possible pour les shaders de jeu, ainsi qu'à atteindre des vitesses de compilation très élevées.
  • Ajout de la prise en charge initiale des GPU AMD Navi 21 (Navy Flounder) et Navi 22 (Sienna Cichlid).
  • Les pilotes GPU Intel ont amélioré la prise en charge des puces basées sur la microarchitecture Rocket Lake и ajoutée prise en charge initiale des cartes discrètes Intel Xe DG1.
  • Les capacités du pilote Gallium3D ont été étendues Zink, qui implémente l'API OpenGL au-dessus de Vulkan. 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.
  • Le pilote Gallium3D Nouveau NVC0 utilise HMM (gestion de mémoire hétérogène) pour prendre en charge SVM OpenCL (Mémoire virtuelle partagée).
  • Dans le pilote panfrost La prise en charge du rendu 3D pour les GPU Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) a été stabilisée.
  • RadeonSI inclut des améliorations liées à la virtualisation GPU.
  • Ajout de la prise en charge de la mise en cache disque de la représentation intermédiaire TGSI (Tungsten Graphics Shader Infrastructure).
  • Ajout de nouvelles extensions OpenGL :
    • GL_ARB_compute_variable_group_size pour Intel Iris.
    • GL_ARB_gl_spirv pour Nouveau nvc0.
    • GL_NV_half_float pour Nouveau nvc0.
    • GL_NV_copy_degree_to_color pour Nouveau nvc0.
    • GL_ARB_spirv_extensions pour Nouveau nvc0.
    • GL_EXT_shader_group_vote pour llvmpipe.
    • GL_ARB_gpu_shader5 pour llvmpipe.
    • GL_ARB_post_degree_coverage pour llvmpipe.
    • GL_EXT_texture_shadow_lod pour llvmpipe.
  • Ajout de la prise en charge de l'extension EGL EGL_KHR_swap_buffers_with_damage (pour X11 DRI3), ainsi que des extensions GLX GLX_EXT_swap_control (DRI2, DRI3) et GLX_EXT_swap_control_tear (DRI3).
  • Ajout d'extensions au pilote RADV Vulkan (pour les cartes AMD) :
    • VK_EXT_4444_formats
    • VK_KHR_memory_model
    • VK_AMD_texture_gather_bias_lod
    • VK_AMD_gpu_shader_half_float
    • VK_AMD_gpu_shader_int16
    • VK_EXT_extended_dynamic_state
    • VK_EXT_image_robustesse
    • VK_EXT_private_data
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_subgroup_size_control
    • VK_GOOGLE_user_type
    • VK_KHR_shader_subgroup_extended_types
  • Extensions ajoutées au pilote ANV Vulkan (pour les cartes Intel) :
    • VK_EXT_image_robustesse
    • VK_EXT_shader_atomic_float
    • VK_EXT_4444_formats
    • VK_EXT_extended_dynamic_state
    • VK_EXT_private_data
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control

Source: opennet.ru

Ajouter un commentaire