Upravljački program RADV Vulkan je prebačen da koristi pozadinu kompilacije ACO shadera

U bazi koda korištenoj za formiranje izdanja Mesa 20.2, provedeno prebacivanje RADV-a, Vulkan upravljačkog programa za AMD čipove, za korištenje zadane pozadine za kompajliranje shadera "ACO“, koji razvija Valve kao alternativu LLVM shader compiler-u. Ova će promjena dovesti do povećanja performansi igre i smanjenog vremena pokretanja. Da biste vratili stari backend, osigurana je varijabla okruženja “RADV_DEBUG=llvm”.

Prebacivanje RADV drajvera na novu pozadinu postalo je moguće nakon što je ACO postigao paritet u funkcionalnosti sa starom pozadinom koju je razvio AMD za AMDGPU drajver, a koji se i dalje koristi u RadeonSI OpenGL drajveru. Testirao Valve objavida je ACO gotovo dvostruko brži od AMDGPU shader kompajlera u smislu brzine kompilacije i pokazuje povećanje FPS-a u nekim igrama kada se izvode na sustavima s RADV drajverom.

Upravljački program RADV Vulkan je prebačen da koristi pozadinu kompilacije ACO shadera

Upravljački program RADV Vulkan je prebačen da koristi pozadinu kompilacije ACO shadera

ACO pozadina je usmjerena na pružanje generiranja koda koji je što je moguće optimalniji za shadere aplikacija za igre, kao i na postizanje vrlo velike brzine kompilacije. ACO je napisan u C++, dizajniran imajući na umu JIT kompilaciju i koristi brze iterativne strukture podataka, izbjegavajući strukture temeljene na pokazivačima. Srednji prikaz koda u potpunosti se temelji na SSA (Static Single Assignment) i omogućuje dodjelu registara točnim predizračunom registra ovisno o shaderu.

Dodatak: Trenutno ACO radi samo za upravljački program Mesa RADV Vulkan. Ali ACO programeri potvrdioda će njihov sljedeći korak biti početak rada na proširenju ACO-ovih mogućnosti za podršku RadeonSI OpenGL drajvera, tako da u budućnosti, za ovaj drajver, ACO može zamijeniti zadani LLVM shader kompajler.

Izvor: opennet.ru

Dodajte komentar