r780 - in trunk/varnish-cache: . bin/varnishd

Dag-Erling Smørgrav des at linpro.no
Thu Aug 10 09:00:02 CEST 2006

"Anders Berg" <andersb at vgnett.no> writes:
> Dag-Erling Smørgrav <des at linpro.no> writes:
> > Add an epoll()-based acceptor for Linux 2.6.  Simple empirical
> > tests indicate that epoll() performs significantly better than
> > poll() (less CPU usage).
> For sure. epoll() is O(1), poll is FAR from it.

Even so, the behaviour I was seeing was far worse than I expected: CPU
usage was pegged at 100% (almost all of it in system time) even with
no clients; strace confirmed that nothing else was going on than a
ping from the management process every three seconds.  I don't know if
this has anything to do with passing in bogus pollfds (with fd = -1);
a colleague looked through the kernel source while I was working on
the epoll code and could not find anything to indicate that this
should be a problem.

Dag-Erling Smørgrav
Senior Software Developer
Linpro AS - www.linpro.no

More information about the varnish-dev mailing list