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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 02/26/2016 11:28 AM, jd1008 wrote:


On 02/26/2016 11:06 AM, Ranjan Maitra wrote:
On Fri, 26 Feb 2016 12:44:10 -0500 Tom Horsley <horsley1953@xxxxxxxxx> 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.
Thank you! So, is there any way that these other processes can be separated out in the time calculations? I can not come up with definitive statements unless I can do these comparisons in a fair manner.

Best wishes.
Ranjan

__
Hi Ranjan,
you have to use virtual timers instead of hard clock timers.

Usually since you just want process time, then you start the itimer
at the very start of the process, and give it some very long time to
expire (say as long as max time). The just before call to exit, query the itimer
structure values and print them out.
Cheers,

JD
Please read/ usr/include/linux/time.h and  /usr/include/sys/time.h
and look for ITIMER_VIRTUAL and which structure member must be set to ITIMER_VIRTUAL.

Cheers,

JD
--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org



[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux