OpenGL と Vulkan の無料実装である Mesa 22.0 のリリース

22.0.0 か月の開発後、OpenGL および Vulkan API の無料実装リリース (Mesa 22.0.0) が公開されました。 Mesa 22.0.1 ブランチの最初のリリースは実験段階であり、コードが最終的に安定した後、安定バージョン 1.3 がリリースされます。 新しいリリースは、Intel GPU 用の anv ドライバーおよび AMD GPU 用の radv に Vulkan XNUMX グラフィックス API が実装されている点で注目に値します。

Vulkan 1.2 のサポートはエミュレータ (vn) モードで利用でき、Vulkan 1.1 のサポートは Qualcomm (tu) GPU および lavapipe ソフトウェア ラスタライザーで利用でき、Vulkan 1.0 のサポートは Broadcom VideoCore VI (Raspberry Pi 4) GPU で利用できます。 Mesa 22.0 は、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) で利用できます。

主な革新:

  • Vulkan 1.3 グラフィックス API のサポートが追加されました。
  • Gallium3D インターフェイスを使用しないクラシックな OpenGL ドライバーのコードは、メイン Mesa から別のブランチ「Amber」に移動されました。これには、Intel GPU 用の i915 および i965 ドライバー、AMD GPU 用の r100 および r200、NVIDIA GPU 用の Nouveau が含まれます。 Intel OpenSWR プロジェクトに基づいた OpenGL ソフトウェア ラスタライザーを提供する SWR ドライバーも、「Amber」ブランチに移動されました。 クラシック xlib ライブラリはメイン構造から除外されており、代わりに gallium-xlib バリアントを使用することが推奨されます。
  • DirectX 3 API (D12D12) 上に OpenGL 作業を整理するレイヤーを備えた Gallium ドライバー D3D12 は、OpenGL ES 3.1 との互換性を保証します。 このドライバーは、Windows 上で Linux グラフィカル アプリケーションを実行するために WSL2 レイヤーで使用されます。
  • Intel Alderlake (S および N) チップのサポートが、OpenGL ドライバー「iris」および Vulkan ドライバー「ANV」に追加されました。
  • Intel GPU ドライバーにはデフォルトで Adaptive-Sync (VRR) テクノロジーのサポートが含まれており、モニターのリフレッシュ レートを適応的に変更してスムーズでティアリングのない表示を実現できます。
  • RADV Vulkan ドライバー (AMD) は、レイ トレーシングとレイ トレーシング用のシェーダーのサポートを引き続き実装します。
  • VideoCore VI グラフィック アクセラレータ用に開発された v3dv ドライバーは、Raspberry Pi 4 モデルから使用され、Android プラットフォームで動作する機能を提供します。
  • EGL の場合、「dma-buf フィードバック」メカニズムが実装されています。これにより、利用可能な GPU に関する追加情報が提供され、メイン GPU とセカンダリ GPU の間のデータ交換の効率を向上させることができます。たとえば、中間バッファリングなしで出力を整理できます。
  • OpenGL 3 サポートが vmwgfx ドライバーに追加され、VMware 環境で 4.3D アクセラレーションを実装するために使用されます。
  • 拡張機能のサポートが、Vulkan ドライバー RADV (AMD)、ANV (Intel)、および zink (OpenGL over Vulkan) に追加されました。
    • VK_KHR_dynamic_rendering (lavapipe、radv、anv)
    • VK_EXT_image_view_min_lod (radv) KHR_synchronization2.txt VK_KHR_synchronization2]] (radv)
    • VK_EXT_memory_object (zink)
    • VK_EXT_memory_object_fd (ジンク)
    • VK_EXT_semaphore (ジンク)
    • VK_EXT_semaphore_fd (ジンク)
    • VK_VALVE_mutable_descriptor_type (zink)
  • 新しい OpenGL 拡張機能を追加しました。
    • GL_ARB_sparse_texture (radeonsi、zink)
    • GL_ARB_sparse_texture2 (radeonsi、zink)
    • GL_ARB_sparse_texture_clamp (radeonsi、zink)
    • GL_ARB_framebuffer_no_attachments
    • GL_ARB_サンプル_シェーディング

    出所: オープンネット.ru

コメントを追加します