Closed danielzgtg closed 1 year ago
Nice! Those improvements definitely make sense for good/reliable performance testing.
From the new perf display, we can learn that the advanced detection has a much higher variance-to-mean ratio than the basic detection.
I believe the explanation for this is that the advanced processing depends heavily on the number of contacts on the screen. For example, the whole Gaussian-fitting process (which IIRC is non-negligible in time consumption) is linear in the number of pre-filtered contacts and the weighted distance transform is linear in the sum of the blob sizes (although I'm not sure how much the latter contributes to the total time). So I think there's bound to be a lot of variation between frames with no contacts and frames with even a single contact.
Thank you, for your changes and for putting up with my suggestions ;)
This PR aims to improve the statistical behavior of
iptsd-perf
a bit:Before
The
average
is confusingly all over the place.After
The mean is much more consistent now:
There is another run with the advanced instead of basic detection. I would have set
LOOP_COUNT
to 1000 not 10, but the advanced algorithm would take too long. Here it is below:From the new perf display, we can learn that the advanced detection has a much higher variance-to-mean ratio than the basic detection.