Skip to content

Latest commit

 

History

History
380 lines (317 loc) · 27.3 KB

File metadata and controls

380 lines (317 loc) · 27.3 KB

POSIX Benchmark Results

Generated: 2026-04-19 17:52:39 UTC

Machine: costa-desktop (x86_64, 24 cores)

CSV: benchmarks-posix.csv

Complete matrix rows expected: 201

Validation Summary

Scenario Target RPS Expected Rows Actual Rows
uds-ping-pong 0 9 9
uds-ping-pong 100000 9 9
uds-ping-pong 10000 9 9
uds-ping-pong 1000 9 9
shm-ping-pong 0 9 9
shm-ping-pong 100000 9 9
shm-ping-pong 10000 9 9
shm-ping-pong 1000 9 9
uds-batch-ping-pong 0 9 9
uds-batch-ping-pong 100000 9 9
uds-batch-ping-pong 10000 9 9
uds-batch-ping-pong 1000 9 9
shm-batch-ping-pong 0 9 9
shm-batch-ping-pong 100000 9 9
shm-batch-ping-pong 10000 9 9
shm-batch-ping-pong 1000 9 9
snapshot-baseline 0 9 9
snapshot-baseline 1000 9 9
snapshot-shm 0 9 9
snapshot-shm 1000 9 9
lookup 0 3 3
uds-pipeline-d16 0 9 9
uds-pipeline-batch-d16 0 9 9

UDS Ping-Pong

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 169.5k 4 7 15 45.8% 52.576% 98.376%
c go 158.2k 5 8 18 44.0% 53.781% 97.781%
c rust 160.5k 6 7 15 46.2% 53.521% 99.721%
go c 153.0k 5 8 18 53.1% 48.763% 101.863%
go go 148.9k 5 9 19 50.6% 50.577% 101.177%
go rust 148.2k 7 8 17 53.0% 49.182% 102.182%
rust c 160.9k 5 7 16 47.1% 51.446% 98.546%
rust go 142.1k 5 9 21 42.6% 51.643% 94.243%
rust rust 156.0k 6 7 16 46.9% 52.018% 98.918%

100000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 100.0k 6 9 21 32.5% 35.925% 68.425%
c go 100.0k 7 10 22 34.0% 41.034% 75.034%
c rust 100.0k 6 8 19 31.9% 35.989% 67.889%
go c 100.0k 7 9 20 37.8% 33.880% 71.680%
go go 100.0k 7 9 21 37.9% 37.347% 75.247%
go rust 100.0k 7 8 18 37.4% 34.186% 71.586%
rust c 100.0k 6 9 22 34.5% 37.108% 71.608%
rust go 100.0k 7 9 20 33.8% 40.595% 74.395%
rust rust 100.0k 7 8 18 33.0% 36.124% 69.124%

10000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 10.0k 8 23 33 5.5% 5.290% 10.790%
c go 10.0k 8 25 35 6.0% 7.133% 13.133%
c rust 10.0k 8 21 31 5.9% 5.497% 11.397%
go c 10.0k 7 20 35 5.5% 4.451% 9.951%
go go 10.0k 8 21 34 5.6% 5.592% 11.192%
go rust 10.0k 7 24 37 5.9% 4.740% 10.640%
rust c 10.0k 8 21 31 5.4% 4.939% 10.339%
rust go 10.0k 9 26 36 6.3% 7.270% 13.570%
rust rust 10.0k 8 22 32 5.6% 5.197% 10.797%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 1.0k 26 46 61 1.1% 1.038% 2.138%
c go 1.0k 17 37 52 1.1% 1.998% 3.098%
c rust 1.0k 17 32 43 0.7% 0.985% 1.685%
go c 1.0k 19 38 51 1.8% 1.139% 2.939%
go go 1.0k 19 38 49 1.8% 1.886% 3.686%
go rust 1.0k 17 37 48 1.7% 1.051% 2.751%
rust c 1.0k 15 29 39 1.0% 0.972% 1.972%
rust go 1.0k 18 37 57 1.2% 2.007% 3.207%
rust rust 1.0k 15 30 39 1.0% 0.998% 1.998%

