Epoll vs Kqueue Comparison

Cluster focuses on debates comparing Linux's epoll with BSD's kqueue, Solaris event ports, Windows IOCP, and other I/O event notification mechanisms, discussing their performance, features like batching and event types, and adoption reasons.

➡️ Stable 0.5x DevOps & Infrastructure
2,224
Comments
19
Years Active
5
Top Authors
#2987
Topic ID

Activity Over Time

2008
25
2009
43
2010
129
2011
103
2012
80
2013
89
2014
87
2015
143
2016
181
2017
256
2018
122
2019
132
2020
108
2021
154
2022
128
2023
121
2024
189
2025
132
2026
2

Keywords

MS pod.tst CPU cores.png ASIO freebsd.org IOCP FGA SIGSEGV WMI event events select polling kernel linux windows solaris posix nt

Sample Comments

checker659 Jun 14, 2015 View on HN

What about epoll / kqueue?

pjmlp Jan 14, 2023 View on HN

Since when did epoll got better than Solaris or Windows alternatives?

bufo Dec 13, 2023 View on HN

Great! I was looking into something like this. I assume ending up with epoll will be better?

Hexstream Jun 9, 2008 View on HN

Executive summary of the first 53 pages: epoll is great, the other solutions range from not-so-good to terrible.

brianm May 18, 2008 View on HN

I'm pretty sure it uses kernel events (epoll, kqueue, /dev/poll) if available.

rwaksmunski Dec 30, 2020 View on HN

My favorite comparison is epoll vs kqueue.https://idea.popcount.org/2017-02-20-epoll-is-fundamentally-...https://people.freebsd.org/~jlemon/papers/kqueue.pdf

eps Oct 24, 2012 View on HN

Was it because epoll vs iocp differences?

bluetomcat Dec 29, 2024 View on HN

The claim is silly and unfounded. If anything, kqueue is the interface that pollutes userspace less. You have a single kevent call that is used both for waiting and registering events represented by (filter, ident) tuples. All of the data related to the event is contained in a struct that’s passed between the kernel and the user. For non-fd events (EVFILT_PROC, EVFILT_TIMER, EVFILT_SIGNAL), it is much more straightforward to use compared to the Linux way where you need to keep track of one more

binarycrusader Jul 31, 2018 View on HN

Solaris has event ports which are equivalent to Windows IOCP. So not all *NIX systems are deficient in that regard :)

qwertyuiop924 Oct 2, 2016 View on HN

What about kqueue or eventports?