--- AnyEvent/lib/AnyEvent.pm 2008/04/25 09:06:27 1.78 +++ AnyEvent/lib/AnyEvent.pm 2008/04/25 09:11:59 1.80 @@ -923,9 +923,9 @@ The benchmark does I measure scalability of the event loop very well. For example, a select-based event loop (such as the pure perl one) can never compete with an event loop that uses epoll when the number of -file descriptors grows high. In this benchmark, only a single filehandle -is used (although some of the AnyEvent adaptors dup() its file descriptor -to worka round bugs). +file descriptors grows high. In this benchmark, all events become ready at +the same time, so select/poll-based implementations get an unnatural speed +boost. C is the sole leader regarding speed and memory use, which are both maximal/minimal, respectively. Even when going through AnyEvent, there are @@ -964,7 +964,7 @@ select-based backend or the Event module) shows abysmal performance and memory usage: Watchers use almost 30 times as much memory as EV watchers, and 10 times as much memory as both Event or EV via AnyEvent. Watcher -invocation is almost 700 times slower than with AnyEvent's pure perl +invocation is almost 900 times slower than with AnyEvent's pure perl implementation. The design of the POE adaptor class in AnyEvent can not really account for this, as session creation overhead is small compared to execution of the state machine, which is coded pretty optimally within