… | |
… | |
921 | =head2 Discussion |
921 | =head2 Discussion |
922 | |
922 | |
923 | The benchmark does I<not> measure scalability of the event loop very |
923 | The benchmark does I<not> measure scalability of the event loop very |
924 | well. For example, a select-based event loop (such as the pure perl one) |
924 | well. For example, a select-based event loop (such as the pure perl one) |
925 | can never compete with an event loop that uses epoll when the number of |
925 | can never compete with an event loop that uses epoll when the number of |
926 | file descriptors grows high. In this benchmark, only a single filehandle |
926 | file descriptors grows high. In this benchmark, all events become ready at |
927 | is used (although some of the AnyEvent adaptors dup() its file descriptor |
927 | the same time, so select/poll-based implementations get an unnatural speed |
928 | to worka round bugs). |
928 | boost. |
929 | |
929 | |
930 | C<EV> is the sole leader regarding speed and memory use, which are both |
930 | C<EV> is the sole leader regarding speed and memory use, which are both |
931 | maximal/minimal, respectively. Even when going through AnyEvent, there are |
931 | maximal/minimal, respectively. Even when going through AnyEvent, there are |
932 | only two event loops that use slightly less memory (the C<Event> module |
932 | only two event loops that use slightly less memory (the C<Event> module |
933 | natively and the pure perl backend), and no faster event models, not even |
933 | natively and the pure perl backend), and no faster event models, not even |