Re: [PATCH] epoll more scalable than poll

From: Dan Kegel (dkegel@ixiacom.com)
Date: Mon Oct 28 2002 - 16:59:23 EST


Martin Waitz <tali@admingilde.org> wrote:
> On Mon, Oct 28, 2002 at 11:14:19AM -0800, Hanna Linder wrote:
>> The results of our testing show not only does the system call
>> interface to epoll perform as well as the /dev interface but also that epoll
>> is many times better than standard poll. No other implementations of poll
>> have performed as well as epoll in any measure. Testing details and results
>> are published here, please take a minute to check it out:
>> http://lse.sourceforge.net/epoll/index.html
>
> how does this compare to the kqueue mechanism found in {Free,Net}BSD?
> (see http://people.freebsd.org/~jlemon/papers/kqueue.pdf)
>
> i especially like their combined event update/event wait,
> needing only one syscall per poll while building a changelist in
> userspace...
>
> a replacement for poll/select is _really_ needed.
> but i think we should use existing interfaces if possible,
> to reduce the changes needed in userspace.

I'd kinda like to see a unified event queue object
used uniformly for everything. You might instantiate
several of them in one process (so e.g. libraries could have
their own).

The idea of using the kqueue interface was discussed once before. See
http://marc.theaimsgroup.com/?l=linux-kernel&m=97236943118139&w=2
for Linus' opinion of kqueues (he doesn't like them much).

Another existing event queue for readiness notification to
be delivered via is Ben's AIO completion notification queue,
but I haven't heard a definitive story about whether
epoll events could be delivered that way. (The discussion
seems to always veer into a discussion of asynchronous
poll, which is something else.)
- Dan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Oct 31 2002 - 22:00:39 EST