Wydanie Mesa 20.2.0, darmowej implementacji OpenGL i Vulkan

Przesłane przez udostępnienie darmowej implementacji OpenGL i Vulkan API - Mesa 20.2.0. W Mesie 20.2 wdrożone pełna obsługa OpenGL 4.6 dla procesorów graficznych Intel (i965, iris) i AMD (radeonsi), obsługa OpenGL 4.5 dla procesorów graficznych AMD (r600), NVIDIA (nvc0) i llvmpipe, OpenGL 4.3 dla virgl (wirtualny procesor graficzny Wergiliusz3D dla QEMU/KVM), a także obsługę Vulkan 1.2 dla kart Intel i AMD.

Wśród zmiany:

  • W sterowniku lvmpipe, przeznaczony do renderowania oprogramowania, obsługuje OpenGL 4.5.
  • Sterownik RADV Vulkan (dla kart AMD) domyślnie korzysta z kompilatora shaderów "ACO„, który jest rozwijany przez Valve jako alternatywa dla kompilatora modułu cieniującego LLVM. ACO jest napisany w C++, zaprojektowany z myślą o kompilacji JIT i ma na celu zapewnienie generowania kodu możliwie najbardziej optymalnego dla shaderów gier, a także osiągnięcie bardzo wysokich prędkości kompilacji.
  • Dodano wstępną obsługę procesorów graficznych AMD Navi 21 (Navy Flounder) i Navi 22 (Sienna Cichlid).
  • Sterowniki procesorów graficznych Intel poprawiły obsługę układów opartych na mikroarchitekturze Jezioro rakietowe и dodany wstępne wsparcie dla dyskretnych kart Intel Xe DG1.
  • Rozszerzono możliwości sterownika Gallium3D Zink, który implementuje API OpenGL na platformie Vulkan. Zink pozwala uzyskać sprzętowo przyspieszany OpenGL, jeśli system ma sterowniki ograniczone do obsługi tylko API Vulkan.
  • Sterownik Gallium3D Nouveau NVC0 wykorzystuje do obsługi HMM (heterogeniczne zarządzanie pamięcią). OpenCL SVM (Współdzielona pamięć wirtualna).
  • W sterowniku panfrost Ustabilizowano obsługę renderowania 3D dla procesorów graficznych Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx).
  • RadeonSI zawiera ulepszenia związane z wirtualizacją GPU.
  • Dodano obsługę buforowania dyskowego pośredniej reprezentacji TGSI (Tungsten Graphics Shader Infrastructure).
  • Dodano nowe rozszerzenia OpenGL:
    • GL_ARB_compute_variable_group_size dla Intel Iris.
    • GL_ARB_gl_spirv dla Nouveau nvc0.
    • GL_NV_half_float dla Nouveau nvc0.
    • GL_NV_copy_length_to_color dla Nouveau nvc0.
    • GL_ARB_spirv_extensions dla Nouveau nvc0.
    • GL_EXT_shader_group_vote dla llvmpipe.
    • GL_ARB_gpu_shader5 dla llvmpipe.
    • GL_ARB_post_ głębokość_coverage dla llvmpipe.
    • GL_EXT_texture_shadow_lod dla llvmpipe.
  • Dodano obsługę rozszerzenia EGL EGL_KHR_swap_buffers_with_damage (dla X11 DRI3), a także rozszerzeń GLX GLX_EXT_swap_control (DRI2, DRI3) i GLX_EXT_swap_control_tear (DRI3).
  • Dodano rozszerzenia do sterownika RADV Vulkan (dla kart AMD):
    • VK_EXT_4444_formaty
    • VK_KHR_model_pamięci
    • VK_AMD_texture_gather_bias_lod
    • VK_AMD_gpu_shader_half_float
    • VK_AMD_gpu_shader_int16
    • VK_EXT_extended_dynamic_state
    • VK_EXT_image_solidność
    • VK_EXT_prywatne_dane
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_subgroup_size_control
    • VK_GOOGLE_typ_użytkownika
    • VK_KHR_shader_subgroup_extended_types
  • Dodano rozszerzenia do sterownika ANV Vulkan (dla kart Intel):
    • VK_EXT_image_solidność
    • VK_EXT_shader_atomic_float
    • VK_EXT_4444_formaty
    • VK_EXT_extended_dynamic_state
    • VK_EXT_prywatne_dane
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control

Źródło: opennet.ru

Dodaj komentarz