Mokhanni oa RADV Vulkan o fetotsoe ho sebelisa ACO shader compilation backend

Ka har'a codebase e sebelisitsoeng ho theha tokollo ea Mesa 20.2, kenngwa tshebetsong ho fetola RADV, mokhanni oa Vulkan bakeng sa li-chips tsa AMD, ho sebelisa mokokotlo oa kamehla bakeng sa ho bokella shaders "ACO", e ntseng e ntlafatsoa ke Valve e le mokhoa o mong oa motlalehi oa LLVM shader. Phetoho ena e tla lebisa ts'ebetsong e eketsehileng ea papali le ho fokotsa nako ea ho qala. Ho khutlisa backend ea khale, ho fanoe ka phetoho ea tikoloho "RADV_DEBUG=llvm".

Ho fetola mokhanni oa RADV ho ea morao-rao e ncha ho ile ha khoneha ka mor'a hore ACO e finyelle tekano ts'ebetsong le mokokotlo oa khale o entsoeng ke AMD bakeng sa mokhanni oa AMDGPU, o ntseng o tsoela pele ho sebelisoa ho mokhanni oa RadeonSI OpenGL. Ho hlahlojoa ka Valve senotsoehore ACO ke hoo e ka bang habeli ka potlako ho feta AMDGPU shader compiler mabapi le lebelo ho bokella le bontša keketseho ea FPS lipapaling tse ling ha matha ka litsamaiso le mokhanni RADV.

Mokhanni oa RADV Vulkan o fetotsoe ho sebelisa ACO shader compilation backend

Mokhanni oa RADV Vulkan o fetotsoe ho sebelisa ACO shader compilation backend

ACO backend e reretsoe ho fana ka tlhahiso ea khoutu e nepahetseng ka hohle kamoo ho ka khonehang bakeng sa li-shader tsa kopo ea lipapali, hammoho le ho finyella lebelo le phahameng haholo la ho bokella. ACO e ngotsoe ka C ++, e entsoeng ka ho bokella JIT ka kelellong, 'me e sebelisa mekhoa e potlakileng ea data, ho qoba mekhoa e thehiloeng ho li-pointer. Boemeli ba mahareng ba khoutu bo thehiloe ka botlalo ho SSA (Static Single Assignment) mme e lumella kabo ea ngoliso ka ho bala ka nepo rejisetara ho latela shader.

Keketso: Hajoale, ACO e sebetsa feela bakeng sa mokhanni oa Mesa RADV Vulkan. Empa bahlahisi ba ACO netefalitsoehore mohato oa bona o latelang e tla ba ho qala mosebetsi oa ho holisa bokhoni ba ACO ho ts'ehetsa mokhanni oa RadeonSI OpenGL, e le hore nakong e tlang, bakeng sa mokhanni enoa, ACO e ka nkela motlalehi oa shader oa LLVM sebaka sa kamehla.

Source: opennet.ru

Eketsa ka tlhaloso