發布 Mesa 21.3,免費實施 OpenGL 和 Vulkan

經過四個月的開發,OpenGL 和 Vulkan API 的免費實作版本 - Mesa 21.3.0 - 發布了。 Mesa 21.3.0分支的第一個版本處於實驗狀態-程式碼最終穩定後,將發布穩定版本21.3.1。

Mesa 21.3 完全支援 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 卡,以及模擬器模式 (vn) 和 lavapipe 軟體光柵器,Vulkan 1.1 支援適用於 Qualcomm GPU 和 lavapipe 軟體光柵器,Vulkan 1.0 支援 Broadcom VideoCore VI GPU (Raspberry Pi 4)。

主要創新:

  • Zink 驅動程式(Vulkan 之上的 OpenGL API 的實現,如果系統的驅動程式僅限於僅支援 Vulkan API,則允許您獲得硬體加速的 OpenGL)支援 OpenGL ES 3.2。
  • Panfrost 驅動程式設計用於與基於Midgard(Mali-T6xx、Mali-T7xx、Mali-T8xx)和Bifrost(Mali G3x、G5x、G7x)微架構的GPU 配合使用,並經過官方認證,可與OpenGL ES 3.1 相容。
  • v3dv 驅動程式是為 VideoCore VI 圖形加速器開發的,從 Raspberry Pi 4 型號開始使用,已獲得對 Vulkan 1.1 圖形 API 的支援認證,並且還添加了對幾何著色器的支援。著色器編譯器產生的程式碼的效能得到了顯著提高,這對主動使用著色器的程式(例如基於虛幻引擎 4 的遊戲)的速度產生了積極影響。
  • RADV Vulkan 驅動程式 (AMD) 增加了對光線追蹤和光線追蹤著色器的實驗性支援。對於 GFX10.3 卡,預設啟用使用 NGG(下一代幾何)著色器引擎進行圖元剔除的支援。
  • Iris OpenGL 驅動程式(Intel GPU 的新驅動程式)新增了多執行緒著色器編譯的功能。
  • lavapipe 驅動程式為Vulkan API 實作了軟體光柵化器(與llvmpipe 類似,但對於Vulkan,將Vulkan API 呼叫轉換為Gallium API),實現了對各向異性紋理過濾的支持,並添加了對Vulkan 1.2 的支持。
  • 專為軟體渲染而設計的OpenGL驅動程式llvmpipe在執行與2D操作相關的動作時效能提高了3-2倍。新增了對 FP16 操作、各向異性紋理過濾 (GL_ARB_texture_filter_anisotropic) 和固定記憶體區域 (GL_AMD_pinned_memory) 的支援。提供對 OpenGL 4.5 相容性設定檔的支援。
  • VA-API(視訊加速 API)狀態追蹤器在使用 AMD GPU 驅動程式時提供加速 AV1 視訊編碼和解碼的支援。
  • Windows 平台已實現 EGL 支援。
  • 新增了對 Wayland 的 EGL_EXT_present_opaque 擴充的支援。在基於 Wayland 協議的環境中運行的遊戲中顯示透明度的問題已解決。
  • 添加了對 RADV (AMD)、ANV (Intel) 和 lavapipe Vulkan 驅動程序擴展的支持:
    • VK_EXT_shader_atomic_float2(英特爾,RADV)。
    • VK_EXT_vertex_input_dynamic_state (RADV)。
    • VK_EXT_primitive_topology_list_restart(RADV,lavapipe)。
    • VK_KHR_shader_integer_dot_product (RADV)。
    • VK_KHR_synchronization2(英特爾)。
    • VK_KHR_maintenance4 (RADV)。
    • VK_KHR_format_feature_flags2 (RADV)。
    • VK_KHR_shader_subgroup_extended_types (lavapipe)。
    • VK_KHR_spirv_1_4 (lavpipe)。
    • VK_KHR_timeline_semaphore (lavapipe)。
    • VK_EXT_external_memory_host (lavpipe)。
    • VK_KHR_depth_stencil_resolve (lavapipe)。
    • VK_KHR_shader_float16_int8 (lavpipe)。
    • VK_EXT_color_write_enable (lavpipe)。

來源: opennet.ru

添加評論