Last active
August 29, 2015 14:16
-
-
Save jamwt/2992f25fc45791337267 to your computer and use it in GitHub Desktop.
Dropbox Rust HTTP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # New rust http stack | |
| jamwt@tango ~ | |
| $ wrk -t12 -c400 -d30s http://127.0.0.1:8000/index.html | |
| Running 30s test @ http://127.0.0.1:8000/index.html | |
| 12 threads and 400 connections | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 15.68ms 31.18ms 473.37ms 99.35% | |
| Req/Sec 2.67k 693.06 9.40k 80.67% | |
| 916396 requests in 29.99s, 45.45MB read | |
| Socket errors: connect 0, read 0, write 0, timeout 10 | |
| Requests/sec: 30553.62 | |
| Transfer/sec: 1.52MB | |
| # golang | |
| jamwt@tango ~ | |
| $ wrk -t12 -c400 -d30s http://127.0.0.1:8000/index.html | |
| Running 30s test @ http://127.0.0.1:8000/index.html | |
| 12 threads and 400 connections | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 5.00s 511.85ms 5.11s 98.99% | |
| Req/Sec 1.21k 5.95k 37.00k 96.07% | |
| 921409 requests in 30.57s, 113.36MB read | |
| Socket errors: connect 0, read 0, write 0, timeout 1690 | |
| Requests/sec: 30140.64 | |
| Transfer/sec: 3.71MB | |
| # move down to 100 concurrency, 4 threads | |
| # rust | |
| jamwt@tango ~ | |
| $ wrk -t4 -c100 -d30s http://127.0.0.1:8000/index.html | |
| Running 30s test @ http://127.0.0.1:8000/index.html | |
| 4 threads and 100 connections | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 3.26ms 657.06us 8.69ms 76.20% | |
| Req/Sec 8.33k 1.71k 16.89k 76.32% | |
| 946929 requests in 30.00s, 46.96MB read | |
| Requests/sec: 31564.67 | |
| Transfer/sec: 1.57MB | |
| # golang | |
| jamwt@tango ~ | |
| $ wrk -t4 -c100 -d30s http://127.0.0.1:8000/index.html | |
| Running 30s test @ http://127.0.0.1:8000/index.html | |
| 4 threads and 100 connections | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 1.06s 756.20ms 1.63s 66.35% | |
| Req/Sec 7.81k 12.64k 37.10k 79.03% | |
| 885504 requests in 29.99s, 108.94MB read | |
| Requests/sec: 29523.09 | |
| Transfer/sec: 3.63MB | |
| ## Detailed stats - 2k requests per second over 100 connections | |
| # rust | |
| jamwt@tango ~ | |
| $ wrk -R 2000 --latency -t4 -c100 -d30s http://127.0.0.1:8000/ | |
| Running 30s test @ http://127.0.0.1:8000/ | |
| 4 threads and 100 connections | |
| Thread calibration: mean lat.: 1.246ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.241ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.107ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.097ms, rate sampling interval: 10ms | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 1.16ms 466.47us 4.25ms 65.61% | |
| Req/Sec 526.30 122.61 1.00k 55.74% | |
| Latency Distribution (HdrHistogram - Recorded Latency) | |
| 50.000% 1.15ms | |
| 75.000% 1.48ms | |
| 90.000% 1.77ms | |
| 99.000% 2.27ms | |
| 99.900% 2.68ms | |
| 99.990% 3.84ms | |
| 99.999% 4.25ms | |
| 100.000% 4.25ms | |
| # golang | |
| jamwt@tango ~ | |
| $ wrk -R 2000 --latency -t4 -c100 -d30s http://127.0.0.1:8000/ | |
| Running 30s test @ http://127.0.0.1:8000/ | |
| 4 threads and 100 connections | |
| Thread calibration: mean lat.: 1.184ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.150ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.165ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.116ms, rate sampling interval: 10ms | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 1.08ms 432.17us 4.68ms 67.08% | |
| Req/Sec 526.40 119.56 1.00k 55.87% | |
| Latency Distribution (HdrHistogram - Recorded Latency) | |
| 50.000% 1.06ms | |
| 75.000% 1.36ms | |
| 90.000% 1.64ms | |
| 99.000% 2.16ms | |
| 99.900% 2.59ms | |
| 99.990% 3.22ms | |
| 99.999% 4.68ms | |
| 100.000% 4.68ms | |
| ## Detailed stats - 10k requests per second over 500 connections | |
| # rust | |
| Latency: | |
| jamwt@tango ~ | |
| $ wrk -R 10000 --latency -t4 -c500 -d30s http://127.0.0.1:8000/ | |
| Running 30s test @ http://127.0.0.1:8000/ | |
| 4 threads and 500 connections | |
| Thread calibration: mean lat.: 1.414ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.524ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.501ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.392ms, rate sampling interval: 10ms | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 1.39ms 648.71us 6.98ms 69.91% | |
| Req/Sec 2.63k 380.99 4.33k 79.45% | |
| Latency Distribution (HdrHistogram - Recorded Latency) | |
| 50.000% 1.33ms | |
| 75.000% 1.78ms | |
| 90.000% 2.19ms | |
| 99.000% 3.26ms | |
| 99.900% 5.21ms | |
| 99.990% 6.17ms | |
| 99.999% 6.83ms | |
| 100.000% 6.98ms | |
| Process Stats: | |
| Command being timed: "./target/release/dbxhttp" | |
| User time (seconds): 0.72 | |
| System time (seconds): 10.45 | |
| Percent of CPU this job got: 31% | |
| Elapsed (wall clock) time (h:mm:ss or m:ss): 0:35.54 | |
| Average shared text size (kbytes): 0 | |
| Average unshared data size (kbytes): 0 | |
| Average stack size (kbytes): 0 | |
| Average total size (kbytes): 0 | |
| Maximum resident set size (kbytes): 4524 | |
| Average resident set size (kbytes): 0 | |
| Major (requiring I/O) page faults: 0 | |
| Minor (reclaiming a frame) page faults: 107869 | |
| Voluntary context switches: 326352 | |
| Involuntary context switches: 294597 | |
| Swaps: 0 | |
| File system inputs: 0 | |
| File system outputs: 0 | |
| Socket messages sent: 0 | |
| Socket messages received: 0 | |
| Signals delivered: 0 | |
| Page size (bytes): 4096 | |
| Exit status: 0 | |
| # golang | |
| Latency: | |
| jamwt@tango ~ | |
| $ wrk -R 10000 --latency -t4 -c500 -d30s http://127.0.0.1:8000/ | |
| Running 30s test @ http://127.0.0.1:8000/ | |
| 4 threads and 500 connections | |
| Thread calibration: mean lat.: 1.218ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.257ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.282ms, rate sampling interval: 10ms | |
| Thread calibration: mean lat.: 1.239ms, rate sampling interval: 10ms | |
| Thread Stats Avg Stdev Max +/- Stdev | |
| Latency 1.23ms 627.27us 11.60ms 71.97% | |
| Req/Sec 2.63k 385.46 5.11k 79.98% | |
| Latency Distribution (HdrHistogram - Recorded Latency) | |
| 50.000% 1.18ms | |
| 75.000% 1.60ms | |
| 90.000% 1.95ms | |
| 99.000% 2.98ms | |
| 99.900% 5.53ms | |
| 99.990% 8.54ms | |
| 99.999% 10.99ms | |
| 100.000% 11.61ms | |
| Process Stats: | |
| Command being timed: "./bench_go" | |
| User time (seconds): 2.08 | |
| System time (seconds): 11.13 | |
| Percent of CPU this job got: 37% | |
| Elapsed (wall clock) time (h:mm:ss or m:ss): 0:35.03 | |
| Average shared text size (kbytes): 0 | |
| Average unshared data size (kbytes): 0 | |
| Average stack size (kbytes): 0 | |
| Average total size (kbytes): 0 | |
| Maximum resident set size (kbytes): 15776 | |
| Average resident set size (kbytes): 0 | |
| Major (requiring I/O) page faults: 0 | |
| Minor (reclaiming a frame) page faults: 4012 | |
| Voluntary context switches: 149301 | |
| Involuntary context switches: 55634 | |
| Swaps: 0 | |
| File system inputs: 0 | |
| File system outputs: 0 | |
| Socket messages sent: 0 | |
| Socket messages received: 0 | |
| Signals delivered: 0 | |
| Page size (bytes): 4096 | |
| Exit status: 2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment