How to make a good benchmarking of complex functions?

I am about to enter into a very detailed benchmarking of a complex of complex functions in C. This is a "scientific level". I am wondering what would be the best way to do serious benchmarking? I thought about starting them, say, 10 times, averaging the results of synchronization and providing a standard version, for example, using <time.h>. What would you do to get good landmarks?

+3
source share
2 answers

A report of the mean and standard deviation gives a good description of the distribution when the distribution in question is approximately normal. However, this rarely applies to computing performance measurements. Instead, performance measurements tend to resemble a Poisson distribution. This makes sense, because not many random events on the computer will cause program acceleration; essentially, all measurement noise is the number of random events that cause it to slow down. (A normal distribution, on the contrary, does not make any intuitive sense at all, it will require convincing that the program has a nonzero probability of ending at a negative time).

, ; , . , , , , , , .

"10 " . - ( , /) , . , , - , .

, , , , , <time.h>. , [s] .

+7

, , , . , , . , , , - , " , . . . , . , , , , .. , , , ". , , . ,

0

Source: https://habr.com/ru/post/1782137/


All Articles