▲ | kimixa 18 hours ago | |||||||
Having worked on some of the latter part of that era of GPUs, the "frontend" of the shader compiler was a pretty small fraction of the total time cost, most of it was in the later optimization passes that often extremely hardware specific (so not really possible at the level of DXBC). Especially as hardware started to move away from the assumptions used in designing it. I think a big part of the user-visible difference in stutter is simply the expected complexity of shaders and number of different shaders in an "average" scene - they're 100s of times larger, and CPUs aren't 100s of times faster (and many of the optimization algorithms used are more-than-linear in terms of time vs the input too) Modern DXIL and SPIR-V are at a similar level of abstraction to DXBC, and certainly don't "solve" stutter. | ||||||||
▲ | dcrazy 12 hours ago | parent [-] | |||||||
One advantage of contemporary bytecode implementations is that many optimizations can occur in the “middle end”—which is to say on the IR itself, before lowering to ISA. | ||||||||
|