阀门公司
一旦测试完成且功能最终确定,ACO 计划包含在主要的 Mesa 组合中。
Valve 提议的代码旨在为游戏应用程序着色器提供尽可能优化的代码生成,并实现非常高的编译速度。 Mesa的着色器编译器使用LLVM组件,它不能提供所需的编译速度,并且不允许完全控制控制流,这在过去导致了严重的错误。 此外,摆脱 LLVM 可以实现更积极的差异分析和更精细的寄存器负载控制,从而使您能够生成更高效的可执行文件。
ACO 用 C++ 编写,设计时考虑到了 JIT 编译,并使用快速迭代数据结构,避免了基于指针的结构,例如链表和 def-use 链。 中间代码表示完全基于
目前,独立 AMD GPU (dGPU VI+) 仅支持像素(片段)和计算着色器。 然而,ACO 已经正确收集了所有测试游戏的着色器,包括《古墓丽影:暗影》和《德军总部 II》中的复杂着色器。 提议用于测试的 ACO 原型在编译速度方面几乎是 AMDGPU 着色器编译器的两倍,并且在使用 RADV 驱动程序的系统上运行时,某些游戏的 FPS 有所提高。
来源: opennet.ru