Hi. I'm not sure about the term (absolute) (I'm far from beeing fluent in English) I'm trying to optimize some GPU code, using GPA to test the results. Especially on a subset of the whole frame : [A] 1 quad (simple VS using VertexID to generate 3 vertices to draw a quad [using Scissor to render only the quad]) with some computations in PS (1 RT) [B] 1 rendering (dummy VS, complex GS [using PrimitiveID as input] reading the previous quad, simple PS rendering the generated triangles) I was surprised that each time I benchmark the code, GPA reported noticable timings differences. So I recorded a frame, and simply load it many times in GPA (always the same capture file) It seems that GPA gives 3 sets of values : [A] GPU : 388 ( PS = 377 ) GPU : 345 ( PS = 335 ) GPU : 295 ( PS = 287 )
[B] GPU : 12122 ( GS = 7960 / PS = 4080 ) GPU : 10777 ( GS = 7070 / PS = 3626 ) GPU : 9195 ( GS = 6034 / PS = 3094 ) trying 10 reloads of the same capture file always switch to one of this case (with some decimal diff, but globally always in this range of 3 cases) I understand for the small variation, it's logical (and not a problem anyway) but the big variations may be up to 30%, with is quite annoying (when you're trying to benchmark, it's a bit worrying to have to test several times the same thing to figure a medium value). Moreover, I use a FPS counter in my application (very basic, giving the time spend for each frame). It has some small variations, but let's say far less than 5% (I never see a static scene taking 30 ms to render, then 40 ms the next frame) My test (at home) computer is a Sandy bridge (i3-2330M) laptop. Maybe it's some kind of power/frequency control issue ? [in this case would it be possible to ensure that while running GPA analysis the GPU runs at full speed] Is there any way to use a work-around ? Thanks in advance :) [I can email you the capture file if you want it]


