Společnost Valve
Po dokončení testování a zdokonalení funkčnosti se plánuje, že ACO bude nabídnuto k zahrnutí do hlavního složení Mesa.
Cílem navrženého kódu Valve je zajistit, aby generování kódu bylo co nejoptimálnější pro shadery herních aplikací, a také dosáhnout velmi vysokých rychlostí kompilace. Shader kompilátor Mesa používá komponenty LLVM, které nedosahují požadované rychlosti kompilace a neumožňují plnou kontrolu toku řízení, což již v minulosti způsobilo vážné chyby. Odchod od LLVM navíc umožňuje agresivnější analýzu nesrovnalostí a jemnější kontrolu nad načítáním registrů, což umožňuje generovat efektivnější spustitelné soubory.
ACO je napsáno v C++, navrženo s ohledem na kompilaci JIT a používá datové struktury s rychlým opakováním, přičemž se vyhýbá strukturám založeným na ukazatelích, jako jsou propojené seznamy a řetězce def-use. Zprostředkující reprezentace kódu je zcela založena na
V současnosti jsou na diskrétních GPU AMD (dGPU VI+) podporovány pouze pixelové (fragmentové) a výpočetní shadery. ACO však již správně staví shadery pro všechny testované hry, včetně komplexních shaderů ze Shadow of the Tomb Raider a Wolfenstein II. Prototyp ACO navržený k testování je téměř dvakrát rychlejší než kompilátor shaderu AMDGPU a ukazuje zvýšení FPS v některých hrách, když běží na systémech s ovladačem RADV.
Zdroj: opennet.ru