I'm using queries to profile my Direct3D renderer.
What precision and consistency should I expect from them?
Those are some values for a full-screen draw I do each frame as an example:
|Full-Screen shader: 714.16 us
|Full-Screen shader: 709.72 us
|Full-Screen shader: 706.44 us
|Full-Screen shader: 707.44 us
|Full-Screen shader: 710.76 us
|Full-Screen shader: 707.76 us
|Full-Screen shader: 706.48 us
|Full-Screen shader: 712.88 us
|Full-Screen shader: 715.36 us
|Full-Screen shader: 704.72 us
|Full-Screen shader: 708.32 us
|Full-Screen shader: 702.32 us
|Full-Screen shader: 707.8 us
|Full-Screen shader: 720.6 us
|Full-Screen shader: 711.12 us
|Full-Screen shader: 715.36 us
|Full-Screen shader: 713.84 us
|Full-Screen shader: 716.52 us
|Full-Screen shader: 711.52 us
|Full-Screen shader: 1228.57 us
|Full-Screen shader: 1202.5 us
|Full-Screen shader: 706.44 us
|Full-Screen shader: 712.68 us
|Full-Screen shader: 715.32 us
The shader used while profiling has nothing parametrized with time and while it contains branching to early-exit when certain conditions are met, the scene was "static" while profiling.
Is it the expected behavior to have so much variance?
Or is it an indicator that something is wrong with my code?