原文:http://libev.schmorp.de/bench.html
关于libev的介绍请见:
http://titanfoot.javaeye.com/blog/183364
本文主要描述基于libevent和libev的程序的结果比较。
libevent首个版本发布于2000-11-14.是高性能事件循环,支持简单的API,两种事件类型( I/O+timeout,signal+timeout),支持select,poll,epoll,kqueue等。
libev第一个版本发布于2007-11-12,也是高性能事件循环,支持八种事件类型(I/O,real time timers,wall clock timers,signals,child status changes, idle,check and prepare handlers)
它使用一种优先队列的方式管理计数器以及使用数组作为基础数据结构。对于相同事件监视器数没有人为的限制。它为libevent提供一个竞争层。
测试:
基准测试是一个很简单的示例。
libevent采用的1.3e版本,libev采用2007-11-12的beta版本,测试用例采用gcc version 4.1.3进行编译。
编译采用-O3 -fno-guess-branch-probability -g 参数优化,运行平台amd64(2G dul Opteron),Debian GNU/Linux(Linux version 2.6.21-2),都采用epoll 工作模式。
没有评论:
发表评论