Skip to content

othiym23/nonsense-wrk

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wrk-nonsense - a benchmarking tool

  This is a heavily hacked-up version of wrk, a heavily concurrent
  benchmarking tool written in C. See http://github.com/wg/wrk for
  more details.

  The fork is to remove support for HTTP and add support for validating
  the data returned by the servers written for
  http://github.com/othiym23/nonsense-benchmark. It is highly unlikely
  any of the changes made here will ever find their way back to wrk.

  RIGHT NOW THIS ONLY WORKS ON OSX. The reasons it doesn't work on
  other POSIXY OSes have entirely to do with my own limitations and
  it should be fixed soonish.

Basic Usage

  wrk -t12 -c400 -d30s 127.0.0.1:1337

  This runs a benchmark for 30 seconds, using 12 threads, and keeping
  400 connections open.

  Output:

  Running 30s test @ 127.0.0.1:1337
    12 threads and 400 connections
    Thread Stats   Avg      Stdev     Max   +/- Stdev
      Latency   635.91us    0.89ms  12.92ms   93.69%
      Req/Sec    56.20k     8.07k   62.00k    86.54%
    22464657 requests in 30.00s, 17.76GB read
  Requests/sec: 748868.53
  Transfer/sec:    606.33MB

Benchmarking Tips

  The machine running wrk must have a sufficient number of ephemeral ports
  available and closed sockets should be recycled quickly. To handle the
  initial connection burst the server's listen(2) backlog should be greater
  than the number of concurrent connections being tested.

Acknowledgements

  wrk contains code from a number of open source projects including the
  'ae' event loop from redis, the nginx/joyent/node.js 'http-parser' and
  the Tiny Mersenne Twister PRNG. Please consult the NOTICE file for
  licensing details.

Packages

No packages published

Languages

  • C 93.4%
  • C++ 6.6%