Liberigo de Mesa 20.1.0, senpaga efektivigo de OpenGL kaj Vulkan

Enkondukita liberigo de senpaga efektivigo de la OpenGL kaj Vulkan API - Mesa 20.1.0. La unua eldono de la branĉo Mesa 20.1.0 havas eksperimentan statuson - post la fina stabiligo de la kodo, stabila versio 20.1.1 estos publikigita. En Mesa 20.1 efektivigita plena OpenGL 4.6 subteno por Intel (i965, iriso) kaj AMD (radeonsi) GPUoj, OpenGL 4.5 subteno por AMD (r600) kaj NVIDIA (nvc0) GPUoj, OpenGL 4.3 por virgl (virtuala GPU) Vergilio3D por QEMU/KVM), same kiel Vulkan 1.2-subteno por Intel kaj AMD-kartoj.

Inter la ŝanĝoj:

  • Aldonita Aktiva aparato elekta tavolo por la Vulkan API en sistemoj kun multoblaj Vulkan-ebligitaj GPU-oj, funkciante simile al DRI_PRIME por OpenGL. Por elekti la aktivan pelilon kaj GPU, la mediovariablo MESA_VK_DEVICE_SELECT estas provizita (se ne instalita, DRI_PRIME estas uzata).
  • Subteno por blatoj atendata venontjare surbaze de la nova mikroarkitekturo estis aldonita al la i965 kaj iris-ŝoforoj por Intel GPU-oj Raketa Lago.
  • La ANV Vulkan-ŝoforo estanta evoluigita por Intel-GPUoj aldonis Optimumigo por fritoj bazitaj sur la Icelake-mikroarkitekturo (Gen11), permesante la uzon de puraj koloroj dum teksado. Se testita en Dota2, la ŝanĝo reduktis la nombron da kolorkonvertaj operacioj je 95% kaj pliigis rendimenton je 3.5%.
  • En la Vulkan ANV-ŝoforo pliiĝis efikeco de kaŝmemoruzo sur sistemoj kun Intel Ivybridge kaj Haswell-blatoj. Uzante la Vulkan-komputilajn funkciotestojn de Geekbench 5 montris rendimentan pliiĝon de 330% sur Haswell GT3-aparataro (pliiĝo pro la fakto, ke antaŭe la kaŝmemoro ne estis uzata en iuj kondiĉoj).
  • Ŝoforoj por Intel GPU-oj (i965, iriso) aldonis "nigra truo" reĝimo (OpenGL etendo INTEL_blackhole_render), kiu malŝaltas ĉiujn bildigajn operaciojn elsenditajn de la GPU, sed konservas la prilaboradon de OpenGL-operacioj.
  • Vektoriga subteno antaŭe aldonita por AMD-fritoj estis adaptita por Intel-grafikaj blatoj NIR, senspeca meza reprezentado (IR) de ombrantoj celitaj kontraŭ laborado sur la plej malsupra nivelo, sub GLSL IR kaj la interna IR de Mesa. En la praktika flanko, pro pli bona optimumigo de ombriloj, la ŝanĝo ebligis pliigi la rendimenton de OpenGL kaj Vulkan en multaj ludoj en sistemoj kun Intel GPU-oj. Ekzemple, en la ludo
    Pliiĝo de la Tomb Raider notis rendimento pliiĝo je 3%, kaj en Shadow of the Tomb Raider je 10%.

  • En la malantaŭo por kompili ombrantojn "AKO", kiu estas disvolvita de Valve kiel alternativo al la LLVM-ombrila kompililo, subteno por la shaderInt9-tipo estis aldonita por la GFX16+ GPU, permesante la uzon de 16-bitaj entjeroj en ombra kodo. Por
    AMD Navi GPU (GFX10) sekurigita uzo de NGG (Next-Gen Geometry) motoroj dum laborado kun vertico kaj teselaciaj ombriloj.

  • Por AMD Navi 12 kaj Navi 14 GPUoj inkluzivita subteno por la montrata DCC (Delta Color Compression) reĝimo, kiu certigas labori kun kunpremitaj kolordatenoj dum organizado de ekranproduktado.
  • Aldonita eksperimenta NIR-subteno por la klasika Gallium3D-ŝoforo R600 (AMD Radeon HD 2000-6000) kun subteno por geometria, fragmento, vertico kaj teselacio ombriloj.
  • Vulkan RADV-ŝoforo aldonis Flikaĵo kiu plibonigas la agadon de Id Tech-ludoj sur sistemoj kun AMD-APU-oj optimumigante memoradministradon.
  • En la Panfrost-ŝoforo efektivigita eksperimenta subteno por OpenGL ES 3.0 kaj provizita Subteno de 3D bildigo por Bifrost GPU (Mali G31). Komenca efektivigo de ombra kompililo estis preparita kiu subtenas Bifrost GPU-specifan aron de internaj instrukcioj.
  • La Vulkan-ŝoforo TURNIP, evoluigita por Qualcomm Adreno-GPUoj, aldonis subteno por geometriaj ombriloj kaj Adreno 650 blatoj.
  • En la Gallium3D-ŝoforo LLVMpipe, kiu disponigas programaran bildigon, aperis subteno por teselaciaj ombriloj.
  • Enkondukita granda porcio optimumigoj en glthread (multfadena efektivigo de OpenGL). Post fari la ŝanĝojn, la agado de la vetkura simulilo Torcs pliiĝis je 16% en la defaŭlta agordo kaj je 40% kiam glthread estis ebligita.
  • Aldonita allow_draw_out_of_order opcio (ebligita per driconf) por ebligi optimumojn por akceli CAD-specifajn eksterordajn desegnajn operaciojn. Kiam ĉi tiu opcio estas ebligita, 11% akcelo estas observita en la Viewperf7 Catia-testo.
  • Aldonitaj novaj OpenGL-etendaĵoj:
  • Aldonitaj etendaĵoj al la RADV Vulkan-ŝoforo (por AMD-kartoj):
  • Aldonitaj etendaĵoj al la ANV Vulkan-ŝoforo (por Intel-kartoj):

    fonto: opennet.ru

Aldoni komenton