DX9下面没什么办法去操纵command buffer。
今天遇到一个GPU慢导致cpu端等待比较长时间的情况。
我们推测应该是DX9 driver使用ring buffer做command buffer,GPU慢的情况下会出现因为来不及consumer command而导致ring buffer满的情况。
这时候就需要去等待GPU消耗command,才能进一步往下走。
这时候的表现就是cpu端api调用会出现很长时间的等待。
所以GPU慢不只是在present那里出现等待,commandbuffer满了的时候也会出现。