Skip to content

[Rust] Add WTX - gRPC#812

Merged
MDA2AV merged 1 commit into
MDA2AV:mainfrom
c410-f3r:misc
Jun 6, 2026
Merged

[Rust] Add WTX - gRPC#812
MDA2AV merged 1 commit into
MDA2AV:mainfrom
c410-f3r:misc

Conversation

@c410-f3r
Copy link
Copy Markdown
Contributor

@c410-f3r c410-f3r commented Jun 6, 2026

Description

WTX also has a PostgreSQL client but related benchmarks only exist for HTTP/1.1. Therefore, this is the last protocol.

@c410-f3r
Copy link
Copy Markdown
Contributor Author

c410-f3r commented Jun 6, 2026

/benchmark -f wtx-grpc --save

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

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

@c410-f3r
Copy link
Copy Markdown
Contributor Author

c410-f3r commented Jun 6, 2026

[3](https://github.com/MDA2AV/HttpArena/actions/runs/27046698150/job/79833999847?pr=812#step:3:154)
[wait] Waiting for server...
FAIL: Server did not start within 30s
httparena-validate-wtx-grpc

The validate.sh script awaits for localhost:8082 but at the same time unary-grpc is benchmarked in port 8080. Moreover, docs say that gRPC is not verified.

The gRPC unary profile does not have dedicated validation checks in validate.sh. Correctness is verified during the benchmark run itself:

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Jun 6, 2026

/benchmark -f wtx-grpc

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

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

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

Benchmark Results

Framework: wtx-grpc | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
unary-grpc 256 2,390,116 6485.3% 478MiB NEW NEW
unary-grpc 1024 2,270,503 6452.5% 777MiB NEW NEW
Full log
.Warm-up phase is over for thread #
55.Warm-up phase is over for thread #61.
13.
52Main benchmark duration is started for thread #50.
.
1.
58.
.
.
. Stopping all clients.


finished in 5.04s, 2409228.60 req/s, 103.40MB/s
requests: 12046143 total, 12071743 started, 12046143 done, 12046143 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 12046185 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 516.98MB (542094595) total, 310.18MB (325246491) headers (space savings 46.00%), 0B (0) data
                     min         max         mean         sd        +/- sd
time for request:      353us    210.27ms     11.28ms      5.21ms    69.43%
time for connect:       25us      2.25ms       355us       300us    89.84%
time to 1st byte:     1.48ms     27.74ms      8.28ms      6.06ms    66.80%
req/s           :    4093.22    37879.77     9410.70     5354.09    92.58%
[info] CPU 6485.3% | Mem 478MiB

[run 3/3]
starting benchmark...
.
43.
62.
10.
.
50.Warm-up phase is over for thread #0.
Application protocol: h2c

.Warm-up phase is over for thread #Warm-up phase is over for thread #Main benchmark duration is started for thread #15.
56Main benchmark duration is started for thread #.13.


.

11.
13. Stopping all clients.Stopped all clients for thread #1


finished in 5.03s, 2361586.60 req/s, 101.35MB/s
requests: 11807933 total, 11833533 started, 11807933 done, 11807933 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 11807971 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 506.76MB (531375049) total, 304.05MB (318814761) headers (space savings 46.00%), 0B (0) data
                     min         max         mean         sd        +/- sd
time for request:      550us    179.88ms     11.45ms      5.45ms    66.30%
time for connect:       31us      2.73ms       404us       326us    83.59%
time to 1st byte:     1.47ms     33.04ms      8.73ms      6.45ms    65.63%
req/s           :    4047.57    37675.68     9224.55     5601.23    90.23%
[info] CPU 6380.9% | Mem 482MiB

=== Best: 2390116 req/s (CPU: 6485.3%, Mem: 478MiB) ===
[info] saved results/unary-grpc/256/wtx-grpc.json
httparena-bench-wtx-grpc
httparena-bench-wtx-grpc

==============================================
=== wtx-grpc / unary-grpc / 1024c (tool=h2load) ===
==============================================
[info] waiting for server...
[info] gRPC server ready

[run 1/3]
starting benchmark...

10.61Warm-up phase is over for thread #31.


.

.
37.
28.




.
.49.


57.

23. Stopping all clients.1555Main benchmark duration is over for thread #. Stopping all clients.
. Stopping all clients.

10Main benchmark duration is over for thread #18. Stopping all clients.
. Stopping all clients.
10Stopped all clients for thread #23

. Stopping all clients.
34. Stopping all clients.
. Stopping all clients.
35. Stopping all clients.
26Main benchmark duration is over for thread #
48. Stopping all clients.
45
39

finished in 5.09s, 2181767.20 req/s, 93.64MB/s
requests: 10908836 total, 11011236 started, 10908836 done, 10908836 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 10908866 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 468.22MB (490966948) total, 280.89MB (294539022) headers (space savings 46.00%), 0B (0) data
                     min         max         mean         sd        +/- sd
time for request:      662us    843.54ms     52.86ms     38.52ms    93.59%
time for connect:       21us      4.92ms      1.46ms      1.11ms    74.90%
time to 1st byte:    11.57ms    445.38ms    204.33ms    100.56ms    60.64%
req/s           :    1419.53     5136.69     2130.31      489.46    81.93%
[info] CPU 6240.9% | Mem 751MiB

[run 2/3]
starting benchmark...
.
18.
.
Application protocol: h2c

32.Main benchmark duration is started for thread #12.

.2Main benchmark duration is started for thread #50.
722.
.

.Warm-up phase is over for thread #54.
.

44. Stopping all clients.

46. Stopping all clients.

finished in 5.05s, 2291178.60 req/s, 98.34MB/s
requests: 11455893 total, 11558293 started, 11455893 done, 11455893 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 11455935 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 491.70MB (515584801) total, 294.98MB (309309741) headers (space savings 46.00%), 0B (0) data
                     min         max         mean         sd        +/- sd
time for request:     1.20ms       1.20s     43.42ms     16.82ms    78.40%
time for connect:       19us      3.85ms      1.22ms       767us    64.75%
time to 1st byte:     4.82ms    122.19ms     29.62ms     24.69ms    82.03%
req/s           :    1279.35     5002.02     2237.11      612.24    68.26%
[info] CPU 6482.8% | Mem 767MiB

[run 3/3]
starting benchmark...
Application protocol: h2c
1.
49.
.
.Warm-up phase is over for thread #Main benchmark duration is started for thread #5653.

12.


4.

.
.
14.


..


49. Stopping all clients.
2. Stopping all clients.

29. Stopping all clients.


. Stopping all clients.

finished in 5.06s, 2297740.40 req/s, 98.62MB/s
requests: 11488702 total, 11591102 started, 11488702 done, 11488702 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 11488747 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 493.11MB (517061278) total, 295.83MB (310195629) headers (space savings 46.00%), 0B (0) data
                     min         max         mean         sd        +/- sd
time for request:      834us    898.35ms     42.75ms     15.00ms    74.05%
time for connect:       19us      5.97ms      1.28ms       863us    67.58%
time to 1st byte:     4.82ms     93.36ms     28.34ms     20.88ms    67.77%
req/s           :    1479.96     5192.01     2243.55      631.18    82.23%
[info] CPU 6452.5% | Mem 777MiB

=== Best: 2270503 req/s (CPU: 6452.5%, Mem: 777MiB) ===
[info] saved results/unary-grpc/1024/wtx-grpc.json
httparena-bench-wtx-grpc
httparena-bench-wtx-grpc
[info] skip: wtx-grpc does not subscribe to unary-grpc-tls
[info] skip: wtx-grpc does not subscribe to stream-grpc
[info] skip: wtx-grpc does not subscribe to stream-grpc-tls
[info] skip: wtx-grpc does not subscribe to echo-ws
[info] skip: wtx-grpc 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/unary-grpc-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/unary-grpc-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
[info] restoring loopback MTU to 65536

@MDA2AV MDA2AV merged commit b418f06 into MDA2AV:main Jun 6, 2026
3 of 4 checks passed
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