Ventilfirma
Efter afprøvning er afsluttet, og funktionaliteten er forfinet, planlægges ACO at blive tilbudt til inklusion i hovedsammensætningen af Mesa.
Valves foreslåede kode har til formål at sikre, at kodegenerering er så optimal som muligt for spilapplikationsskyggere, samt at opnå meget høje kompileringshastigheder. Mesas shader-kompiler bruger LLVM-komponenter, der ikke opnår den ønskede kompileringshastighed og ikke tillader fuld kontrol af flowkontrol, hvilket allerede har forårsaget alvorlige fejl tidligere. Derudover giver det at flytte væk fra LLVM mulighed for mere aggressiv uoverensstemmelsesanalyse og mere finkornet kontrol over registerindlæsning, hvilket gør det muligt at generere mere effektive eksekverbare filer.
ACO er skrevet i C++, designet med JIT-kompilering i tankerne og bruger datastrukturer, der hurtigt kan gentages, og undgår pointer-baserede strukturer såsom linkede lister og def-use kæder. Mellemkoderepræsentation er udelukkende baseret på
I øjeblikket understøttes kun pixel (fragment) og compute shaders på diskrete AMD GPU'er (dGPU VI+). ACO bygger dog allerede korrekt shaders til alle testede spil, inklusive komplekse shaders fra Shadow of the Tomb Raider og Wolfenstein II. ACO-prototypen, der foreslås til test, er næsten dobbelt så hurtig som AMDGPU shader-kompileren og demonstrerer en stigning i FPS i nogle spil, når de kører på systemer med RADV-driveren.
Kilde: opennet.ru