SHM Ping-Pong

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 3.22M 0 0 0 98.7% 98.718% 197.418%
c go 3.15M 0 0 0 98.5% 99.130% 197.630%
c rust 3.17M 0 0 0 97.9% 97.900% 195.800%
go c 2.45M 0 0 0 98.8% 98.055% 196.855%
go go 2.45M 0 0 0 98.8% 98.688% 197.488%
go rust 2.32M 0 0 0 98.6% 97.926% 196.526%
rust c 3.00M 0 0 0 98.7% 98.738% 197.438%
rust go 2.82M 0 0 0 98.3% 98.979% 197.279%
rust rust 3.10M 0 0 0 98.6% 98.599% 197.199%

100000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 100.0k 0 3 11 10.9% 13.091% 23.991%
c go 100.0k 0 3 11 11.0% 15.516% 26.516%
c rust 100.0k 0 3 12 11.3% 13.685% 24.985%
go c 100.0k 0 0 6 6.8% 6.256% 13.056%
go go 100.0k 0 0 8 7.0% 7.329% 14.329%
go rust 100.0k 0 0 4 6.6% 6.261% 12.861%
rust c 100.0k 0 3 12 11.9% 14.080% 25.980%
rust go 100.0k 0 3 12 11.5% 16.008% 27.508%
rust rust 100.0k 0 3 13 11.7% 14.116% 25.816%

10000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 10.0k 2 13 21 4.7% 6.130% 10.830%
c go 10.0k 3 13 20 5.3% 7.991% 13.291%
c rust 10.0k 2 12 17 4.5% 6.090% 10.590%
go c 10.0k 0 9 17 2.0% 1.610% 3.610%
go go 10.0k 0 13 21 2.3% 2.765% 5.065%
go rust 10.0k 0 10 18 2.0% 1.652% 3.652%
rust c 10.0k 2 12 18 4.7% 5.833% 10.533%
rust go 10.0k 3 13 19 5.0% 7.775% 12.775%
rust rust 10.0k 3 13 20 5.0% 6.482% 11.482%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 1.0k 10 21 51 1.1% 1.094% 2.194%
c go 1.0k 9 17 23 0.9% 1.828% 2.728%
c rust 1.0k 8 17 25 0.9% 0.983% 1.883%
go c 1.0k 8 19 31 1.3% 0.942% 2.242%
go go 1.0k 8 18 27 1.3% 1.699% 2.999%
go rust 1.0k 9 18 27 1.3% 0.936% 2.236%
rust c 1.0k 10 19 28 1.0% 1.068% 2.068%
rust go 1.0k 9 18 25 1.0% 1.840% 2.840%
rust rust 1.0k 9 18 29 1.0% 0.982% 1.982%

UDS Batch Ping-Pong

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 30.13M 12 25 34 47.5% 48.658% 96.158%
c go 23.40M 16 38 48 37.4% 59.741% 97.141%
c rust 27.17M 13 34 44 42.4% 53.728% 96.128%
go c 27.16M 13 27 38 54.2% 43.883% 98.083%
go go 20.18M 18 42 51 42.9% 56.278% 99.178%
go rust 22.54M 16 37 47 48.1% 49.879% 97.979%
rust c 28.57M 13 25 35 52.2% 44.572% 96.772%
rust go 23.04M 16 36 45 42.0% 56.391% 98.391%
rust rust 25.21M 14 33 44 47.0% 49.754% 96.754%

100000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 30.35M 12 24 32 48.1% 49.037% 97.137%
c go 22.24M 17 39 47 37.6% 60.073% 97.673%
c rust 28.09M 13 32 42 42.8% 54.570% 97.370%
go c 27.93M 13 27 35 54.4% 43.963% 98.363%
go go 20.68M 18 41 50 43.1% 56.117% 99.217%
go rust 25.16M 14 34 43 49.3% 49.325% 98.625%
rust c 27.34M 13 25 34 51.7% 45.067% 96.767%
rust go 21.87M 17 39 46 41.3% 56.816% 98.116%
rust rust 26.71M 14 30 41 47.8% 49.626% 97.426%

