Created
March 29, 2025 20:29
-
-
Save rbjorklin/a7cf1373b0acf14bdb45a9dc0962aba4 to your computer and use it in GitHub Desktop.
OCaml benchmarking results of httpaf and httpun on the TechEmpowerBenchmark json test
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
BENCHMARKING JSON ... | |
--------------------------------------------------------- | |
Running Primer json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 5 -c 8 --timeout 8 -t 8 http://tfb-server:8080/json | |
--------------------------------------------------------- | |
Running 5s test @ http://tfb-server:8080/json | |
8 threads and 8 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 29.08us 13.57us 1.85ms 99.21% | |
Req/Sec 33.44k 2.38k 40.39k 68.87% | |
Latency Distribution | |
50% 29.00us | |
75% 32.00us | |
90% 34.00us | |
99% 41.00us | |
1357249 requests in 5.10s, 195.45MB read | |
Requests/sec: 266134.82 | |
Transfer/sec: 38.32MB | |
--------------------------------------------------------- | |
Running Warmup json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 512 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 512 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 18.17ms 52.50ms 900.98ms 92.42% | |
Req/Sec 31.69k 6.47k 98.47k 74.35% | |
Latency Distribution | |
50% 748.00us | |
75% 7.19ms | |
90% 54.52ms | |
99% 258.93ms | |
7579782 requests in 15.09s, 1.07GB read | |
Requests/sec: 502235.08 | |
Transfer/sec: 72.32MB | |
--------------------------------------------------------- | |
Concurrency: 16 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 16 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 16 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 49.04us 43.06us 4.51ms 98.16% | |
Req/Sec 20.89k 3.36k 26.38k 51.95% | |
Latency Distribution | |
50% 46.00us | |
75% 54.00us | |
90% 62.00us | |
99% 123.00us | |
5021681 requests in 15.10s, 723.15MB read | |
Requests/sec: 332570.33 | |
Transfer/sec: 47.89MB | |
STARTTIME 1743279537 | |
ENDTIME 1743279552 | |
--------------------------------------------------------- | |
Concurrency: 32 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 32 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 32 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 127.73us 699.26us 33.48ms 98.75% | |
Req/Sec 26.57k 5.94k 50.29k 69.04% | |
Latency Distribution | |
50% 64.00us | |
75% 90.00us | |
90% 130.00us | |
99% 1.07ms | |
6378246 requests in 15.10s, 0.90GB read | |
Requests/sec: 422399.78 | |
Transfer/sec: 60.83MB | |
STARTTIME 1743279554 | |
ENDTIME 1743279569 | |
--------------------------------------------------------- | |
Concurrency: 64 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 64 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 64 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 11.11ms 59.99ms 975.20ms 96.11% | |
Req/Sec 29.91k 8.15k 117.85k 67.03% | |
Latency Distribution | |
50% 100.00us | |
75% 243.00us | |
90% 6.87ms | |
99% 273.88ms | |
7148055 requests in 15.10s, 1.01GB read | |
Requests/sec: 473436.87 | |
Transfer/sec: 68.18MB | |
STARTTIME 1743279571 | |
ENDTIME 1743279586 | |
--------------------------------------------------------- | |
Concurrency: 128 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 128 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 128 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 13.66ms 50.41ms 835.07ms 94.09% | |
Req/Sec 30.78k 7.25k 59.11k 69.46% | |
Latency Distribution | |
50% 164.00us | |
75% 1.26ms | |
90% 30.08ms | |
99% 275.54ms | |
7352513 requests in 15.02s, 1.03GB read | |
Requests/sec: 489575.34 | |
Transfer/sec: 70.50MB | |
STARTTIME 1743279588 | |
ENDTIME 1743279603 | |
--------------------------------------------------------- | |
Concurrency: 256 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 256 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 256 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 12.64ms 42.12ms 596.13ms 93.20% | |
Req/Sec 31.11k 6.77k 69.50k 70.79% | |
Latency Distribution | |
50% 314.00us | |
75% 2.30ms | |
90% 30.22ms | |
99% 228.78ms | |
7439293 requests in 15.07s, 1.05GB read | |
Requests/sec: 493579.11 | |
Transfer/sec: 71.08MB | |
STARTTIME 1743279605 | |
ENDTIME 1743279620 | |
--------------------------------------------------------- | |
Concurrency: 512 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 512 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 512 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 18.22ms 63.21ms 1.22s 94.47% | |
Req/Sec 30.81k 5.85k 54.63k 75.04% | |
Latency Distribution | |
50% 780.00us | |
75% 6.11ms | |
90% 41.28ms | |
99% 334.72ms | |
7366199 requests in 15.06s, 1.04GB read | |
Requests/sec: 489015.02 | |
Transfer/sec: 70.42MB | |
STARTTIME 1743279622 | |
ENDTIME 1743279637 |
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
BENCHMARKING JSON ... | |
--------------------------------------------------------- | |
Running Primer json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 5 -c 8 --timeout 8 -t 8 http://tfb-server:8080/json | |
--------------------------------------------------------- | |
Running 5s test @ http://tfb-server:8080/json | |
8 threads and 8 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 188.44us 415.93us 5.52ms 89.85% | |
Req/Sec 19.02k 2.65k 25.26k 60.93% | |
Latency Distribution | |
50% 40.00us | |
75% 48.00us | |
90% 615.00us | |
99% 2.08ms | |
769829 requests in 5.10s, 110.86MB read | |
Requests/sec: 150968.50 | |
Transfer/sec: 21.74MB | |
--------------------------------------------------------- | |
Running Warmup json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 512 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 512 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 2.68ms 2.74ms 51.97ms 84.98% | |
Req/Sec 14.72k 4.31k 65.63k 72.87% | |
Latency Distribution | |
50% 1.44ms | |
75% 4.08ms | |
90% 6.34ms | |
99% 12.23ms | |
3522558 requests in 15.10s, 507.27MB read | |
Requests/sec: 233304.08 | |
Transfer/sec: 33.60MB | |
--------------------------------------------------------- | |
Concurrency: 16 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 16 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 16 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 554.14us 1.10ms 10.63ms 87.03% | |
Req/Sec 10.36k 2.21k 23.85k 65.18% | |
Latency Distribution | |
50% 65.00us | |
75% 223.00us | |
90% 2.14ms | |
99% 4.90ms | |
2474927 requests in 15.10s, 356.40MB read | |
Requests/sec: 163913.24 | |
Transfer/sec: 23.60MB | |
STARTTIME 1743279323 | |
ENDTIME 1743279338 | |
--------------------------------------------------------- | |
Concurrency: 32 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 32 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 32 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 761.60us 1.36ms 12.60ms 85.90% | |
Req/Sec 12.01k 4.09k 26.81k 68.85% | |
Latency Distribution | |
50% 113.00us | |
75% 695.00us | |
90% 2.83ms | |
99% 5.80ms | |
2881299 requests in 15.10s, 414.92MB read | |
Requests/sec: 190825.71 | |
Transfer/sec: 27.48MB | |
STARTTIME 1743279340 | |
ENDTIME 1743279355 | |
--------------------------------------------------------- | |
Concurrency: 64 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 64 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 64 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 0.96ms 1.49ms 16.66ms 84.79% | |
Req/Sec 12.96k 4.09k 27.99k 73.00% | |
Latency Distribution | |
50% 177.00us | |
75% 1.23ms | |
90% 3.27ms | |
99% 6.10ms | |
3094214 requests in 15.01s, 445.58MB read | |
Requests/sec: 206185.33 | |
Transfer/sec: 29.69MB | |
STARTTIME 1743279357 | |
ENDTIME 1743279372 | |
--------------------------------------------------------- | |
Concurrency: 128 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 128 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 128 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 1.24ms 1.71ms 32.50ms 84.41% | |
Req/Sec 13.84k 4.56k 29.74k 73.54% | |
Latency Distribution | |
50% 323.00us | |
75% 1.78ms | |
90% 3.84ms | |
99% 6.83ms | |
3305263 requests in 15.01s, 475.97MB read | |
Requests/sec: 220202.42 | |
Transfer/sec: 31.71MB | |
STARTTIME 1743279374 | |
ENDTIME 1743279389 | |
--------------------------------------------------------- | |
Concurrency: 256 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 256 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 256 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 1.78ms 2.23ms 33.15ms 84.90% | |
Req/Sec 14.53k 4.55k 31.27k 71.92% | |
Latency Distribution | |
50% 616.00us | |
75% 2.68ms | |
90% 4.90ms | |
99% 9.50ms | |
3470474 requests in 15.03s, 499.76MB read | |
Requests/sec: 230961.35 | |
Transfer/sec: 33.26MB | |
STARTTIME 1743279391 | |
ENDTIME 1743279406 | |
--------------------------------------------------------- | |
Concurrency: 512 for json | |
wrk -H 'Host: tfb-server' -H 'Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 512 --timeout 8 -t 16 "http://tfb-server:8080/json" | |
--------------------------------------------------------- | |
Running 15s test @ http://tfb-server:8080/json | |
16 threads and 512 connections | |
Thread Stats Avg Stdev Max +/- Stdev | |
Latency 2.71ms 2.72ms 43.80ms 84.68% | |
Req/Sec 14.42k 3.85k 28.42k 68.21% | |
Latency Distribution | |
50% 1.52ms | |
75% 4.12ms | |
90% 6.36ms | |
99% 12.17ms | |
3446371 requests in 15.03s, 496.29MB read | |
Requests/sec: 229230.27 | |
Transfer/sec: 33.01MB | |
STARTTIME 1743279408 | |
ENDTIME 1743279423 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment