Compañía de válvulas
Unha vez que se completen as probas e finalice a funcionalidade, está previsto que se ofreza ACO para a súa inclusión na composición principal da Mesa.
O código proposto por Valve ten como obxectivo proporcionar unha xeración de código o máis óptima posible para os sombreadores de aplicacións de xogos, ademais de acadar unha velocidade de compilación moi alta. O compilador shader de Mesa usa compoñentes LLVM, que non proporcionan a velocidade de compilación desexada e non permiten o control total do fluxo de control, o que causou erros graves no pasado. Ademais, afastarse de LLVM fai posible implementar unha análise de discrepancia máis agresiva e un control máis fino da carga do rexistro, o que permite xerar executables máis eficientes.
ACO está escrito en C++, deseñado pensando na compilación JIT, e usa estruturas de datos iterativas rápidas, evitando estruturas baseadas en punteiros como listas enlazadas e cadeas de uso predeterminado. A representación do código intermedio baséase enteiramente en
Actualmente, só se admiten sombreadores de píxeles (fragmentos) e computadores nas GPU AMD discretas (dGPU VI+). Non obstante, ACO xa recolle correctamente sombreadores para todos os xogos probados, incluídos sombreadores complexos de Shadow of the Tomb Raider e Wolfenstein II. O prototipo ACO proposto para probar é case o dobre que o compilador de sombreadores AMDGPU en termos de velocidade de compilación e demostra un aumento de FPS nalgúns xogos cando se executa en sistemas co controlador RADV.
Fonte: opennet.ru