10000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 5.04M 17 31 43 11.5% 10.575% 22.075%
c go 5.04M 20 46 59 11.2% 16.605% 27.805%
c rust 5.04M 17 36 46 10.4% 12.139% 22.539%
go c 4.99M 16 31 45 12.4% 9.628% 22.028%
go go 5.02M 21 45 58 12.7% 16.130% 28.830%
go rust 5.02M 17 38 48 12.3% 11.734% 24.034%
rust c 5.04M 17 30 42 12.4% 10.441% 22.841%
rust go 5.04M 20 44 56 11.8% 15.956% 27.756%
rust rust 5.04M 21 40 50 13.1% 14.160% 27.260%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 505.3k 25 45 59 1.7% 1.572% 3.272%
c go 505.3k 32 55 66 1.6% 2.837% 4.437%
c rust 505.3k 41 118 695 4.0% 3.331% 7.331%
go c 501.1k 27 49 65 2.4% 1.586% 3.986%
go go 504.9k 34 60 74 2.4% 2.825% 5.225%
go rust 507.0k 33 64 139 2.9% 2.007% 4.907%
rust c 505.3k 24 43 54 1.8% 1.547% 3.347%
rust go 505.3k 32 58 70 1.9% 2.867% 4.767%
rust rust 505.3k 40 85 211 3.0% 2.446% 5.446%

SHM Batch Ping-Pong

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 48.95M 7 17 21 81.7% 81.704% 163.404%
c go 34.27M 12 25 32 65.1% 84.457% 149.557%
c rust 47.87M 8 17 23 79.4% 85.601% 165.001%
go c 45.19M 7 18 22 85.5% 78.113% 163.613%
go go 33.32M 12 25 32 71.4% 81.922% 153.322%
go rust 38.01M 10 21 28 78.2% 76.699% 154.899%
rust c 43.91M 8 18 22 84.1% 77.882% 161.982%
rust go 28.71M 13 27 36 64.6% 77.608% 142.208%
rust rust 36.53M 10 22 30 75.6% 74.974% 150.574%

100000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 48.08M 7 17 21 81.0% 81.442% 162.442%
c go 34.59M 12 25 33 65.2% 84.729% 149.929%
c rust 42.71M 9 20 26 74.5% 81.914% 156.414%
go c 48.36M 7 17 21 87.4% 81.920% 169.320%
go go 30.99M 13 27 35 69.1% 80.334% 149.434%
go rust 39.94M 9 20 27 80.2% 77.889% 158.089%
rust c 39.68M 9 19 24 80.1% 72.781% 152.881%
rust go 29.93M 13 26 33 67.1% 78.029% 145.129%
rust rust 32.66M 11 24 32 71.3% 71.392% 142.692%

10000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 5.04M 12 23 31 11.9% 11.317% 23.217%
c go 5.04M 18 37 46 12.6% 18.172% 30.772%
c rust 5.04M 14 27 35 12.1% 12.795% 24.895%
go c 5.02M 14 34 229 14.1% 11.703% 25.803%
go go 5.03M 17 36 43 13.3% 16.821% 30.121%
go rust 5.01M 14 32 40 12.9% 13.235% 26.135%
rust c 5.04M 13 23 30 13.2% 11.272% 24.472%
rust go 5.04M 18 36 42 13.3% 18.216% 31.516%
rust rust 5.04M 15 30 37 13.2% 13.527% 26.727%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 505.3k 17 29 38 1.6% 1.500% 3.100%
c go 505.3k 22 43 56 1.6% 2.803% 4.403%
c rust 505.3k 19 35 42 1.6% 1.683% 3.283%
go c 502.9k 18 32 44 2.1% 1.523% 3.623%
go go 503.2k 22 45 58 2.2% 2.813% 5.013%
go rust 502.1k 20 38 46 2.1% 1.724% 3.824%
rust c 505.3k 17 29 36 1.7% 1.506% 3.206%
rust go 505.3k 23 43 54 1.7% 2.815% 4.515%
rust rust 505.3k 20 36 44 1.7% 1.776% 3.476%

