发布 Mesa 21.1,免费实施 OpenGL 和 Vulkan

OpenGL 和 Vulkan API 的免费实现版本 - Mesa 21.1.0 - 已经发布。 Mesa 21.1.0分支的第一个版本处于实验状态——代码最终稳定后,将发布稳定版本21.1.1。 Mesa 21.1 完全支持 4.6、iris (Intel)、radeonsi (AMD)、zink 和 llvmpipe 驱动程序的 OpenGL 965。 OpenGL 4.5 支持适用于 AMD (r600) 和 NVIDIA (nvc0) GPU,OpenGL 4.3 支持 virgl(用于 QEMU/KVM 的 Virgil3D 虚拟 GPU)。 Vulkan 1.2 支持 Intel 和 AMD 卡,Vulkan 1.1 支持 Qualcomm GPU 和 lavapipe 软件光栅器,Vulkan 1.0 支持 Broadcom VideoCore VI GPU (Raspberry Pi 4)。

主要创新:

  • Vulkan 驱动程序 RADV (AMD) 和 ANV (Intel) 中添加了对 VK_KHR_workgroup_memory_explicit_layout 和 VK_KHR_zero_initialize_workgroup_memory 扩展的支持。
  • RADV 驱动程序中添加了对 DRM 格式修饰符的支持(适用于 AMD GFX9 卡)(启用了 VK_EXT_image_drm_format_modifier 扩展)。
  • RADV 驱动程序包括 VRS(可变速率着色)支持,可与任何深度缓冲区一起使用。 VRS 以质量为代价提高了生产率。
  • 添加了对 AMD Aldebaran GPU (gfx90a) 的支持。
  • 添加了带有基于 Vulkan API 的虚拟 GPU 实现 (virtio-gpu) 的新 venus 驱动程序。
  • Zink 驱动程序(Vulkan 之上的 OpenGL API 的实现)包括对 OpenGL 4.6 和 OpenGL ES 3.1 的支持。 如果系统的驱动程序仅限于支持 Vulkan API,Zink 允许您获得硬件加速的 OpenGL。 Zink 的性能接近原生 OpenGL 实现的性能。
  • 实现了 Vulkan API 软件光栅化器的 lavapipe 驱动程序(类似于 llvmpipe,但适用于 Vulkan)添加了对 Vulkan 1.1 的支持,并实现了 Vulkan 扩展 VK_KHR_copy_commands2。 lavapipe 中的软件实现基于将 Vulkan API 调用镜像到 Gallium API。
  • 添加了对将着色器缓存存储在一个文件中的支持。
  • Virgl(用于 QEMU/KVM 的虚拟 GPU Virgil3D)和 Lima(ARM Mali GPU)驱动程序提供对磁盘上缓存着色器的支持。
  • Gallium 驱动程序 D3D12 具有一个用于在 DirectX 12 API (D3D12) 之上组织 OpenGL 工作的层,确保在 D3.3D3 驱动程序 WARP(软件光栅器)和 NVIDIA 之上工作时与 OpenGL 12 的兼容性。 该驱动程序用于 WSL2 层,以便在 Windows 上运行 Linux 图形应用程序。
  • 添加了新的 OpenGL 扩展:
    • 用于 softpipe 和 zink 驱动程序的 GL_EXT_depth_bounds_test
    • nvc0 驱动程序 (gm200+) 的 GL_EXT_texture_filter_minmax
    • nvc0 驱动程序 (gm200+) 的 GL_ARB_texture_filter_minmax
    • zink 驱动程序的 GL_ARB_post_depth_coverage。

来源: opennet.ru

添加评论