Skip to content

Performance Benchmarks

Christian Parpart edited this page May 18, 2013 · 4 revisions

Test Environment

  • CPU: Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz
  • RAM: 32GB
  • OS Distribution: Gentoo Linux
  • OS Kernel: 3.9.1-gentoo-r1
  • Misc: Desktop environment with at least KDE, Skype, Chromium running
  • Compiler: Clang 3.4 (trunk 182202, 2013-05-27)
  • Compiler flags: -O3 -g -DNDEBUG -DXZERO_NDEBUG=1 -march=native -mtune=native

x0 Configuration

handler setup {
    max_connections 64535
    max_files 2 * 64535 + 32
    tcp_cork true

    listen bind: 0.0.0.0, port: 8080, backlog: 512, reuse_port: true, multi_accept: 32

#   workers [2]
#   workers [0, 2]
#   workers [0, 2, 4, 6]
#   workers [0, 2, 4, 6, 8, 10]
    workers [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
}

handler main {
    respond 200
#   docroot '/home/trapni/projects/x0/www/htdocs'
#   staticfile
}

Tests

weighttp -t 4 -k -c 512 -n 1000000 http://localhost:8080/

epoll:
 1 worker: finished in 11 sec, 691 millisec and 115 microsec, 85535  req/s, 18203 kbyte/s
 2 worker: finished in  7 sec, 418 millisec and 544 microsec, 134797 req/s, 28687 kbyte/s
 4 worker: finished in  4 sec, 520 millisec and 299 microsec, 221224 req/s, 47080 kbyte/s
 6 worker: finished in  3 sec, 177 millisec and 78 microsec,  314754 req/s, 66985 kbyte/s
12 worker: finished in  2 sec, 546 millisec and 407 microsec, 392710 req/s, 76295 kbyte/s

Clone this wiki locally