RADV Vulkan bílstjóri hefur verið skipt yfir til að nota ACO shader safnbakenda

Í kóðagrunninum sem notaður var til að mynda Mesa 20.2 útgáfuna, komið til framkvæmda að skipta um RADV, Vulkan rekilinn fyrir AMD flís, til að nota sjálfgefna bakendann til að setja saman shaders "ACO“, sem er þróað af Valve sem valkost við LLVM shader þýðanda. Þessi breyting mun leiða til aukinnar frammistöðu leikja og styttri ræsingartíma. Til að skila gamla bakendanum er umhverfisbreytan „RADV_DEBUG=llvm“ gefin upp.

Að skipta um RADV rekilinn yfir í nýja bakendann varð mögulegt eftir að ACO náði jöfnuði í virkni við gamla bakendann sem þróaður var af AMD fyrir AMDGPU bílstjórann, sem er áfram notaður í RadeonSI OpenGL reklum. Prófun af Valve í ljósað ACO er næstum tvöfalt hraðari en AMDGPU shader þýðandinn hvað varðar safnhraða og sýnir aukningu á FPS í sumum leikjum þegar keyrt er á kerfum með RADV drivernum.

RADV Vulkan bílstjóri hefur verið skipt yfir til að nota ACO shader safnbakenda

RADV Vulkan bílstjóri hefur verið skipt yfir til að nota ACO shader safnbakenda

ACO bakendinn miðar að því að útvega kóðagerð sem er eins ákjósanlegur og hægt er fyrir skyggingaraðila leikjaforrita, auk þess að ná mjög miklum söfnunarhraða. ACO er skrifað í C++, hannað með JIT samantekt í huga og notar hraðvirkt endurtekið gagnaskipulag og forðast mannvirki sem byggja á bendi. Milliframsetning kóðans er algjörlega byggð á SSA (Static Single Assignment) og gerir skrárúthlutun kleift með því að reikna skrána nákvæmlega út eftir skugganum.

Viðbót: Í augnablikinu virkar ACO aðeins fyrir Mesa RADV Vulkan bílstjórann. En ACO verktaki staðfestað næsta skref þeirra verði að hefja vinnu við að stækka getu ACO til að styðja RadeonSI OpenGL ökumanninn, þannig að í framtíðinni, fyrir þennan ökumann, geti ACO komið í stað sjálfgefna LLVM shader þýðandans.

Heimild: opennet.ru

Bæta við athugasemd