Lëshimi i Mesa 25.3, një implementim i lirë i OpenGL dhe Vulkan

Pas tre muajsh zhvillimi, Ă«shtĂ« paraqitur lĂ«shimi i implementimit tĂ« lirĂ« tĂ« API OpenGL dhe Vulkan — Mesa 25.3.0. Eti i lĂ«shimit tĂ« ri nĂ« git u publikua mĂ« 15 nĂ«ntor, por njoftimi nĂ« faqe doli vetĂ«m dje (nĂ« newsletter, lĂ«shimi nuk Ă«shtĂ« shpallur ende). LĂ«shimi i parĂ« i degĂ«s Mesa 25.3.0 ka status eksperimental — pas stabilizimit pĂ«rfundimtar tĂ« kodit do tĂ« lĂ«shohet njĂ« version i stabilizuar 25.3.1.

NĂ« Mesa 25.3, mbĂ«shtetja pĂ«r API-nĂ« grafike Vulkan 1.4 Ă«shtĂ« e disponueshme nĂ« drejtuesit ANV pĂ«r GPU Intel, RADV pĂ«r GPU AMD, NVK pĂ«r GPU NVIDIA, HoneyKrisp (hk) pĂ«r GPU Apple, Turnip pĂ«r GPU Qualcomm, PanVK pĂ«r GPU ARM Mali, nĂ« rasterizatorin e softuerit lavapipe (lvp) dhe nĂ« modin emulator (vn). NĂ« drejtuesit v3dv (GPU Broadcom VideoCore pĂ«r Raspberry Pi 4+) dhe dzn (implementimi i Vulkan mbi Direct3D 12) mbĂ«shtetet Vulkan 1.0, nĂ« drejtuesin kk (KosmicKrisp, Vulkan mbi Metal) — Vulkan 1.1, ndĂ«rsa nĂ« drejtuesin pvr (GPU Imagination PowerVR) — Vulkan 1.2.

