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: -- (:)
From: Richard Jones <rich@a...>
Subject: Re: [Caml-list] Profiling a function execution
If you're using a Pentium-class machine, then a nice trick is to wrap
the RDTSC assembly instruction and call that. It returns number of
clock cycles elapsed (a 64 bit number IIRC). Here's some code to get
you started:

#ifdef linux
#include <sys/bitypes.h>

extern inline u_int64_t
rdtsc (void)
  u_int32_t hi, lo;
#ifdef linux
  __asm__ ("rdtsc" : "=d" (hi),  "=a" (lo));
  __asm__ (".byte 0x0f,0x31" : "=d" (hi),  "=a" (lo));
  return ((u_int64_t) hi) << 32 | lo;


Richard Jones.
Merjis Ltd. - improving website return on investment
"My karma ran over your dogma"

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