Companyia de vàlvules
Un cop finalitzades les proves i finalitzada la funcionalitat, es preveu que l'ACO s'ofereixi per incloure's a la composició principal de Mesa.
El codi proposat per Valve té com a objectiu proporcionar una generació de codi el més òptima possible per als shaders d'aplicacions de jocs, així com aconseguir una velocitat de compilació molt alta. El compilador shader de Mesa utilitza components LLVM, que no proporcionen la velocitat de compilació desitjada i no permeten el control total del flux de control, que ha provocat errors greus en el passat. A més, allunyar-se de LLVM permet implementar anàlisis de discrepàncies més agressius i un control més fi de la càrrega del registre, que permet generar executables més eficients.
ACO està escrit en C++, dissenyat tenint en compte la compilació JIT i utilitza estructures de dades iteratives ràpides, evitant estructures basades en punters com ara llistes enllaçades i cadenes d'ús predeterminat. La representació del codi intermedi es basa completament en
Actualment, només els ombrejats de píxels (fragment) i de càlcul són compatibles amb les GPU AMD discretes (dGPU VI+). No obstant això, ACO ja recull correctament els shaders per a tots els jocs provats, inclosos els complexos shaders de Shadow of the Tomb Raider i Wolfenstein II. El prototip ACO proposat per a la prova és gairebé el doble de ràpid que el compilador d'ombres AMDGPU en termes de velocitat de compilació i demostra un augment de FPS en alguns jocs quan s'executen en sistemes amb el controlador RADV.
Font: opennet.ru