Në Mesa gjithashtu sigurohet mbështetje e plotë për OpenGL 4.6 për drejtuesit iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (GPU të vjetra Intel Gen4-Gen7), AMD (r600), zink, llvmpipe, virgl (GPU virtual Virgil3D për QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (layer për organizimin e funksionimit të OpenGL mbi DirectX 12) dhe asahi (GPU AGX, e përdorur në çipat Apple M1 dhe M2). Mbështetje për OpenGL 4.5 është e disponueshme për GPU NVIDIA (nvc0). Mbështetje për OpenGL 3.3 është e pranishme në drejtuesit softpipe (rasterizator programor) dhe nv50 (NVIDIA NV50). Në drejtuesit panfrost (GPU ARM Mali) dhe v3d (GPU Broadcom VideoCore) mbështetet OpenGL 3.1.

TĂ« rejat kryesore:

  • NĂ« pĂ«rbĂ«rje Ă«shtĂ« pĂ«rfshirĂ« njĂ« shofer i ri Vulkan KosmicKrisp (kk), i cili implementon API grafik Vulkan mbi API Metal, qĂ« zhvillohet nga Apple dhe pĂ«rdoret nĂ« macOS. Shoferi Ă«shtĂ« krijuar nga LunarG pĂ«r pĂ«rdorim nĂ« kompjuterĂ«t Mac me çipat Apple Silicon. NĂ« formĂ«n aktuale, shoferi Ă«shtĂ« plotĂ«sisht i kompatibĂ«l me API Vulkan 1.1, por vĂ«rehet se Ă«shtĂ« shumĂ« pranĂ« realizimit tĂ« mbĂ«shtetjes pĂ«r Vulkan 1.3.
  • Shoferi ethos pĂ«r NPU Arm Ethos-U65 Ă«shtĂ« shtuar.
  • NĂ« shoferin Vulkan pvr, i zhvilluar pĂ«r GPU Imagination PowerVR, Ă«shtĂ« siguruar mbĂ«shtetje pĂ«r Vulkan 1.2.
  • Shtesa e optimizimeve nĂ« shoferin Vulkan RADV ka rritur ndjeshĂ«m shpejtĂ«sinĂ« e motorit tĂ« ekzekutimit tĂ« modeleve gjuhĂ«sore tĂ« mĂ«dha Llama.cpp kur pĂ«rdoret backend-i Vulkan nĂ« sistemet me GPU AMD. NĂ« disa teste me llama-bench, konfigurimi i bazuar nĂ« shoferin RADV Ă«shtĂ« treguar mĂ« i shpejtĂ« se shoferi AMDVLK dhe stoku ROCm me 31% pĂ«r pĂ«rpunimin e kĂ«rkesave (testet "pp" — prompt processing) dhe me 4% pĂ«r gjenerimin e tokeneve (testet "tg" — token generation).
  • ËshtĂ« hequr mbĂ«shtetja pĂ«r ndĂ«rfaqen VDPAU (Video Decode and Presentation API pĂ«r Unix) tĂ« krijuar nga NVIDIA. Si arsyet pĂ«r heqjen janĂ« pĂ«rmendur mundĂ«sia e pĂ«rdorimit tĂ« VDPAU vetĂ«m nĂ« sisteme me X11 dhe OpenGL, pĂ«r shkak tĂ« mungesĂ«s sĂ« mbĂ«shtetjes pĂ«r Wayland dhe Vulkan. PĂ«r mĂ« tepĂ«r, API VDPAU ka kufizime qĂ« nuk lejojnĂ« dekodimin e saktĂ« tĂ« disa rrjedhjeve video. NĂ« vend tĂ« VDPAU, rekomandohet pĂ«rdorimi i API VA-API (Video Acceleration API), i cili mund tĂ« pĂ«rdoret me Wayland dhe Vulkan dhe ka mbĂ«shtetje mĂ« tĂ« mirĂ« nĂ« aplikacione.
  • NĂ« drayverin Zink, i cili implementon OpenGL 4.6 mbi Vulkan, Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r mesh-shader, duke ofruar njĂ« mĂ«nyrĂ« alternative pĂ«r gjenerimin e koleksioneve tĂ« primitivave gjeometrike.
  • NĂ« drayverin rusticl Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r zgjerime OpenCL pĂ«r punĂ«n me semaforĂ«t (cl_khr_semaphore dhe cl_khr_external_semaphore).
  • NĂ« kompilatorin e shaderave Ă«shtĂ« shtuar funksionalitet pĂ«r zĂ«vendĂ«simin e shaderave SPIR-V.
  • ËshtĂ« realizuar njĂ« sloj Vulkan pĂ«r mbĂ«shtetje tĂ« teknologjisĂ« AMD Anti-Lag, qĂ« minimizon vonesat mes thirrjeve vkQueueSubmit ose vkQueueSubmit2 dhe fillimit tĂ« ekzekutimit tĂ« operacioneve, duke lejuar reduktimin e vonesave gjatĂ« shfaqjes nĂ« ekran nĂ« lojĂ«ra.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r zgjerimet OpenGL:
    • GL_EXT_mesh_shader pĂ«r zink
    • GL_ARB_robust_buffer_access_behavior pĂ«r Panfrost
    • GL_KHR_robust_buffer_access_behavior pĂ«r Panfrost
    • GL_KHR_robustness pĂ«r Panfrost dhe v3d
    • GL_ATI_meminfo pĂ«r r300
    • GL_NVX_gpu_memory_info pĂ«r r300
    • GL_NV_shader_atomic_int64 pĂ«r radeonsi dhe Panfrost V9+
    • GL_NV_representative_fragment_test pĂ«r zink
    • EGL_EXT_create_context_robustness pĂ«r Panfrost V10+
  • NĂ« drajverin ANV (Intel) Ă«shtĂ« realizuar zgjerimi Vulkan: VK_KHR_shader_untyped_pointers
  • NĂ« drejtuesin RADV (AMD) janĂ« implementuar zgjerimet Vulkan:
    • VK_EXT_ycbcr_2plane_444_formats
    • VK_KHR_shader_untyped_pointers
    • VK_KHR_video_encode_intra_refresh
    • VK_KHR_video_encode_quantization_map
  • NĂ« drejtuesin NVK (NVIDIA) janĂ« implementuar zgjerimet Vulkan:
    • VK_AMD_buffer_marker
    • VK_KHR_maintenance8
    • VK_KHR_maintenance9
    • VK_NVX_image_view_handle
  • NĂ« drajverin HoneyKrisp (Apple) Ă«shtĂ« realizuar zgjerimi OpenGL: VK_KHR_maintenance9
  • NĂ« drajverin PanVK (GPU ARM Mali) janĂ« realizuar zgjerimet Vulkan: ‘
    • VK_ARM_shader_core_builtins
    • VK_EXT_mutable_descriptor_type
    • VK_KHR_maintenance7
    • VK_KHR_maintenance8
    • VK_KHR_maintenance9
  • NĂ« drajverin pvr (GPU Imagination PowerVR) janĂ« realizuar zgjerimet Vulkan:
    • VK_EXT_border_color_swizzle
    • VK_EXT_color_write_enable
    • VK_EXT_custom_border_color
    • VK_EXT_depth_clamp_zero_one
    • VK_EXT_depth_clip_enable
    • VK_EXT_extended_dynamic_state
    • VK_EXT_extended_dynamic_state2
    • VK_EXT_extended_dynamic_state3
    • VK_EXT_image_2d_view_of_3d
    • VK_EXT_line_rasterization
    • VK_EXT_map_memory_placed
    • VK_EXT_physical_device_drm
    • VK_EXT_provoking_vertex
    • VK_EXT_queue_family_foreign
    • VK_EXT_robustness2
    • VK_EXT_separate_stencil_usage
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_shader_replicated_composites
    • VK_EXT_vertex_attribute_divisor
    • VK_EXT_zero_initialize_device_memory
    • VK_KHR_buffer_device_address
    • VK_KHR_create_renderpass2
    • VK_KHR_dedicated_allocation
    • VK_KHR_depth_stencil_resolve
    • VK_KHR_descriptor_update_template
    • VK_KHR_device_group
    • VK_KHR_device_group_creation
    • VK_KHR_imageless_framebuffer
    • VK_KHR_line_rasterization
    • VK_KHR_maintenance1
    • VK_KHR_maintenance2
    • VK_KHR_maintenance3
    • VK_KHR_map_memory2
    • VK_KHR_multiview
    • VK_KHR_robustness2
    • VK_KHR_sampler_mirror_clamp_to_edge
    • VK_KHR_separate_depth_stencil_layouts
    • VK_KHR_shader_draw_parameters
    • VK_KHR_shader_float_controls
    • VK_KHR_shader_non_semantic_info
    • VK_KHR_shader_relaxed_extended_instruction
    • VK_KHR_shader_subgroup_extended_types
    • VK_KHR_shader_terminate_invocation
    • VK_KHR_spirv_1_4
    • VK_KHR_swapchain_mutable_format
    • VK_KHR_vertex_attribute_divisor
    • VK_KHR_wayland_surface
  • Implementohen zgjerimet OpenCL:
    • cl_ext_immutable_memory_objects
    • cl_khr_external_semaphore pĂ«r radeonsi dhe zink
    • cl_khr_external_semaphore_sync_fd pĂ«r radeonsi dhe zink
    • cl_khr_semaphore pĂ«r radeonsi dhe zink

Gjithashtu mund të theksohet publikimi i versionit të ri të specifikimit Vulkan 1.4.333, i cili ofron një zgjerim të ri VK_EXT_ray_tracing_invocation_reorder, që rrit performancën e gjurmimit të rrezeve me 47% në testet e kryera me SER (Shader Execution Reordering) në vk_gltf_renderer.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster