OT: recommended way of timing two pieces of code in C

jd1008 jd1008 at gmail.com
Fri Feb 26 18:02:41 UTC 2016



On 02/26/2016 10:44 AM, Tom Horsley wrote:
> On Fri, 26 Feb 2016 09:51:24 -0600
> Ranjan Maitra wrote:
>
>> How does this happen? The number of operations are exactly the same (or should be).
> The number of operations in your program are the same, but
> your program is running on the same machine as the linux
> OS which has deamons running in the background, and may
> even be stopping to page in code your program needs, or grow
> pages as it allocates memory. Vast numbers of things
> affect timing. Even the stupid dynamic library load address
> randomization linux does can result in totally different
> cache hits in memory. The list goes on and on...
>
> Apart from linux, most motherboards these days have SMI
> interrupts happening behind everyone's back which leave
> missing chunks of time no one can account for.
Timings based on realtime clocks are not same as the per task
timers which are incremented only when the task is actually executing.




More information about the users mailing list