Skip to content

[C#] GenHTTP: Add experimental entry for version 11#740

Merged
MDA2AV merged 6 commits into
MDA2AV:mainfrom
Kaliumhexacyanoferrat:genhttp-11
May 26, 2026
Merged

[C#] GenHTTP: Add experimental entry for version 11#740
MDA2AV merged 6 commits into
MDA2AV:mainfrom
Kaliumhexacyanoferrat:genhttp-11

Conversation

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator

Description


PR Commands — comment on this PR to trigger (requires collaborator approval):

Command Description
/benchmark -f <framework> Run all benchmark tests
/benchmark -f <framework> -t <test> Run a specific test
/benchmark -f <framework> --save Run and save results (updates leaderboard on merge)

Always specify -f <framework>. Results are automatically compared against the current leaderboard.


Run benchmarks locally

You can validate and benchmark your framework locally with the lite script — no CPU pinning, fixed connection counts, all load generators run in Docker.

./scripts/validate.sh <framework>
./scripts/benchmark-lite.sh <framework> baseline
./scripts/benchmark-lite.sh --load-threads 4 <framework>

Requirements: Docker Engine on Linux. Load generators (gcannon, h2load, h2load-h3, wrk, ghz) are built as self-contained Docker images on first run.

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp-11

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp-11 | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
pipelined 512 7,664,612 4934.1% 200MiB NEW NEW
pipelined 4096 10,160,635 6196.4% 352MiB NEW NEW
async-db 1024 190,512 3422.5% 341MiB NEW NEW
Full log
=== Best: 7664612 req/s (CPU: 4934.1%, Mem: 200MiB) ===
[info] saved results/pipelined/512/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11

==============================================
=== genhttp-11 / pipelined / 4096c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/pipeline
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  16
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   7.57ms    111us    384us   206.90ms    1.94s

  34173415 requests in 5.00s, 34126906 responses
  Throughput: 6.82M req/s
  Bandwidth:  839.57MB/s
  Status codes: 2xx=34126906, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 34126906 / 34126906 responses (100.0%)
[info] CPU 6272.5% | Mem 277MiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/pipeline
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  16
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   4.78ms     96us    158us   66.70ms   727.50ms

  50836576 requests in 5.00s, 50803178 responses
  Throughput: 10.16M req/s
  Bandwidth:  1.22GB/s
  Status codes: 2xx=50803178, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 50803001 / 50803178 responses (100.0%)
[info] CPU 6196.4% | Mem 352MiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/pipeline
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  16
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   4.79ms     97us    165us   157.90ms   696.80ms

  50399873 requests in 5.00s, 50369124 responses
  Throughput: 10.07M req/s
  Bandwidth:  1.21GB/s
  Status codes: 2xx=50369124, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 50363902 / 50369124 responses (100.0%)
[info] CPU 6276.3% | Mem 405MiB

=== Best: 10160635 req/s (CPU: 6196.4%, Mem: 352MiB) ===
[info] saved results/pipelined/4096/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11
[info] skip: genhttp-11 does not subscribe to limited-conn
[info] skip: genhttp-11 does not subscribe to json
[info] skip: genhttp-11 does not subscribe to json-comp
[info] skip: genhttp-11 does not subscribe to json-tls
[info] skip: genhttp-11 does not subscribe to upload
[info] skip: genhttp-11 does not subscribe to api-4
[info] skip: genhttp-11 does not subscribe to api-16
[info] skip: genhttp-11 does not subscribe to static

==============================================
=== genhttp-11 / async-db / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   8.29ms   5.83ms   15.20ms   28.80ms   63.60ms

  1187085 requests in 10.00s, 1187086 responses
  Throughput: 118.68K req/s
  Bandwidth:  459.90MB/s
  Status codes: 2xx=1187086, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1187086 / 1187086 responses (100.0%)
  Reconnects: 47000
  Per-template: 236787,237405,238018,237697,237179
  Per-template-ok: 236787,237405,238018,237697,237179
[info] CPU 4593.9% | Mem 338MiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   4.64ms   4.11ms   7.89ms   11.50ms   17.70ms

  1897552 requests in 10.00s, 1897556 responses
  Throughput: 189.72K req/s
  Bandwidth:  735.01MB/s
  Status codes: 2xx=1897556, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1897553 / 1897556 responses (100.0%)
  Reconnects: 75808
  Per-template: 378423,379689,380683,380126,378632
  Per-template-ok: 378423,379689,380683,380126,378632
[info] CPU 3382.8% | Mem 343MiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   4.56ms   4.05ms   7.71ms   11.20ms   18.20ms

  1905123 requests in 10.00s, 1905123 responses
  Throughput: 190.47K req/s
  Bandwidth:  738.10MB/s
  Status codes: 2xx=1905123, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1905119 / 1905123 responses (100.0%)
  Reconnects: 76215
  Per-template: 379801,380987,382074,382104,380153
  Per-template-ok: 379801,380987,382074,382104,380153
[info] CPU 3422.5% | Mem 341MiB

=== Best: 190512 req/s (CPU: 3422.5%, Mem: 341MiB) ===
[info] input BW: 12.72MB/s (avg template: 70 bytes)
[info] saved results/async-db/1024/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11
[info] skip: genhttp-11 does not subscribe to crud
[info] skip: genhttp-11 does not subscribe to fortunes
[info] skip: genhttp-11 does not subscribe to baseline-h2
[info] skip: genhttp-11 does not subscribe to static-h2
[info] skip: genhttp-11 does not subscribe to baseline-h2c
[info] skip: genhttp-11 does not subscribe to json-h2c
[info] skip: genhttp-11 does not subscribe to baseline-h3
[info] skip: genhttp-11 does not subscribe to static-h3
[info] skip: genhttp-11 does not subscribe to gateway-64
[info] skip: genhttp-11 does not subscribe to gateway-h3
[info] skip: genhttp-11 does not subscribe to production-stack
[info] skip: genhttp-11 does not subscribe to unary-grpc
[info] skip: genhttp-11 does not subscribe to unary-grpc-tls
[info] skip: genhttp-11 does not subscribe to stream-grpc
[info] skip: genhttp-11 does not subscribe to stream-grpc-tls
[info] skip: genhttp-11 does not subscribe to echo-ws
[info] skip: genhttp-11 does not subscribe to echo-ws-pipeline
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/async-db-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp-11 --save

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp-11 | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline 512 1,474,025 5725.9% 216MiB NEW NEW
baseline 4096 1,424,919 5789.0% 465MiB NEW NEW
pipelined 512 3,218,546 5837.1% 172MiB NEW NEW
pipelined 4096 3,343,454 6262.0% 391MiB NEW NEW
limited-conn 512 983,578 5711.2% 191MiB NEW NEW
limited-conn 4096 942,884 5688.0% 359MiB NEW NEW
json 4096 663,217 5900.8% 488MiB NEW NEW
json-comp 512 330,394 5594.1% 439MiB NEW NEW
json-comp 4096 317,344 5897.9% 2.1GiB NEW NEW
json-comp 16384 291,962 5783.0% 3.6GiB NEW NEW
json-tls 4096 294,202 5788.4% 570MiB NEW NEW
upload 32 2,655 2713.4% 100MiB NEW NEW
upload 256 2,999 4037.4% 159MiB NEW NEW
api-4 256 40,150 391.0% 159MiB NEW NEW
api-16 1024 116,162 1535.4% 285MiB NEW NEW
static 1024 39,568 4333.0% 383MiB NEW NEW
crud 4096 454,767 4095.6% 631MiB NEW NEW
echo-ws 512 1,789,519 5833.9% 188MiB NEW NEW
echo-ws 4096 1,739,280 5994.4% 687MiB NEW NEW
echo-ws 16384 1,635,356 5783.3% 1.6GiB NEW NEW
Full log


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency    285us    204us    495us   1.66ms   4.25ms

  8947601 frames sent in 5.00s, 8947599 frames received
  Throughput: 1.79M req/s
  Bandwidth:  11.94MB/s
  WS upgrades: 512
  WS frames:   8947599
  Latency samples: 8947564 / 8947599 responses (100.0%)
[info] CPU 5833.9% | Mem 188MiB

=== Best: 1789519 req/s (CPU: 5833.9%, Mem: 188MiB) ===
[info] saved results/echo-ws/512/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11

==============================================
=== genhttp-11 / echo-ws / 4096c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   2.42ms   1.43ms   5.54ms   16.10ms   28.30ms

  6839697 frames sent in 5.00s, 6835802 frames received
  Throughput: 1.37M req/s
  Bandwidth:  9.27MB/s
  WS upgrades: 4096
  WS frames:   6835802
  Latency samples: 6835798 / 6835802 responses (100.0%)
[info] CPU 5464.9% | Mem 492MiB

[run 2/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   2.15ms   1.36ms   4.74ms   13.50ms   28.80ms

  8699440 frames sent in 5.00s, 8696403 frames received
  Throughput: 1.74M req/s
  Bandwidth:  11.72MB/s
  WS upgrades: 4096
  WS frames:   8696403
  Latency samples: 8696403 / 8696403 responses (100.0%)
[info] CPU 5994.4% | Mem 687MiB

[run 3/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   2.12ms   1.30ms   4.73ms   13.20ms   26.40ms

  8635228 frames sent in 5.00s, 8632051 frames received
  Throughput: 1.73M req/s
  Bandwidth:  11.64MB/s
  WS upgrades: 4095
  WS frames:   8632051
  Latency samples: 8632026 / 8632051 responses (100.0%)
[info] CPU 5640.5% | Mem 633MiB

=== Best: 1739280 req/s (CPU: 5994.4%, Mem: 687MiB) ===
[info] saved results/echo-ws/4096/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11

==============================================
=== genhttp-11 / echo-ws / 16384c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     16384 (256/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   5.47ms   3.60ms   12.70ms   29.10ms   46.70ms

  6345394 frames sent in 5.00s, 6334185 frames received
  Throughput: 1.27M req/s
  Bandwidth:  8.87MB/s
  WS upgrades: 11248
  WS frames:   6334185
  Latency samples: 6334185 / 6334185 responses (100.0%)
[info] CPU 5592.9% | Mem 1015MiB

[run 2/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     16384 (256/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   7.50ms   4.49ms   18.50ms   40.10ms   60.70ms

  7851853 frames sent in 5.00s, 7835470 frames received
  Throughput: 1.57M req/s
  Bandwidth:  11.06MB/s
  WS upgrades: 16383
  WS frames:   7835470
  Latency samples: 7835470 / 7835470 responses (100.0%)
[info] CPU 5865.6% | Mem 1.5GiB

[run 3/3]
gcannon v0.5.3 [WS]
  Target:    localhost:8080/ws
  Threads:   64
  Conns:     16384 (256/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   5.74ms   3.51ms   13.50ms   32.40ms   56.00ms

  8188917 frames sent in 5.00s, 8176781 frames received
  Throughput: 1.63M req/s
  Bandwidth:  11.36MB/s
  WS upgrades: 12136
  WS frames:   8176781
  Latency samples: 8176781 / 8176781 responses (100.0%)
[info] CPU 5783.3% | Mem 1.6GiB

=== Best: 1635356 req/s (CPU: 5783.3%, Mem: 1.6GiB) ===
[info] saved results/echo-ws/16384/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11
[info] skip: genhttp-11 does not subscribe to echo-ws-pipeline
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-16-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-4-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/crud-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/echo-ws-16384.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/echo-ws-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/echo-ws-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-16384.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-tls-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-32.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

Not that good results ... nevertheless I will improve from here :)

@Kaliumhexacyanoferrat Kaliumhexacyanoferrat marked this pull request as ready for review May 26, 2026 11:41
@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented May 26, 2026

huge gains on baseline and upload though

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented May 26, 2026

/benchmark -f genhttp-11 -t async-db --save

1 similar comment
@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented May 26, 2026

/benchmark -f genhttp-11 -t async-db --save

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp-11 | Test: async-db

Test Conn RPS CPU Mem Δ RPS Δ Mem
async-db 1024 176,160 3543.3% 400MiB NEW NEW
Full log
[info] available CPUs: 128
[info] framework: genhttp-11 (genhttp-11, C#)
[info] subscribed tests: baseline,pipelined,limited-conn,json,json-comp,json-tls,upload,async-db,crud,static,echo-ws,api-4,api-16
[info] building image: httparena-genhttp-11
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 356B done
#1 DONE 0.0s

#2 [internal] load metadata for mcr.microsoft.com/dotnet/sdk:10.0
#2 DONE 0.1s

#3 [internal] load metadata for mcr.microsoft.com/dotnet/runtime:10.0
#3 DONE 0.1s

#4 [internal] load .dockerignore
#4 transferring context: 2B done
#4 DONE 0.0s

#5 [build 1/6] FROM mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc
#5 resolve mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc 0.1s done
#5 DONE 0.1s

#6 [stage-1 1/3] FROM mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4
#6 resolve mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4 0.1s done
#6 DONE 0.1s

#7 [internal] load build context
#7 transferring context: 20.34kB done
#7 DONE 0.0s

#8 [build 3/6] COPY genhttp.csproj ./
#8 CACHED

#9 [build 4/6] RUN dotnet restore
#9 CACHED

#10 [build 2/6] WORKDIR /source
#10 CACHED

#11 [build 6/6] RUN dotnet publish -c Release --no-self-contained -o /app
#11 CACHED

#12 [stage-1 2/3] WORKDIR /app
#12 CACHED

#13 [build 5/6] COPY . .
#13 CACHED

#14 [stage-1 3/3] COPY --from=build /app .
#14 CACHED

#15 exporting to image
#15 exporting layers done
#15 exporting manifest sha256:05af8ddef33f55e6daf28fd89b96c1a98cbad43bac47f5c81781f2f9770b9aa3 done
#15 exporting config sha256:43fa88e17987a500b1bc1ad6f834cbbdecb33451c63899f550ec37153b709700
#15 exporting config sha256:43fa88e17987a500b1bc1ad6f834cbbdecb33451c63899f550ec37153b709700 done
#15 exporting attestation manifest sha256:a6c9c00f1014e0c25a000dd143b8ce2b0585fab7fc07f695bf527007776ff42a
#15 exporting attestation manifest sha256:a6c9c00f1014e0c25a000dd143b8ce2b0585fab7fc07f695bf527007776ff42a 0.2s done
#15 exporting manifest list sha256:773ad43b03b68124c1a682d1141bc1fa4480f24e2590de5bcc8ea569fa830c42
#15 exporting manifest list sha256:773ad43b03b68124c1a682d1141bc1fa4480f24e2590de5bcc8ea569fa830c42 0.0s done
#15 naming to docker.io/library/httparena-genhttp-11:latest done
#15 unpacking to docker.io/library/httparena-genhttp-11:latest done
#15 DONE 0.3s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)
[info] starting redis sidecar (cpuset=0,64)
[info] redis ready

==============================================
=== genhttp-11 / async-db / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   8.37ms   5.65ms   15.80ms   29.90ms   110.70ms

  1177286 requests in 10.00s, 1177286 responses
  Throughput: 117.70K req/s
  Bandwidth:  456.05MB/s
  Status codes: 2xx=1177286, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1177286 / 1177286 responses (100.0%)
  Reconnects: 46589
  Per-template: 234860,235380,236080,235956,235010
  Per-template-ok: 234860,235380,236080,235956,235010
[info] CPU 4293.9% | Mem 388MiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   5.47ms   4.97ms   8.80ms   13.00ms   18.10ms

  1669307 requests in 10.00s, 1669307 responses
  Throughput: 166.90K req/s
  Bandwidth:  646.72MB/s
  Status codes: 2xx=1669307, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1669306 / 1669307 responses (100.0%)
  Reconnects: 66530
  Per-template: 333196,333689,334515,334488,333418
  Per-template-ok: 333196,333689,334515,334488,333418
[info] CPU 3343.4% | Mem 397MiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   5.14ms   4.65ms   8.41ms   12.70ms   18.20ms

  1761602 requests in 10.00s, 1761603 responses
  Throughput: 176.12K req/s
  Bandwidth:  682.39MB/s
  Status codes: 2xx=1761603, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 1761603 / 1761603 responses (100.0%)
  Reconnects: 70297
  Per-template: 351551,352260,353133,352905,351754
  Per-template-ok: 351551,352260,353133,352905,351754
[info] CPU 3543.3% | Mem 400MiB

=== Best: 176160 req/s (CPU: 3543.3%, Mem: 400MiB) ===
[info] input BW: 11.76MB/s (avg template: 70 bytes)
[info] saved results/async-db/1024/genhttp-11.json
httparena-bench-genhttp-11
httparena-bench-genhttp-11
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/async-db-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@MDA2AV MDA2AV merged commit 4817344 into MDA2AV:main May 26, 2026
@Kaliumhexacyanoferrat Kaliumhexacyanoferrat deleted the genhttp-11 branch May 27, 2026 06:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants