Paglabas ng Mesa 20.1.0, isang libreng pagpapatupad ng OpenGL at Vulkan

Ipinasa ni paglabas ng isang libreng pagpapatupad ng OpenGL at Vulkan API - Mesa 20.1.0. Ang unang paglabas ng sangay ng Mesa 20.1.0 ay may pang-eksperimentong katayuan - pagkatapos ng panghuling pag-stabilize ng code, isang stable na bersyon 20.1.1 ang ilalabas. Sa Mesa 20.1 ipinatupad buong OpenGL 4.6 support para sa Intel (i965, iris) at AMD (radeonsi) GPUs, OpenGL 4.5 support para sa AMD (r600) at NVIDIA (nvc0) GPUs, OpenGL 4.3 para sa virgl (virtual GPU Virgil3D para sa QEMU/KVM), pati na rin ang suporta ng Vulkan 1.2 para sa mga Intel at AMD card.

sa mga pagbabago:

  • Idinagdag Isang aktibong layer ng pagpili ng device para sa Vulkan API sa mga system na may maraming Vulkan-enabled GPU, gumagana nang katulad sa DRI_PRIME para sa OpenGL. Upang piliin ang aktibong driver at GPU, ang MESA_VK_DEVICE_SELECT environment variable ay ibinigay (kung hindi naka-install, DRI_PRIME ang ginagamit).
  • Ang suporta para sa mga chips na inaasahan sa susunod na taon batay sa bagong microarchitecture ay idinagdag sa i965 at iris driver para sa mga Intel GPU rocket lake.
  • Ang driver ng ANV Vulkan ay binuo para sa mga Intel GPU idinagdag pag-optimize para sa mga chips batay sa Icelake microarchitecture (Gen11), na nagpapahintulot sa paggamit ng mga purong kulay kapag nag-texture. Kapag sinubukan sa Dota2, binawasan ng pagbabago ang bilang ng mga pagpapatakbo ng conversion ng kulay ng 95% at tumaas ang performance ng 3.5%.
  • Sa driver ng Vulkan ANV nadagdagan kahusayan ng paggamit ng cache sa mga system na may Intel Ivybridge at Haswell chips. Ang paggamit ng Vulkan compute function tests mula sa Geekbench 5 ay nagpakita ng pagtaas ng performance ng 330% sa Haswell GT3 hardware (isang pagtaas dahil sa ang katunayan na dati ang cache ay hindi ginamit sa ilang mga kundisyon).
  • Mga driver para sa mga Intel GPU (i965, IRIS) dagdag pa "black hole" mode (OpenGL extension INTEL_blackhole_render), na hindi pinapagana ang lahat ng pagpapatakbo ng pag-render na ipinadala ng GPU, ngunit pinapanatili ang pagproseso ng mga operasyon ng OpenGL.
  • Ang suporta sa Vectorization na dating idinagdag para sa AMD chips ay nai-port para sa Intel graphics chips NIR, isang walang uri na intermediate representation (IR) ng mga shader na naglalayong magtrabaho sa pinakamababang antas, sa ilalim ng GLSL IR at panloob na IR ng Mesa. Sa praktikal na bahagi, dahil sa mas mahusay na pag-optimize ng mga shader, ang pagbabago ay naging posible upang mapataas ang pagganap ng OpenGL at Vulkan sa maraming mga laro sa mga system na may mga Intel GPU. Halimbawa, sa laro
    Paglabas ng Tomb Raider nabanggit pagtaas ng performance ng 3%, at sa Shadow of the Tomb Raider ng 10%.

  • Sa backend para sa pag-compile ng mga shader "ACOβ€œ, na binuo ng Valve bilang alternatibo sa LLVM shader compiler, ang suporta para sa shaderInt9 type ay idinagdag para sa GFX16+ GPU, na nagpapahintulot sa paggamit ng 16-bit integer sa shader code. Para sa
    AMD Navi GPU (GFX10) secured paggamit ng NGG (Next-Gen Geometry) engine kapag nagtatrabaho sa vertex at tessellation shaders.

  • Para sa mga AMD Navi 12 at Navi 14 GPU kasama suporta para sa ipinapakitang DCC (Delta Color Compression) mode, na nagsisigurong gumagana sa naka-compress na data ng kulay kapag nag-aayos ng display output.
  • Idinagdag pang-eksperimentong suporta sa NIR para sa klasikong Gallium3D driver na R600 (AMD Radeon HD 2000-6000) na may suporta para sa geometric, fragment, vertex at tessellation mga shader.
  • Driver ng Vulkan RADV dagdag pa Isang patch na nagpapahusay sa pagganap ng mga laro ng Id Tech sa mga system na may mga AMD APU sa pamamagitan ng pag-optimize ng pamamahala ng memorya.
  • Sa driver ng Panfrost ipinatupad pang-eksperimentong suporta para sa OpenGL ES 3.0 at ibinigay Suporta sa pag-render ng 3D para sa Bifrost GPU (Mali G31). Ang isang paunang pagpapatupad ng isang shader compiler ay inihanda na sumusuporta sa isang Bifrost GPU-specific na hanay ng mga panloob na tagubilin.
  • Ang Vulkan driver na TURNIP, na binuo para sa Qualcomm Adreno GPUs, idinagdag suporta para sa geometry shaders at Adreno 650 chips.
  • Sa Gallium3D driver LLVMpipe, na nagbibigay ng software rendering, lumitaw suporta para sa tessellation shaders.
  • Ipinakilala большая isang bahagi mga pag-optimize sa glthread (multithreaded na pagpapatupad ng OpenGL). Pagkatapos gawin ang mga pagbabago, tumaas ang performance ng Torcs racing simulator ng 16% sa default na configuration at ng 40% kapag pinagana ang glthread.
  • Idinagdag allow_draw_out_of_order na opsyon (pinagana sa pamamagitan ng driconf) upang paganahin ang mga pag-optimize upang mapabilis ang mga operasyon sa pagguhit na wala sa order na partikular sa CAD. Kapag pinagana ang opsyong ito, makikita ang 11% acceleration sa Viewperf7 Catia test.
  • Nagdagdag ng mga bagong extension ng OpenGL:
  • Nagdagdag ng mga extension sa RADV Vulkan driver (para sa AMD card):
  • Nagdagdag ng mga extension sa driver ng ANV Vulkan (para sa mga Intel card):

    Pinagmulan: opennet.ru

Magdagdag ng komento