Ventiili ettevõte
Kui testimine on lõppenud ja funktsionaalsus on lõpule viidud, plaanitakse ACO-d lisada Mesa põhikoosseisu.
Valve pakutud koodi eesmärk on pakkuda mängurakenduste varjutajate jaoks võimalikult optimaalset koodi genereerimist, samuti saavutada väga kõrge kompileerimiskiirus. Mesa varjundikompilaator kasutab LLVM-i komponente, mis ei taga soovitud kompileerimiskiirust ega võimalda varem tõsiseid vigu põhjustanud juhtvoogu täielikult kontrollida. Lisaks võimaldab LLVM-ist eemaldumine rakendada agressiivsemat lahknevusanalüüsi ja registrikoormuse peenemat kontrolli, mis võimaldab genereerida tõhusamaid käivitatavaid faile.
ACO on kirjutatud C++ keeles, loodud JIT-i kompileerimist silmas pidades ning kasutab kiireid iteratiivseid andmestruktuure, vältides osutipõhiseid struktuure, nagu lingitud loendid ja def-use ahelad. Vahepealne koodi esitus põhineb täielikult
Praegu toetavad diskreetsed AMD GPU-d (dGPU VI+) ainult pikslite (fragmentide) ja arvutusvarjundeid. Kuid ACO kogub juba õigesti varjutajaid kõigi testitud mängude jaoks, sealhulgas Shadow of the Tomb Raideri ja Wolfenstein II keerukate varjundite jaoks. Testimiseks pakutav ACO prototüüp on kompileerimiskiiruselt peaaegu kaks korda kiirem kui AMDGPU varjundikompilaator ja näitab mõne mängu FPS-i suurenemist, kui see töötab RADV-draiveriga süsteemides.
Allikas: opennet.ru