Нашри Mesa 21.2, татбиқи ройгони OpenGL ва Vulkan

Пас аз се моҳи таҳия, нашри татбиқи ройгони API-ҳои OpenGL ва Vulkan, Mesa 21.2.0 нашр шуд. Нашри аввалини филиали Mesa 21.2.0 дорои мақоми таҷрибавӣ мебошад - пас аз ба эътидол овардани ниҳоии код, версияи устувори 21.2.1 бароварда мешавад.

Mesa 21.2 дорои дастгирии пурраи OpenGL 4.6 барои драйверҳои 965, iris (Intel), radeonsi (AMD), zink ва llvmpipe мебошад. Дастгирии OpenGL 4.5 барои GPU-ҳои AMD (r600) ва NVIDIA (nvc0) ва OpenGL 4.3 барои virgl (GPU виртуалии Virgil3D барои QEMU/KVM) дастрас аст. Дастгирии Vulkan 1.2 барои кортҳои Intel ва AMD, инчунин дар реҷаи эмулятор (vn), дастгирии Vulkan 1.1 барои Qualcomm GPU ва растеризатори нармафзори lavapipe ва Vulkan 1.0 барои Broadcom VideoCore VI (Raspberry Pi 4) GPU дастрас аст.

Навовариҳои асосӣ:

  • Ронандаи asahi OpenGL бо дастгирии ибтидоии GPU, ки дар микросхемаҳои Apple M1 дода шудааст, дохил карда шудааст. Драйвер интерфейси Gallium-ро истифода мебарад ва аксари хусусиятҳои OpenGL 2.1 ва OpenGL ES 2.0-ро дастгирӣ мекунад, аммо ҳанӯз барои иҷро кардани аксари бозиҳо мувофиқ нест. Рамзи ронанда ба драйвери Noop истинод Gallium асос ёфтааст ва баъзе кодҳо аз драйвери Panfrost барои ARM Mali GPU таҳия шудааст.
  • Ронандаи Crocus OpenGL бо дастгирии GPU-ҳои кӯҳнаи Intel дохил карда шудааст (дар асоси микроархитектураҳои Gen4-Gen7), ки аз ҷониби драйвери Iris дастгирӣ намешавад. Баръакси драйвери i965, драйвери нав ба меъмории Gallium3D асос ёфтааст, ки вазифаҳои идоракунии хотираро ба драйвери DRI дар ядрои Linux аутсорсинг медиҳад ва як трекери давлатиро бо дастгирии кэши такрории объекти баромад таъмин мекунад.
  • Драйвери PanVk барои дастгирии API графикии Vulkan барои ARM Mali Midgard ва Bifrost GPUs дохил карда шудааст. PanVk аз ҷониби кормандони Collabora таҳия шудааст ва ҳамчун идомаи таҳияи лоиҳаи Panfrost ҷойгир шудааст, ки дастгирии OpenGL-ро таъмин мекунад.
  • Драйвери Panfrost барои GPU Midgard (Mali T760 ва навтар) ва GPU Bifrost (Mali G31, G52, G76) OpenGL ES 3.1 -ро дастгирӣ мекунад. Нақшаҳои минбаъда корҳоро оид ба баланд бардоштани самаранокӣ дар чипҳои Bifrost ва дастгирии GPU-ҳо дар асоси меъмории Valhall (Mali G77 ва навтар) дар бар мегиранд.
  • Сохтаҳои 32-бит барои меъмории x86 ба ҷои дастурҳои x87 барои ҳисобҳои математикӣ дастурҳои sse2-ро истифода мебаранд.
  • Драйвери Nouveau nv50 барои NVIDIA GT21x GPU (GeForce GT 2x0) OpenGL ES 3.1 -ро дастгирӣ мекунад.
  • Драйвери TURNIP Vulkan ва драйвери Freedreno OpenGL, ки барои GPUs Qualcomm Adreno таҳия шудааст, барои GPUs Adreno a6xx gen4 (a660, a635) дастгирии ибтидоӣ доранд.
  • Ба драйвери RADV (AMD) Vulkan дастгирӣ барои нобудсозии ибтидоӣ бо истифода аз муҳаррикҳои шейдери NGG (Next-Gen Geometry) илова карда шудааст. Қобилияти сохтани драйвери RADV дар платформаи Windows бо истифода аз компилятори MSVC амалӣ карда шуд.
  • Ронандаи ANV Vulkan (Intel) ва ронандаи Iris OpenGL барои дастгирии кортҳои графикии Intel Xe-HPG (DG2) омодагӣ диданд. Ин хусусиятҳои ибтидоии марбут ба пайгирии рентген ва дастгирии shader барои пайгирии рентгенро дар бар мегирад.
  • Драйвери lavapipe бо татбиқи растеризатори нармафзор барои API Vulkan (монанд ба llvmpipe, аммо барои Vulkan, ки зангҳои API-и Vulkanро ба Gallium API тарҷума мекунад) режими "wideLines" -ро дастгирӣ мекунад (барои хатҳои паҳнои аз 1.0 калонтарро дастгирӣ мекунад) ).
  • Дастгирии амалӣ барои кашфи динамикӣ ва боркунии пуштибонии алтернативии GBM (Generic Buffer Manager). Ҳадафи ин тағирот беҳтар кардани дастгирии Wayland дар системаҳо бо драйверҳои NVIDIA мебошад.
  • Драйвери Zink (таҷрибаи OpenGL API дар болои Vulkan, ки ба шумо имкон медиҳад, ки сахтафзори тезонидашудаи OpenGL-ро ба даст оред, вақте ки система дорои драйверҳо бо дастгирии танҳо API Vulkan маҳдуд аст) васеъшавии OpenGL-ро GL_ARB_sample_locations, GL_ARB_sparse_buffer, GL_ARB_shader_Lmaxfilm, GL_ARB_shader_LVARB__B___ дастгирӣ мекунад. соати _шадер. Тағирдиҳандаҳои формати DRM илова карда шуданд (Менеҷери Rendering Direct, васеъшавии VK_EXT_image_drm_format_modifier дохил карда шудааст).
  • Дастгирии иловашуда барои васеъшавӣ ба драйверҳои RADV (AMD), ANV (Intel) ва lavapipe Vulkan:
    • VK_EXT_provoking_vertex (RADV);
    • VK_EXT_extended_dynamic_state2 (RADV);
    • Дархости VK_EXT_global_priority (RADV);
    • VK_EXT_fisical_device_drm (RADV);
    • VK_KHR_shader_subgroup_uniform_control_flow (RADV, ANV);
    • VK_EXT_color_write_enable (RADV);
    • VK_EXT_acquire_drm_display (RADV, ANV);
    • VK_EXT_vertex_input_dynamic_state(lavapipe);
    • VK_EXT_line_rasterization(lavapipe);
    • VK_EXT_multi_draw(ANV, lavapipe, RADV);
    • Тарҳҳои VK_KHR_ҷудо_умқи_трафарет (lavapipe);
    • VK_EXT_separate_stencil_usage(lavapipe);
    • VK_EXT_extended_dynamic_state2 (lavapipe).

Манбаъ: opennet.ru

Илова Эзоҳ