Baada ya miezi mitatu ya uundaji, utekelezaji wa programu huria ya OpenGL na Vulkan API, Mesa 26.1.0, umetolewa. Toleo la kwanza la tawi la Mesa 26.1.0 ni la majaribio; baada ya msimbo kuimarishwa kikamilifu, toleo thabiti, 26.1.1, litatolewa.
Mesa 26.1 inaongeza usaidizi kwa API ya michoro ya Vulkan 1.4 katika viendeshi vya ANV kwa Intel GPUs, RADV kwa AMD GPUs, NVK kwa NVIDIA GPUs, HoneyKrisp (hk) kwa Apple GPUs, Turnip kwa Qualcomm GPUs, PanVK kwa ARM Malilator GPUs, programu ya lavapipe (raster ya lavapipe), raster ya lavapipe (raster ya elektroni). Viendeshi vya v3dv (Broadcom VideoCore GPU kwa Raspberry Pi 4+) na viendeshi vya dzn (Vulkan over Direct3D 12) vinaauni Vulkan 1.0, kiendeshi cha kk (KosmicKrisp, Vulkan over Metal) kinaauni Vulkan 1.1, na kiendeshi cha pvr (Imagination PowerVR 1.2).
Mesa pia hutoa usaidizi kamili wa OpenGL 4.6 kwa iris (Intel Gen 8+ GPUs), radeonsi (AMD), Crocus (zamani Intel Gen4-Gen7 GPUs), AMD (r600), zinki, llvmpipe, virgl (virgil3D virtual GPU kwa QEMU/KVM), freedreno (Qualcomm 3Op Adreno ya juu ya DirectX12), 12), na asahi (AGX GPU inayotumika katika chipsi za Apple M1 na M2). Usaidizi wa OpenGL 4.5 unapatikana kwa GPU za NVIDIA (nvc0). Usaidizi wa OpenGL 3.3 unapatikana katika viendeshi vya softpipe (rasterizer ya programu) na nv50 (NVIDIA NV50). OpenGL 3 inatumika katika viendeshi vya panfrost (ARM Mali GPU) na v3.1d (Broadcom VideoCore GPU).
Ubunifu kuu:
- Viendeshi vya Intel GPU (Iris, Crocus, na ANV) sasa vinaunga mkono ufikiaji wa moja kwa moja wa GPU kutoka kwa mashine pepe zinazotumia miktadha asilia katika VirtIO-GPU. Miktadha asilia huboresha utendaji wakati wa kufanya kazi na GPU pepe (virtio-gpu-gl) katika mfumo wa mgeni kwa kutuma amri moja kwa moja kwa GPU mwenyeji halisi.
- Usaidizi wa OpenGL ES 2.0 umeongezwa kwa GPU za PowerVR kupitia kiendeshi cha Zink, na kuwezesha OpenGL inayoharakishwa na maunzi kwenye vifaa vinavyounga mkono API ya Vulkan.
- Kiendeshi cha OpenCL rusticl sasa kinahitaji stdlib ya C++ iliyounganishwa kiotomatiki ili kufanya kazi kwa usahihi na programu zinazotumia stdlibs asilia za C++.
- Kiendeshi cha radeonsi (AMD) kimeongeza usaidizi kwa kiendelezi cha GL_NV_timeline_semaphore OpenGL.
- Kiendeshi cha panfrost (ARM Mali) sasa kinaunga mkono kiendelezi cha OpenGL GL_EXT_shader_image_load_store.
- Kiendeshi cha v3d (Broadcom VideoCore) sasa kinaunga mkono kiendelezi cha OpenGL cha GL_ARB_sample_shading.
- Usaidizi ulioongezwa kwa viendelezi vya Vulkan:
- VK_ARM_scheduling_controls kwa panvk
- VK_EXT_acquire_drm_display kwa panvk
- VK_EXT_astc_decode_mode kwa panvk
- VK_EXT_attachment_feedback_loop_dynamic_state kwa panvk
- mpangilio_wa_kiambatisho_cha_maoni_ya_mzunguko_wa_panya ...
- VK_EXT_blend_operation_advanced kwa ajili ya lavapipe
- VK_EXT_color_write_enable kwa panvk
- Utoaji_wa_VK_EXT_conditional_kwa panvk
- VK_EXT_depth_clamp_control kwa panvk
- VK_EXT_descriptor_heap kwa RADV (wakati wa kuweka 'export RADV_EXPERIMENTAL=heap')
- VK_EXT_hdr_metadata kwa v3dv
- Kirekebishaji cha VK_EXT_image_drm_format_kwa pvr
- VK_EXT_image_view_min_lod kwa panvk
- VK_EXT_legacy_dithering kwa panvk
- VK_EXT_map_memory_imewekwa kwa ajili ya panvk
- VK_EXT_nested_command_buffer kwa panvk
- Ramani_ya_mchemraba_isiyo na mshono_ya_pvr
- VK_EXT_present_timing kwa RADV, NVK, Turnip, ANV, Honeykrisp, panvk
- VK_EXT_primitive_restart_index kwa RADV
- VK_EXT_rgba10x6_formats kwa panvk
- VK_EXT_shader_atomic_float kwa panvk
- VK_EXT_shader_stencil_export kwa panvk
- VK_EXT_zero_initialize_device_memory kwa panvk
- VK_KHR_copy_memory_indirect kwa nvk, RADV/GFX8+
- Amri_za_address_za_kifaa_cha_VK_KHR_za RADV
- VK_{KHR,EXT}_{uso,swapchain}_matengenezo1 kwa panvk
- VK_KHR_get_display_properties2 kwa panvk
- VK_KHR_get_surface_capabilities2 kwa panvk
- Foleni_za_VK_KHR_internally_synchronized_kwa RADV
- VK_KHR_maintenance4 kwa pvr
- VK_KHR_pipeline_executable_properties kwa pvr
- Kitambulisho_cha_sasa_cha_VK_KHR cha panvk, v3dv
- VK_KHR_present_wait kwa panvk, v3dv
- Ubadilishaji wa VK_KHR_sampler_ycbcr_kwa pvr
- VK_KHR_shader_integer_dot_product kwa pvr
- Viashiria_visivyo na herufi_za_VK_KHR_shader_vya_panvk
- Umbizo_la_VK_KHR_swapchain_mutable_kwa ajili ya panvk
- Usindikaji_wa_picha_wa_VK_QCOM kwa Turnip
- Aina_ya_kielezi_cha_VK_VALVE_mutable_kwa ajili ya panvk
- VK_VALVE_shader_mixed_float_dot_product kwa RADV (Vega20, Navi14, RDNA2+)
- Viendelezi vya OpenCL vimetekelezwa:
- cl_khr_subgroup_ballot kwa asahi, iris, llvmpipe, radeonsi na zink
- cl_xr_subgroup_clustered_reduce kwa ajili ya asahi, llvmpipe, radeonsi, na zink
- cl_khr_subgroup_extended_types kwa ajili ya asahi, iris, llvmpipe, radeonsi na zink
- cl_khr_subgroup_non_uniform_arithmetic for asahi, llvmpipe, radeonsi na zink
- cl_khr_subgroup_non_uniform_vote for asahi, iris, llvmpipe, radeonsi na zink
- cl_khr_subgroup_rotate kwa ajili ya asahi, llvmpipe na zink
- Kiendeshi cha VirGL, ambacho hutekeleza GPU pepe kwa QEMU, hakijatunzwa tena na kitaondolewa isipokuwa mtu yeyote yuko tayari kuchukua matengenezo yake.
Chanzo: opennet.ru
