[Libevent-users] libevent on FREEBSD

Matthieu PATOU mat at oxado.com
Mon Jun 11 05:54:50 EDT 2007


Dear list,

i'm working on a partial C implementation of the memcache PERL client.
The part i rewrote in C was a big loop around a select that handled read and write from the various memcached server.

I was expecting the libevent code to be quicker or least not slower than a standard select call.
With linux, this assumption seems true, but under Freebsd it seems false.

Tracing the syscall with strace shows that clock_gettime is called on average 3 times between a read or write event.


% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
  50.35    1.904478          43     44722           clock_gettime
  22.20    0.839851          62     13623           read

I'm wondering if there is a solution to reduce the number of calls to clock_gettime or a way to make them less costly.
If not maybe i should do the loop around a select in C like it was done in PERL.

Matthieu



More information about the Libevent-users mailing list