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

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

在 Mesa 22.1 中,Intel GPU 的 anv 驅動程式、AMD GPU 的 radv 以及 lavapipe 軟體光柵器中提供了對 Vulkan 1.3 圖形 API 的支援。 對 Vulkan 1.2 的支援在模擬器模式 (vn) 中實現,Vulkan 1.1 在 Qualcomm GPU 的驅動程式中實現 (tu)。 Broadcom VideoCore VI GPU (Raspberry Pi 1.0) 驅動程式中的 Vulkan 4。 Mesa 也為 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)和 vmwgfx (VMware)。

主要創新:

  • ANV Vulkan 驅動程式(Intel)和 Iris OpenGL 驅動程式支援 Intel DG2 (Arc Alchemist) 和 Arctic Sound-M 獨立顯示卡。
  • D3D12 驅動程式在 DirectX 12 API (D3D12) 之上有一個用於組織 OpenGL 工作的層,可確保與 OpenGL 4.2 的兼容性。 此驅動程式用於 WSL2 層,以便在 Windows 上執行 Linux 圖形應用程式。
  • lavapipe 驅動程式為 Vulkan API 實作了軟體光柵化器(與 llvmpipe 類似,但對於 Vulkan,將 Vulkan API 呼叫轉換為 Gallium API),支援 Vulkan 1.3。
  • 新增了對 AMD GFX1036 和 GFX1037 GPU 的支援。
  • RADV 驅動程式 (AMD) 實現了光線基元剔除,這改進了對《DOOM Eternal》等遊戲的光線追蹤支援。
  • 已經提出了基於 Imagination 開發的 PowerVR Rogue 架構的 GPU Vulkan 驅動程式的初步實作。
  • 適用於舊版 GeForce 6/7/8 GPU 的 Nouveau 驅動程式已轉換為使用 NIR 著色器的無類型中間表示 (IR)。 NIR 支援還允許您透過使用將 NIR 轉換為 TGSI 的層來獲得對 TGSI(鎢圖形著色器基礎設施)中間表示的支援。
  • 該組合包括一個緊湊的 OpenCL 編譯器,由 Intel 提出並用於光線追蹤。
  • OpenGL 驅動程式 v3d 是為 VideoCore VI 圖形加速器開發的,從 Raspberry Pi 4 型號開始使用,實現了在磁碟上快取著色器的支援。
  • 對於配備VCN 2.0視訊處理引擎的AMD GPU,已經實現了EFC(編碼器格式轉換)支持,允許使用硬體視訊編碼器直接讀取RGB表面,而無需著色器執行RGB->YUV轉換。
  • Crocus 驅動程式是為基於 Gen4-Gen7 微體系結構的較舊 Intel GPU 開發的,Iris 驅動程式不支援該 GPU,該驅動程式包含與舊版本 OpenGL 的相容性設定檔。
  • PanVk 驅動程式為 ARM Mali Midgard 和 Bifrost GPU 的 Vulkan 圖形 API 提供支持,並已開始支援計算著色器。
  • 基於 Vulkan API 實現虛擬 GPU (virtio-gpu) 的 Venus 驅動程式添加了對 ANGLE 層的支持,該層負責將 OpenGL ES 呼叫轉換為 OpenGL、Direct3D 9/11、Desktop GL 和 Vulkan。
  • 新增了對 NVIDIA OpenGL 擴展 GL_NV_pack_subimage 的支持,該擴展旨在使用幀緩衝區或紋理中的資料更新主機記憶體中的矩形。
  • 添加了對 RADV (AMD)、ANV (Intel) 和 lavapipe Vulkan 驅動程序擴展的支持:
    • VK_EXT_depth_clip_control 用於 lavapipe 和 RADV。
    • VK_EXT_graphics_pipeline_library 的 Lavapipe。
    • Lavapipe 的 VK_EXT_primitives_ generated_query。
    • VK_EXT_image_2d_view_of_3d 用於 ANV 和 lavapipe。
    • Lavapipe 的 VK_KHR_swapchain_mutable_format。

來源: opennet.ru

添加評論