Существуют ли существенные различия в производительности между epoll и kqueue? - PullRequest
4 голосов
/ 29 августа 2010

Моя машина для разработки - это MacBook (который, конечно, имеет kqueue). Однако в производстве мы используем Linux (который, конечно, использует epoll). Очевидно, чтобы узнать характеристики производительности моего кода, мне нужно запустить его с помощью epoll. Тем не менее, является ли производительность, которую я вижу при kqueue, приличным приближением к тому, что я увижу с epoll? Или есть ситуации, когда производительность может существенно отличаться? По большей части кажется, что kqueue и epoll очень похожи с точки зрения производительности, но я действительно не проводил очень тщательного тестирования.

Если это имеет значение, я использую торнадо в Python.

Ответы [ 2 ]

5 голосов
/ 31 марта 2013

kqueue превосходит epoll по данным Университета Беркли в основном потому, что epoll не поддерживает множественные обновления интересов в одном системном вызове, в то время как kqueue может сделать это с помощью kevent ().

Существует технический документ о различиях между 2 и сравнением производительности.

http://www.eecs.berkeley.edu/~sangjin/2012/12/21/epoll-vs-kqueue.html

4 голосов
/ 29 августа 2010
...