Mesa 21.3 kaleratzea, OpenGL eta Vulkan-en doako inplementazioa

Lau hilabeteko garapenaren ondoren, OpenGL eta Vulkan APIen doako inplementazio baten kaleratzea argitaratu zen - Mesa 21.3.0-. Mesa 21.3.0 adarraren lehen bertsioak egoera esperimentala du; kodearen behin betiko egonkortu ondoren, 21.3.1 bertsio egonkorra kaleratuko da.

Mesa 21.3-k OpenGL 4.6rako laguntza osoa dakar 965, iris (Intel), radeonsi (AMD), zink eta llvmpipe kontrolatzaileetarako. OpenGL 4.5 euskarria AMD (r600) eta NVIDIA (nvc0) GPUetarako eskuragarri dago, eta OpenGL 4.3 laguntza virgl (Virgil3D GPU birtuala QEMU/KVMrako). Vulkan 1.2 euskarria Intel eta AMD txarteletarako eskuragarri dago, baita emuladore moduan (vn) eta lavapipe software-rasterizatzailean ere, Vulkan 1.1 euskarria dago Qualcomm GPUrako eta lavapipe software-rasterizatzailerako, eta Vulkan 1.0 Broadcom-erako eskuragarri dago. VideoCore VI GPU (Raspberry Pi 4).

Berrikuntza nagusiak:

  • Zink kontrolatzaileak (OpenGL APIaren inplementazioa Vulkan-en gainean, hardware-azeleratutako OpenGL lortzeko aukera ematen duena sistemak Vulkan APIa soilik onartzera mugatutako kontrolatzaileak baditu) OpenGL ES 3.2 onartzen du.
  • Panfrost kontrolatzailea, Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) eta Bifrost (Mali G3x, G5x, G7x) mikroarkitekturan oinarritutako GPUekin lan egiteko diseinatua, ofizialki ziurtagiria du OpenGL ES 3.1-rekin bateragarritasuna.
  • VideoCore VI azeleragailu grafikorako garatu den v3dv kontrolatzaileak, Raspberry Pi 4 ereduarekin hasita erabiltzen dena, Vulkan 1.1 grafikoen APIrako laguntza ziurtatua du, eta geometria itzalgailuetarako laguntza ere gehitu du. Shader konpilatzaileak sortutako kodearen errendimendua nabarmen hobetu da, eta horrek eragin positiboa du itzalgailuak aktiboki erabiltzen dituzten programen abiaduran, hala nola Unreal Engine 4-n oinarritutako jokoetan.
  • RADV Vulkan kontrolatzaileak (AMD) euskarri esperimentala gehitu du izpien trazadurarako eta izpien trazadurarako itzalgailuetarako. GFX10.3 txarteletarako, lehenespenez gaituta dago NGG (Next-Gen Geometry) itzalgailu-motorren bidez kuling primitiborako laguntza.
  • Iris OpenGL kontrolatzaileak (Intel GPUentzako kontrolatzaile berria) hari anitzeko itzalgailuen konpilaziorako gaitasuna gehitu du.
  • Vulkan APIrako software-rasterizatzaile bat inplementatzen duen lavapipe kontrolatzaileak (llvmpipe-ren antzekoa, baina Vulkan-entzat, Vulkan API deiak Gallium APIra itzultzen dituena) testura anisotropikoen iragazketarako laguntza ezarri du eta Vulkan 1.2rako laguntza gehitu du.
  • OpenGL kontrolatzailea llvmpipe, softwarea errendatzeko diseinatua, 2-3 aldiz handitu du errendimendua 2D eragiketekin lotutako ekintzak egiterakoan. FP16 eragiketetarako euskarria gehitu da, ehundura anisotropikoen iragazketa (GL_ARB_texture_filter_anisotropic) eta ainguratutako memoria-eremuak (GL_AMD_pinned_memory). OpenGL 4.5-ren bateragarritasun-profilerako euskarria eskaintzen da.
  • VA-API (Video Acceleration API) egoera-jarraitzaileak AV1 bideoen kodeketa eta deskodeketa bizkortzeko laguntza eskaintzen du AMD GPU kontrolatzaileak erabiltzean.
  • Windows plataformarako EGL euskarria ezarri da.
  • Wayland-erako EGL_EXT_present_opaque luzapenerako euskarria gehitu da. Wayland protokoloan oinarritutako inguruneetan exekutatzen diren jokoetan gardentasuna bistaratzeko arazoak konpondu dira.
  • Luzapenetarako laguntza gehitu zaie Vulkan RADV (AMD), ANV (Intel) eta lavapipe kontrolatzaileei:
    • VK_EXT_shader_atomic_float2 (Intel, RADV).
    • VK_EXT_vertix_input_dynamic_state (RADV).
    • VK_EXT_primitive_topology_list_rstart (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 (hustubidea).
    • VK_KHR_timeline_semaphore (washpipe).
    • VK_EXT_external_memory_host (lavapipe).
    • VK_KHR_depth_stencil_resolve (lavapipe).
    • VK_KHR_shader_float16_int8 (washpipe).
    • VK_EXT_color_write_enable (washpipe).

Iturria: opennet.ru

Gehitu iruzkin berria