Wydanie Mesa 24.1, wolnej implementacji OpenGL i Vulkan

Opublikowano wydanie wolnej implementacji interfejsu API OpenGL i Vulkan — Mesa 24.1.0. Pierwsza wersja gałęzi Mesa 24.1.0 ma status eksperymentalny — po zakończeniu stabilizacji kodu zostanie wydana stabilna wersja 24.1.1.

W Mesa 24.0 dostępne jest wsparcie dla graficznego interfejsu API Vulkan 1.3 w sterownikach anv dla GPU Intel, radv dla GPU AMD, NVK dla GPU NVIDIA, tu dla GPU Qualcomm, w programowym rastrowym lavapipe (lvp) oraz w trybie emulatora (vn). Wsparcie dla Vulkan 1.0 zrealizowano w sterownikach v3dv (GPU Broadcom VideoCore VI z Raspberry Pi 4) oraz dzn (implementacja Vulkan na Direct3D 12).

W Mesa zapewniono również pełne wsparcie dla OpenGL 4.6 dla sterowników iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (stare GPU Intel Gen4-Gen7), zink, llvmpipe, virgl (wirtualny GPU Virgil3D dla QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (warstwa umożliwiająca działanie OpenGL na DirectX 12) i asahi (GPU AGX, używany w chipach Apple M1 i M2). Wsparcie dla OpenGL 4.5 dostępne jest dla GPU AMD (r600) oraz NVIDIA (nvc0). Wsparcie dla OpenGL 3.3 występuje w sterownikach softpipe (programowy rasteryzator) oraz nv50 (NVIDIA NV50).

Główne nowości:

  • W sterowniku asahi, rozwijanym dla GPU AGX używanego w chipach ARM Apple, zapewniono wsparcie dla OpenGL 4.6 oraz OpenGL ES 3.2.
  • Znacząco poprawiono działanie sterownika NVK dla GPU NVIDIA opartych na mikroarchitekturze Turing (series GeForce GTX 16xx, RTX 20xx i Quadro RTX), Ampere (series GeForce RTX 30xx i RTX A2000/4000/5000/6000) oraz Ada (series GeForce RTX 4xxx, RTX 4000 SFF, RTX 4xxx/5000/6000 Ada). Sterownik uznano za gotowy do codziennego użytku przez szeroką gamę użytkowników. Wsparcie dla Vulkan 1.3 w NVK uzyskało certyfikację od konsorcjum Khronos. Ulepszono działanie na NVK warstwa DXVK, która oferuje implementację Direct3D 9, 10 oraz 11.
  • Dodano zmianę, która umożliwia użycie sterownika Zink (implementacja OpenGL na Vulkan) w celu zapewnienia wsparcia dla OpenGL 4.6 na systemach z nowymi seriami kart graficznych NVIDIA (począwszy od GeForce RTX 20xx), z którymi mogą występować problemy w standardowym sterowniku OpenGL Nouveau (NVC0). Aby włączyć Zink zamiast NVC0, należy ustawić zmienną środowiskową "NOUVEAU_USE_ZINK=1".
  • W sterowniku Panfrost dodano wsparcie dla GPU Mali G610, Mali G310 oraz Mali T600.
  • We wszystkich sterownikach Vulkan zrealizowano wsparcie dla jawnej synchronizacji (Explicit Sync) dla Wayland i X11. Explicit Sync pozwala aplikacjom informować menedżera kompozycji o gotowości do wyświetlenia klatki, co pozwala na zmniejszenie opóźnień i eliminację artefaktów podczas wyświetlania grafiki.
  • Rozszerzono możliwości sterownika d3d12, który zapewnia warstwę z implementacją OpenGL na DirectX 12.
  • W sterowniku V3DV, rozwijanym dla GPU Broadcom VideoCore (stosowanym w płytkach Raspberry Pi), dodano wsparcie dla dynamicznego renderowania.
  • Sterownik Vulkan ANV (Intel) przeszedł na użycie asynchronicznych operacji mapowania pamięci wideo (Asynchronous VM_BIND). Dla GPU opartych na architekturze Intel Xe, które są wykorzystywane w kartach graficznych Intel serii Arc oraz w zintegrowanej grafice, począwszy od procesorów Tiger Lake, dodano możliwość zrzutu stanów dla debugowania zawieszeń GPU. Przygotowano wsparcie dla układów GPU Intel LunarLake (Xe 2).
  • Dodano wsparcie dla nowych rozszerzeń Vulkan:
    • VK_EXT_map_memory_placed dla sterowników RADV, ANV i NVK
    • VK_KHR_shader_subgroup_rotate dla RADV, ANV i NVK
    • VK_KHR_load_store_op_none dla RADV, ANV, NVK i Turnip
    • VK_KHR_line_rasterization dla RADV, ANV, NVK i Turnip
    • VK_KHR_index_type_uint8 dla RADV, ANV, NVK i Turnip
    • VK_KHR_shader_expect_assume dla wszystkich sterowników Vulkan
    • VK_KHR_shader_maximal_reconvergence dla RADV, ANV i NVK
    • VK_KHR_shader_quad_control dla RADV
    • VK_KHR_shader_subgroup_uniform_control_flow dla NVK
    • VK_EXT_device_address_binding_report dla RADV
    • VK_EXT_external_memory_dma_buf dla lavapipe
    • VK_EXT_queue_family_foreign dla lavapipe
    • VK_EXT_shader_object dla RADV
    • VK_EXT_nested_command_buffer dla NVK i RADV
    • VK_EXT_queue_family_foreign dla NVK
    • VK_EXT_image_drm_format_modifier dla NVK

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster