Kutolewa kwa Mesa 20.2.0, utekelezaji wa bure wa OpenGL na Vulkan

Iliyowasilishwa na kutolewa kwa utekelezaji wa bure wa OpenGL na Vulkan API - Mesa 20.2.0. Katika Mesa 20.2 kutekelezwa Usaidizi kamili wa OpenGL 4.6 kwa Intel (i965, iris) na AMD (radeonsi) GPU, msaada wa OpenGL 4.5 kwa AMD (r600), NVIDIA (nvc0) na llvmpipe GPU, OpenGL 4.3 kwa virgl (GPU virtual Virgil3D kwa QEMU/KVM), pamoja na msaada wa Vulkan 1.2 kwa kadi za Intel na AMD.

Miongoni mwa mabadiliko:

  • Katika dereva bomba, iliyoundwa kwa ajili ya utoaji wa programu, inasaidia OpenGL 4.5.
  • Dereva wa RADV Vulkan (kwa kadi za AMD) hutumia mkusanyaji wa shader kwa chaguo-msingi "ACO", ambayo inatengenezwa na Valve kama mbadala kwa mkusanyaji wa shader wa LLVM. ACO imeandikwa kwa C++, iliyoundwa kwa kuzingatia mkusanyiko wa JIT, na inalenga kutoa uundaji wa msimbo ambao ni bora zaidi iwezekanavyo kwa vivuli vya mchezo, na pia kufikia kasi ya juu sana ya ujumuishaji.
  • Imeongeza usaidizi wa awali kwa AMD Navi 21 (Navy Flounder) na Navi 22 (Sienna Cichlid) GPU.
  • Viendeshi vya Intel GPU vimeboresha usaidizi wa chips kulingana na usanifu mdogo Ziwa la roketi ΠΈ aliongeza msaada wa awali kwa kadi za kipekee Intel Xe DG1.
  • Uwezo wa dereva wa Gallium3D umepanuliwa Zink, ambayo hutumia API ya OpenGL juu ya Vulkan. Zink hukuruhusu kupata kasi ya maunzi ya OpenGL ikiwa mfumo una viendeshaji tu vya kuauni API ya Vulkan pekee.
  • Kiendeshaji cha Gallium3D Nouveau NVC0 hutumia HMM (usimamizi wa kumbukumbu tofauti) kusaidia OpenCL SVM (Kumbukumbu Pepe Iliyoshirikiwa).
  • Katika dereva Kiangazio Usaidizi wa uwasilishaji wa 3D kwa Midgard GPUs (Mali-T6xx, Mali-T7xx, Mali-T8xx) umeimarishwa.
  • RadeonSI inajumuisha maboresho yanayohusiana na uboreshaji wa GPU.
  • Usaidizi ulioongezwa kwa caching ya disk ya TGSI (Tungsten Graphics Shader Infrastructure) uwakilishi wa kati.
  • Imeongeza viendelezi vipya vya OpenGL:
    • GL_ARB_compute_variable_group_size kwa Intel Iris.
    • GL_ARB_gl_spirv ya Nouveau nvc0.
    • GL_NV_nusu_float kwa Nouveau nvc0.
    • GL_NV_copy_depth_to_color kwa Nouveau nvc0.
    • Viendelezi vya GL_ARB_spirv vya Nouveau nvc0.
    • GL_EXT_shader_group_vote kwa llvmpipe.
    • GL_ARB_gpu_shader5 ya llvmpipe.
    • GL_ARB_post_depth_coverage kwa llvmpipe.
    • GL_EXT_texture_shadow_lod ya llvmpipe.
  • Usaidizi ulioongezwa wa kiendelezi cha EGL EGL_KHR_swap_buffers_with_damage (kwa X11 DRI3), pamoja na viendelezi vya GLX GLX_EXT_swap_control (DRI2, DRI3) na GLX_EXT_swap_control_tear (DRI3).
  • Viendelezi vilivyoongezwa kwa kiendeshi cha RADV Vulkan (kwa kadi za AMD):
    • Fomati za VK_EXT_4444_
    • Mfano wa kumbukumbu ya VK_KHR_
    • Mchoro wa VK_AMD_kusanya_upendeleo
    • VK_AMD_gpu_shader_nusu_float
    • VK_AMD_gpu_shader_int16
    • Jimbo la VK_EXT_extended_dynamic_state
    • Maana ya jina la jina
    • VK_EXT_data_ya faragha
    • Rangi ya Mpangilio wa VK_EXT_
    • VK_EXT_pipe_creation_cache_control
    • VK_EXT_shader_demote_to_saidie_mwito
    • VK_EXT_sikundi_ya_udhibiti
    • Aina ya Mtumiaji_ya VK_GOOGLE_
    • Aina za VK_KHR_shader_subgroup_extended
  • Imeongeza viendelezi kwa kiendeshi cha ANV Vulkan (kwa kadi za Intel):
    • Maana ya jina la jina
    • VK_EXT_shader_atomic_float
    • Fomati za VK_EXT_4444_
    • Jimbo la VK_EXT_extended_dynamic_state
    • VK_EXT_data_ya faragha
    • Rangi ya Mpangilio wa VK_EXT_
    • VK_EXT_pipe_creation_cache_control

Chanzo: opennet.ru

Kuongeza maoni