I just read this note benchmarking two event I/O layers against one
The end of it mentions that the core data structure which can
influence performance of these tools is a priority heap:
Both libev and libevent use a binary heap for timer management
(earlier versions of libevent used a red-black tree), which explains
the similar growth characteristics. Apparently, libev makes better
use of the binary heap than libevent, even with identical API calls
(note that the upcoming 3.33 release of libev, not used in this
benchmark, uses a cache-aligned 4-heap and benchmarks consistently
faster than 3.31).
This made me wonder what those graphs would look like if someone
hacked a JudyL to serve as the priority heap.
Get latest updates about Open Source Projects, Conferences and News.