Snapshot Baseline Refresh

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 147.7k 6 8 17 44.9% 53.581% 98.481%
c go 138.4k 6 9 19 41.7% 56.374% 98.074%
c rust 143.6k 5 9 20 43.3% 52.091% 95.391%
go c 142.6k 5 9 19 51.7% 49.076% 100.776%
go go 131.2k 6 10 20 49.4% 53.355% 102.755%
go rust 139.1k 5 9 19 51.7% 49.563% 101.263%
rust c 156.3k 5 8 17 45.8% 52.892% 98.692%
rust go 140.2k 5 9 19 42.8% 56.684% 99.484%
rust rust 148.7k 5 8 17 45.3% 53.263% 98.563%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 1.0k 17 34 46 1.1% 1.153% 2.253%
c go 1.0k 20 41 59 1.2% 2.135% 3.335%
c rust 1.0k 17 35 46 1.1% 1.191% 2.291%
go c 1.0k 17 34 48 1.5% 1.046% 2.546%
go go 1.0k 21 41 55 1.8% 1.973% 3.773%
go rust 1.0k 20 40 50 1.8% 1.180% 2.980%
rust c 1.0k 16 31 41 1.1% 1.073% 2.173%
rust go 1.0k 18 38 54 1.2% 1.993% 3.193%
rust rust 1.0k 15 33 44 1.1% 1.092% 2.192%

Snapshot SHM Refresh

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 1.48M 0 0 0 98.6% 98.629% 197.229%
c go 1.32M 0 0 1 98.2% 100.906% 199.106%
c rust 1.52M 0 0 0 97.9% 97.957% 195.857%
go c 1.25M 0 0 1 98.6% 98.002% 196.602%
go go 1.10M 0 1 1 97.9% 99.946% 197.846%
go rust 1.35M 0 0 1 98.6% 98.003% 196.603%
rust c 1.41M 0 0 0 98.2% 98.208% 196.408%
rust go 1.31M 0 0 1 97.8% 100.603% 198.403%
rust rust 1.48M 0 0 0 98.2% 98.233% 196.433%

1000 req/s target

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 1.0k 12 21 32 0.6% 1.014% 1.614%
c go 1.0k 11 22 36 1.0% 1.967% 2.967%
c rust 1.0k 11 19 29 1.0% 1.084% 2.084%
go c 1.0k 11 22 34 1.5% 1.051% 2.551%
go go 1.0k 11 22 33 1.4% 1.881% 3.281%
go rust 1.0k 10 21 30 1.4% 1.016% 2.416%
rust c 1.0k 12 20 30 1.1% 1.150% 2.250%
rust go 1.0k 11 21 34 1.0% 2.015% 3.015%
rust rust 1.0k 12 20 33 1.1% 1.137% 2.237%

UDS Pipeline

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 576.7k 22 38 49 76.2% 89.964% 166.164%
c go 440.4k 32 51 64 69.6% 90.517% 160.117%
c rust 601.4k 21 38 48 76.3% 90.408% 166.708%
go c 552.1k 26 38 50 91.7% 88.217% 179.917%
go go 480.8k 27 46 61 84.7% 89.434% 174.134%
go rust 545.3k 26 39 53 90.9% 87.904% 178.804%
rust c 584.2k 21 38 49 77.4% 89.595% 166.995%
rust go 455.0k 30 50 62 71.4% 91.226% 162.626%
rust rust 620.6k 21 38 47 77.5% 89.923% 167.423%

UDS Pipeline+Batch

Max throughput

Client Server Throughput p50 (us) p95 (us) p99 (us) Client CPU Server CPU Total CPU
c c 76.45M 86 162 190 73.9% 90.216% 164.116%
c go 46.02M 144 293 351 50.7% 93.860% 144.560%
c rust 57.52M 137 238 282 63.3% 92.754% 156.054%
go c 67.21M 126 167 201 86.8% 89.384% 176.184%
go go 41.61M 192 300 367 60.5% 92.050% 152.550%
go rust 56.64M 143 213 286 75.6% 90.199% 165.799%
rust c 74.49M 95 163 192 81.4% 90.259% 171.659%
rust go 44.24M 154 304 362 54.6% 92.928% 147.528%
rust rust 61.75M 116 197 230 71.9% 91.563% 163.463%

Local Cache Lookup

Language Throughput Client CPU Total CPU
c 173.47M 99.4% 99.4%
go 138.48M 99.5% 99.5%
rust 147.68M 99.4% 99.4%

Performance Floors

Metric Floor Status
SHM ping-pong max >= 1M req/s PASS
SHM snapshot refresh max >= 1M req/s for C/Rust pairs, >= 800k req/s for Go pairs PASS
UDS ping-pong max >= 120k req/s PASS
UDS snapshot refresh max >= 100k req/s PASS
Local cache lookup >= 10M lookups/s PASS