Percent of time processing data in the driver. These statistics may help identify cases when the driver is waiting for other resources.
typedef struct D3DDEVINFO_D3D9INTERFACETIMINGS { FLOAT WaitingForGPUToUseApplicationResourceTimePercent; FLOAT WaitingForGPUToAcceptMoreCommandsTimePercent; FLOAT WaitingForGPUToStayWithinLatencyTimePercent; FLOAT WaitingForGPUExclusiveResourceTimePercent; FLOAT WaitingForGPUOtherTimePercent; } D3DDEVINFO_D3D9INTERFACETIMINGS, *LPD3DDEVINFO_D3D9INTERFACETIMINGS;
Percentage of time the driver spent waiting for the GPU latency to reduce to less than three rendering frames.
If an application is GPU-limited, the driver must stall the CPU until the GPU gets within three frames. This prevents an application from queueing up many seconds' worth of rendering calls which may dramatically increase the latency between when the user inputs new data and when the user sees the results of that input. In general, the driver can track the number of times IDirect3DDevice9::Present is called to prevent queueing up more than three frames of rendering work.These metrics help identify when a driver is waiting and what it is waiting for. High percentages are not necessarily a problem.
These system-global metrics may or may not be implemented. Depending on the specific hardware, these metrics may not support multiple queries simultaneously.