Չորս ամիս մշակումից հետո հրապարակվեց OpenGL և Vulkan API-ների անվճար ներդրման թողարկումը՝ Mesa 21.3.0: Mesa 21.3.0 մասնաճյուղի առաջին թողարկումն ունի փորձնական կարգավիճակ՝ կոդի վերջնական կայունացումից հետո կթողարկվի կայուն 21.3.1 տարբերակը:
Mesa 21.3-ը ներառում է OpenGL 4.6-ի ամբողջական աջակցություն 965, iris (Intel), radeonsi (AMD), zink և llvmpipe վարորդների համար: OpenGL 4.5-ի աջակցությունը հասանելի է AMD (r600) և NVIDIA (nvc0) GPU-ների համար, իսկ OpenGL 4.3-ի աջակցությունը virgl-ի համար (Virgil3D վիրտուալ GPU QEMU/KVM-ի համար): Vulkan 1.2-ի աջակցությունը հասանելի է Intel և AMD քարտերի համար, ինչպես նաև էմուլատորի ռեժիմում (vn) և լավափիփ ծրագրաշարի ռաստերիզատորում, Vulkan 1.1-ի աջակցությունը հասանելի է Qualcomm GPU-ի և lavapipe ծրագրաշարի ռաստերիզատորի համար, իսկ Vulkan 1.0-ը հասանելի է Broadcom-ի համար: VideoCore VI GPU (Raspberry Pi 4):
Հիմնական նորամուծությունները.
- Zink դրայվերը (OpenGL API-ի ներդրում Vulkan-ի վերևում, որը թույլ է տալիս ստանալ ապարատային արագացված OpenGL, եթե համակարգն ունի միայն Vulkan API-ի աջակցությամբ սահմանափակված դրայվերներ) աջակցում է OpenGL ES 3.2:
- Panfrost դրայվերը, որը նախատեսված է Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) և Bifrost (Mali G3x, G5x, G7x) միկրոճարտարապետությունների վրա հիմնված GPU-ների հետ աշխատելու համար, պաշտոնապես հավաստագրված է OpenGL ES 3.1-ի հետ համատեղելիության համար:
- V3dv դրայվերը, որը մշակվել է VideoCore VI գրաֆիկական արագացուցիչի համար, որն օգտագործվում է սկսած Raspberry Pi 4 մոդելից, ունի վավերացված աջակցություն Vulkan 1.1 գրաֆիկական API-ի համար, ինչպես նաև ավելացրել է աջակցություն երկրաչափական ստվերների համար: Շեյդեր կոմպիլյատորի կողմից ստեղծված կոդի կատարումը զգալիորեն բարելավվել է, ինչը դրական է ազդում ծրագրերի արագության վրա, որոնք ակտիվորեն օգտագործում են շեյդերներ, օրինակ՝ Unreal Engine 4-ի վրա հիմնված խաղերը:
- RADV Vulkan դրայվերը (AMD) ավելացրել է փորձնական աջակցություն ճառագայթների հետագծման և ճառագայթների հետագծման ստվերների համար: GFX10.3 քարտերի համար լռելյայն միացված է NGG (Next-Gen Geometry) ստվերային շարժիչների միջոցով պարզունակ ոչնչացման աջակցությունը:
- Iris OpenGL դրայվերը (նոր դրայվեր Intel GPU-ների համար) ավելացրել է բազմաշերտ ստվերային կոմպիլյացիայի հնարավորություն:
- Լավափիփ դրայվերը, որն իրականացնում է ծրագրաշարի ռաստերիզատոր Vulkan API-ի համար (նման է llvmpipe-ին, բայց Vulkan-ի համար՝ թարգմանելով Vulkan API-ի զանգերը Gallium API-ին), ներդրել է անիզոտրոպ հյուսվածքների զտման աջակցություն և ավելացրել է աջակցություն Vulkan 1.2-ին:
- OpenGL դրայվեր llvmpipe-ը, որը նախատեսված է ծրագրային ապահովման մատուցման համար, 2-3 անգամ ավելացրել է կատարումը 2D գործողությունների հետ կապված գործողություններ կատարելիս: Ավելացվել է FP16 գործողությունների աջակցություն, անիզոտրոպ հյուսվածքային զտիչ (GL_ARB_texture_filter_anisotropic) և ամրացված հիշողության տարածքներ (GL_AMD_pinned_memory): Աջակցություն OpenGL 4.5 համատեղելիության պրոֆիլին տրամադրվում է:
- VA-API (Video Acceleration API) վիճակային թրեյքերն ապահովում է AV1 վիդեո կոդավորման և ապակոդավորման արագացման աջակցություն AMD GPU դրայվերներ օգտագործելիս:
- EGL-ի աջակցությունն իրականացվել է Windows հարթակի համար:
- Ավելացված է աջակցություն Wayland-ի EGL_EXT_present_opaque ընդլայնման համար: Վեյլենդի արձանագրության վրա հիմնված միջավայրերում աշխատող խաղերում թափանցիկության ցուցադրման հետ կապված խնդիրները լուծվել են:
- Ավելացվել է RADV (AMD), ANV (Intel) և lavapipe Vulkan վարորդների ընդլայնումների աջակցություն.
- VK_EXT_shader_atomic_float2 (Intel, RADV):
- VK_EXT_vertex_input_dynamic_state (RADV):
- VK_EXT_primitive_topology_list_restart (RADV, lavapipe):
- VK_KHR_shader_integer_dot_product (RADV):
- VK_KHR_synchronization2 (Intel):
- VK_KHR_maintenance4 (RADV):
- VK_KHR_format_feature_flags2 (RADV):
- VK_KHR_shader_subgroup_extended_types (lavapipe):
- VK_KHR_spirv_1_4 (լավապիպ):
- VK_KHR_timeline_semaphore (լավապիպ):
- VK_EXT_external_memory_host (լավապիպ):
- VK_KHR_depth_stencil_resolve (լավապիպ):
- VK_KHR_shader_float16_int8 (լավապիպ):
- VK_EXT_color_write_enable (լավապիպ):
Source: opennet.ru