انتشار Mesa 22.3، اجرای رایگان OpenGL و Vulkan

انتشار اجرای رایگان OpenGL و Vulkan API - Mesa 22.3.0 - منتشر شد. اولین نسخه از شعبه Mesa 22.3.0 وضعیت آزمایشی دارد - پس از تثبیت نهایی کد، نسخه پایدار 22.3.1 منتشر خواهد شد.

Mesa 22.3 از API گرافیکی Vulkan 1.3 در درایورهای anv برای پردازنده‌های گرافیکی اینتل، درایورهای radv برای پردازنده‌های گرافیکی AMD، درایورهای tu برای پردازنده‌های گرافیکی کوالکام و حالت شبیه‌ساز (vn) پشتیبانی می‌کند. پشتیبانی از Vulkan 1.1 در شطرنج ساز نرم افزار lavapipe (lvp) و Vulkan 1.0 در درایور v3dv (GPU Broadcom VideoCore VI از Raspberry Pi 4) پیاده سازی شده است.

Mesa همچنین پشتیبانی کامل از OpenGL 4.6 را برای درایورهای 965، iris (اینتل)، radeonsi (AMD)، zink و llvmpipe ارائه می‌کند. پشتیبانی از OpenGL 4.5 برای پردازنده‌های گرافیکی AMD (r600)، NVIDIA (nvc0) و Qualcomm Adreno (freedreno)، OpenGL 4.3 برای virgl (GPU مجازی virgil3D برای QEMU/KVM) و OpenGL 4.2 برای درایور سازمان‌دهی d3d12 (یک لایه برای سازمان‌دهی باز) در دسترس است. روی DirectX 12 کار کنید).

نوآوری های اصلی:

  • درایور freedreno برای پردازنده های گرافیکی Qualcomm Adreno از API گرافیکی OpenGL 4.5 پشتیبانی می کند و درایور شبیه ساز (vn) از Vulkan 1.3 API پشتیبانی می کند.
  • درایور Panfrost توانایی کش کردن سایه زن ها را روی دیسک پیاده سازی می کند و پشتیبانی از پردازنده گرافیکی Mali T620 را اضافه می کند. درایور با مشخصات OpenGL 3.1 و OpenGL ES 3.1 سازگار است.
  • درایور Vulkan RADV (AMD) پشتیبانی از پردازنده‌های گرافیکی GFX11/RDNA3 (سری Radeon RX 7000) را اضافه کرده است. کد ردیابی پرتو بهینه شده است. پشتیبانی از فرمت‌های پیکسلی R8G8B8، B8G8R8 و R16G16B16 و همچنین فرمت‌های بافر راس 64 بیتی اضافه شده است. پشتیبانی برای پرچم ExtendedDynamicState2PatchControlPoints اضافه شده است که پشتیبانی از پسوند VK_EXT_extended_dynamic_state2 را تعیین می کند. Radeon Raytracing Analyzer یکپارچه شده است.
  • این بسته شامل درایور Rusticle با پیاده سازی مشخصات OpenCL 3.0 است که API و پسوندهای زبان C را برای سازماندهی محاسبات موازی چند پلتفرمی تعریف می کند. درایور به زبان Rust نوشته شده است و با استفاده از رابط Gallium ارائه شده در Mesa توسعه یافته است و به عنوان آنالوگ جلویی Clover OpenCL موجود در Mesa عمل می کند. شبدر برای مدت طولانی رها شده است و روستایی به عنوان جایگزین آینده آن قرار گرفته است. پشتیبانی از Rust و rusticl به طور پیش‌فرض غیرفعال است و نیاز به ساختی با گزینه‌های صریح "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021" دارد. هنگام ساخت، کامپایلر rustc، مولد اتصال bindgen، LLVM، SPIRV-Tools و SPIRV-LLVM-Translator به عنوان وابستگی های اضافی مورد نیاز هستند.
  • درایور RadeonSI به طور پیش فرض از رندرینگ چند رشته ای از طریق OpenGL پشتیبانی می کند.
  • Mesa-DB، نوع جدیدی از کش سایه زن را معرفی کرد که داده ها را در یک فایل ذخیره می کند.
  • پشتیبانی اضافه شده برای برنامه های افزودنی OpenGL:
    • GL_ARB_shader_clock برای llvmpipe.
    • GL_KHR_blend_equation_advanced_coherent برای zink.
    • GL_NV_shader_atomic_float برای llvmpipe.
  • پشتیبانی اضافه شده برای افزونه های Vulkan:
    • VK_KHR_shader_clock برای lavapipe.
    • VK_EXT_attachment_feedback_loop_layout برای RADV، lavapipe.
    • VK_KHR_global_priority برای RADV.
    • VK_EXT_load_store_op_none برای RADV.
    • VK_EXT_mutable_descriptor_type برای RADV.
    • VK_EXT_shader_atomic_float برای lvp.
    • VK_EXT_shader_atomic_float2 برای lvp.
    • VK_EXT_image_robustness برای v3dv.
    • VK_EXT_extended_dynamic_state3 برای lavapipe، RADV و ANV.
    • VK_EXT_extended_dynamic_state2 برای RADV.
    • VK_EXT_pipeline_robustness برای v3dv.
    • VK_EXT_mesh_shader برای ANV.

منبع: opennet.ru

اضافه کردن نظر