RADV Vulkan mutyairi akachinjirwa kushandisa ACO shader compilation backend

Mune iyo codebase inoshandiswa kugadzira iyo Mesa 20.2 kuburitswa, itwa kushandura RADV, mutyairi weVulkan we AMD machipisi, kushandisa iyo yakasarudzika yekuunganidza shaders "ACO", iyo iri kuvandudzwa neValve seimwe nzira kune LLVM shader compiler. Shanduko iyi ichatungamira mukuwedzera kwekuita kwemutambo uye kuderedzwa kwekutanga nguva. Kudzosa iyo yekare backend, iyo nharaunda inosiyana "RADV_DEBUG=llvm" inopihwa.

Kuchinjira mutyairi weRADV kuenda kubackend nyowani kwakagoneka mushure mekunge ACO yawana parity mukushanda neiyo yekare backend yakagadzirwa ne AMD yemutyairi we AMDGPU, iyo inoramba ichishandiswa muRadeonSI OpenGL mutyairi. Kuedzwa neValve kwaratidzwakuti ACO inomhanya zvakapetwa kaviri se AMDGPU shader compiler maererano nekumhanyisa kumhanya uye inoratidza kuwedzera kweFPS mune mimwe mitambo kana uchimhanya pamasystem ane RADV mutyairi.

RADV Vulkan mutyairi akachinjirwa kushandisa ACO shader compilation backend

RADV Vulkan mutyairi akachinjirwa kushandisa ACO shader compilation backend

Iyo ACO backend yakanangana nekupa kodhi chizvarwa icho chakanyanya sezvinobvira kumitambo application shaders, pamwe nekuwana yakanyanya kukurumidza kuunganidza. ACO yakanyorwa muC ++, yakagadzirwa neJIT kuunganidzwa mupfungwa, uye inoshandisa kukurumidza iterative data zvimiro, kudzivirira inongedzo-yakavakirwa zvimiro. Iyo yepakati inomiririra kodhi yakavakirwa zvachose paSSA (Static Single Assignment) uye inobvumira kugoverwa kwerejista nekunyatso kufanoverengera rejista zvichienderana neshader.

Kuwedzera: Parizvino, ACO inongoshanda kuMesa RADV Vulkan driver. Asi ACO vagadziri yakasimbiswakuti nhanho yavo inotevera ichave yekutanga basa rekuwedzera kugona kweACO kutsigira mutyairi weRadeonSI OpenGL, kuitira kuti mune ramangwana, kumutyairi uyu, ACO inogona kutsiva iyo default LLVM shader compiler.

Source: opennet.ru

Voeg