Skip to content

d3d12: Opportunistically reset batches after fence completion

This is my take on !198 (closed). It adds a timeout to reset. Most call sites want to force reset to succeed and use an INFINITE timeout and ignore the return. However after successfully waiting on a fence, go through all not-yet-completed batches and opportunistically reset any of them that are already done with a timeout of 0.

Also, significantly decrease the cost of checking if a fence is satisfied for the case where it already is.

Merge request reports