Vydanie Mesa 25.2, voľnej implementácie OpenGL a Vulkan

Po troch mesiacoch vývoja bol predstavený uvoľnený release voľnej implementácie API OpenGL a Vulkan — Mesa 25.2.0. Prvý vydanie vetvy Mesa 25.2.0 má experimentálny status — po vykonaní konečnej stabilizácie kódu bude vydaná stabilná verzia 25.2.1.

V Mesa 25.2 je dostupná podpora grafického API Vulkan 1.4 v ovládačoch ANV pre GPU Intel, RADV pre GPU AMD, NVK pre GPU NVIDIA, Asahi pre GPU Apple, Turnip pre GPU Qualcomm, PanVK pre GPU ARM Mali, v softvérovej rasterizácii lavapipe (lvp) a v emulátorovom režime (vn). V ovládačoch v3dv (GPU Broadcom VideoCore pre Raspberry Pi 4+) a dzn (implementácia Vulkan nad Direct3D 12) je podporovaná Vulkan 1.0.

V Mesa je tiež zabezpečená plná podpora OpenGL 4.6 pre ovládače iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (staré GPU Intel Gen4-Gen7), AMD (r600), zink, llvmpipe, virgl (virtuálny GPU Virgil3D pre QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (vrstva na fungovanie OpenGL nad DirectX 12) a asahi (GPU AGX používaný v čipoch Apple M1 a M2). Podpora OpenGL 4.5 je dostupná pre GPU NVIDIA (nvc0). Podpora OpenGL 3.3 je prítomná v ovládačoch softpipe (softvérová rasterizácia) a nv50 (NVIDIA NV50). V ovládačoch panfrost (GPU ARM Mali) a v3d (GPU Broadcom VideoCore) je podporované OpenGL 3.1.

Hlavné novinky:

  • V Vulkan-ovládači PanVK pre zariadenia s GPU ARM Mali na architektúre V10, ako sú Mali-G610 a Mali-G310, bola pridaná podpora grafického API Vulkan 1.4 (predtým bola podporovaná Vulkan 1.2).
  • V OpenGL-ovládači r600 pre staré GPU AMD (do série Radeon HD 7000 vrátane) bola pridaná podpora grafického API OpenGL 4.6 (predtým bola podporovaná OpenGL 4.5).
  • V Vulkan-ovládači NVK bola pridaná podpora GPU NVIDIA na mikroarchitektúrach Blackwell a Kepler (GTX 600/700). Pre GPU Blackwell bola implementovaná podpora Vulkan 1.4, a pre GPU Kepler — API Vulkan 1.2 (novšie verzie Vulkan nie sú podporované kvôli hardvérovým obmedzeniam). Pre GPU NVIDIA na mikroarchitektúre Maxwell je zabezpečená plná kompatibilita s Vulkan 1.4.
  • Práce kompilátora shaderov NAK, napísaného v jazyku Rust a používaného v ovládači NVK, bola optimalizovaná. Do závislostí ovládača NVK bol pridaný crate-balík rustc-hash, vďaka ktorému sa podarilo skrátiť čas kompilácie shaderov približne o 12%.
  • Podpora OpenGL pre GPU NVIDIA Maxwell, Pascal a Volta je predvolene prepnuta z ovládača Nouveau na použitie ovládača Zink v kombinácii s Vulkan ovládačom NVK. Zink je tiež zapojený na zabezpečenie podpory OpenGL na systémoch s GPU Blackwell (v ovládači OpenGL Nouveau neplánujú pridať podporu GPU Blackwell). Zink poskytuje implementáciu OpenGL 4.6 nad Vulkanom, ktorá umožňuje získať hardvérovú akceleráciu OpenGL na zariadeniach podporujúcich API Vulkan. Výkon Zink je blízko výkonu natívnych implementácií OpenGL.
  • Výrazne sa zvýšil výkon Vulkan ovládača Honeykrisp pre grafické procesory dodávané v čipoch Apple M1/M2.
  • Do Vulkan ovládačov RADV (GPU AMD) a ANV (Intel) bola pridaná podpora hardvérovej akcelerácie dekódovania videoformátu VP9. Možnosť bola implementovaná pomocou Vulkan rozšírenia VK_KHR_video_decode_vp9, pripraveného pracovnou skupinou Vulkan WG na jar. Hardvérová akcelerácia je dostupná pre GPU AMD počnúc GPU Navi 10 na báze mikroarchitektúry RDNA 1.0.
  • Vo Vulkan ovládači RADV pre GPU AMD na báze mikroarchitektúr RDNA3 a RDNA4 bol zvýšený výkon ray tracingu a zlepšená podpora technológie supervzorkovania FSR 4 (FidelityFX Super Resolution). Pridala sa možnosť nastavenia priorít pre frontu príkazov (OpenCL rozšírenie cl_khr_priority_hints).
  • V OpenGL ovládači radeonsi pre staršie generácie GPU AMD Evergreen a Cayman bola implementovaná podpora OpenGL 4.6. Pridala sa podpora zdieľanej virtuálnej pamäte (SVM, Shared Virtual Memory).
  • V OpenGL ovládači Iris a Vulkan ovládači ANV bola implementovaná podpora GPU použitých v procesoroch Intel Wildcat Lake. V Iris a ANV bola tiež vyhlásená stabilná podpora GPU Intel na báze architektúry Xe3, zapojenej v procesoroch Panther Lake. Zlepšila sa podpora generácií GPU Xe2 a Xe3. V ovládači Iris sa pridala podpora zdieľanej virtuálnej pamäte (SVM, Shared Virtual Memory).
  • V OpenGL ovládači freedreno bola pridaná podpora GPU Adreno X1-45, použitom v SoC Qualcomm Snapdragon X Plus.
  • Pokračuje vývoj OpenCL ovládača Rusticl, napísaného v jazyku Rust a prichádzajúceho na miesto ovládača Clover. V Rusticl bola pridaná podpora SVM (Shared Virtual Memory), obrázkov v farebnom priestore sRGB (formáty CL_sRGBA a CL_sBGRA), formátu FP16 (OpenCL rozšírenie cl_khr_fp16 pre ovládače asahi, freedreno, llvmpipe, panfrost, radeonsi a zink).
  • Pridané Gallium3D rozhranie MFT (Media Foundation Transform), ktoré umožňuje využitie D3D12 (Direct3D 12) ovládača na implementáciu iných grafických API. Vyvinuté spoločnosťou Microsoft pre WSL (Windows Subsystem for Linux).
  • Odstránená podpora infraštruktúry DRI2 (Direct Rendering Infrastructure), ktorú nahradilo rozhranie DRI3 na zabezpečenie priameho prístupu k video adaptérmi, pričom DRI3 využíva DMA-BUF. Dôvodom je, že rozhranie DRI3 existuje už viac ako 10 rokov, DRI2 je už zastarané a všetky podporované GPU ovládače už dávno implementovali rozhranie DRI3.
  • Podpora zastaraných metód spolupráce s vyrovnávacími pamäťami bola ukončená – zachovaná je len možnosť používania dma-buf.
  • Podpora verzií libX11, ktoré nezabezpečujú bezpečnú činnosť v multithreadových aplikáciách, bola ukončená. Zachovaná je len podpora libX11 1.8 (apríl 2022) a novších verzií, ktoré používajú volanie XInitThreads().
  • Podpora EGL rozšírenia EGL_WL_bind_wayland_display, implementovaného pre Wayland, bola vyhlásená za zastaranú a predvolene vypnutá. Na výmenu pixelových vyrovnávacích pamätí medzi klientom a serverom Wayland sa odporúča použiť Wayland protokol linux_dmabuf. Na obnovenie podpory je potrebné určiť prepínač „-Dlegacy-wayland=bind-wayland-display“ počas kompilácie. Xwayland podporuje správnu činnosť bez EGL_WL_bind_wayland_display od vydania 24.1 (máj 2024).
  • Odstránený zastaraný OpenCL ovládač Clover. Pre OpenCL by sa mal používať ovládač RustiCL, ktorý je funkčnejší a podporuje viac verzií OpenCL.
  • V ovládači ANV (Intel) bolo implementované Vulkan rozšírenie:
    • VK_KHR_shader_bfloat16
  • V ovládači RADV (AMD) boli implementované Vulkan rozšírenia:
    • VK_KHR_shader_bfloat16
    • VK_KHR_robustness2
    • VK_EXT_zero_initialize_device_memory
    • VK_EXT_scalar_block_layout
    • VK_KHR_maintenance9
    • VK_KHR_unified_image_layouts
    • VK_KHR_shader_float8
    • VK_EXT_host_image_copy
  • V ovládači NVK (NVIDIA) boli implementované Vulkan rozšírenia:
    • VK_EXT_zero_initialize_device_memory
    • VK_KHR_cooperative_matrix
  • V ovládači zink bolo implementované Vulkan rozšírenie:
    • NV_timeline_semaphore
  • V ovládači v3d (GPU Broadcom VideoCore pre Raspberry Pi 4+) bolo implementované OpenGL rozšírenie:
    • on v3d GL_ARB_blend_func_extended
  • V ovládači panfrost boli implementované OpenGL rozšírenia:
    • GL_KHR_texture_compression_astc_hdr
    • GL_ARB_shader_clock
    • GL_EXT_shader_realtime_clock
  • V ovládači asahi (Apple) bolo implementované OpenGL rozšírenie:
    • GL_KHR_texture_compression_astc_hdr
  • V ovládači r600 (AMD) boli implementované OpenGL rozšírenia:
    • GL_EXT_window_rectangles
    • GL_EXT_shader_image_load_store
  • V ovládači PanVK (GPU ARM Mali) boli implementované Vulkan rozšírenia:
    • VK_EXT_vertex_input_dynamic_state/vertexInputDynamicState
    • VK_EXT_vertex_input_dynamic_state
    • VK_EXT_vertex_attribute_divisor
    • VK_KHR_maintenance4
    • VK_KHR_maintenance5
    • VK_EXT_direct_mode_display
    • VK_EXT_extended_dynamic_state
    • VK_KHR_shader_quad_control
    • VK_KHR_draw_indirect_count
    • VK_KHR_shader_integer_dot_product
    • VK_KHR_shader_terminate_invocation
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_shader_replicated_composites
    • VK_EXT_depth_bias_control
    • VK_EXT_primitive_topology_list_restart
    • VK_EXT_obraz_2d_výhľadu_na_3d
    • VK_EXT_texel_buffer_alignment
    • VK_EXT_shader_subgroup_hlasovanie
    • VK_EXT_shader_subgroup_hlasovanie
    • VK_KHR_load_store_op_none
    • VK_EXT_nahrávanie_uloženia_op_žiadny
    • VK_EXT_inline_uniform_block
    • VK_EXT_texture_compression_astc_hdr
    • VK_EXT_hĺbková_clamp_zero_one
    • VK_KHR_hĺbková_clamp_zero_one
    • VK_EXT_hĺbkové_klipovanie_kontrola
    • VK_KHR_unified_image_layouts
    • VK_KHR_vulkanová_pamäťová_móda
    • VK_EXT_indexovanie_popisovača
    • VK_KHR_údržba6
    • VK_KHR_shader_hodiny
    • VK_KHR_shader_atómové_int64
    • VK_KHR_kalibrované_timestamps
    • VK_EXT_neprerušované_kockové_mapy
    • VK_ARM_shader_jadrové_vlastnosti
    • VK_KHR_hostiteľský_kopírovanie_obrázku

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster