Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] Profiling a function execution
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2003-11-13 (22:53)
From: Brian Hurt <bhurt@s...>
Subject: Re: [Caml-list] Profiling a function execution
On Thu, 13 Nov 2003, Daniel Bünzli wrote:

> 2) Unix.times seems to have a low resolution, which means that my 
> timings are often 0.0 (unless I execute the function a lot of times). I 
> don't want to use Unix.gettimeofday because this prevents me to make 
> the difference between user and system time. Has anybody bindings to 
> the getrusage function or another idea ?

Clocks on computers have a 10ms quantiziation- i.e., they measure 
everything as multiples of 10 milliseconds.  All measurements are accurate 
only up to about +/- 10 milliseconds.  I.e. if times reports that 
something takes 50 milliseconds, it probably takes more than 40 but less 
than 60 milliseconds.

My recommendation if you want to time something that takes less than 
seconds to do, is to do it lots of times.  You want the amount of time 
between two calls to times to be at least seconds, if not tens of seconds 
or minutes.  You then divide the total amount of time taken by the number 
of times the operation was executed, to get the time per execution.  

Is there a wrapper to the clock function kicking around?

"Usenet is like a herd of performing elephants with diarrhea -- massive,
difficult to redirect, awe-inspiring, entertaining, and a source of
mind-boggling amounts of excrement when you least expect it."
                                - Gene Spafford 

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: