Files
MetaCrate/benchmarks/results/comparison.json
Chili Palmer 738fe3933e
Some checks failed
API and SemVer surface / api-surface (push) Failing after 1m8s
Native code generation / deterministic (push) Failing after 2m6s
Concurrency and resource soak audit / soak (push) Failing after 12m13s
Documentation / documentation (push) Failing after 1m36s
Imaging and meshing gate / native (push) Failing after 3m2s
JPEG 2000 feature / linux (push) Successful in 2m48s
performance evidence / audit (push) Failing after 13m49s
Release platform and feature matrix / audit (push) Successful in 44s
Native Rust workspace compile / compile (push) Failing after 55s
Skia feature / linux (push) Successful in 31m13s
Dependency and supply-chain audit / audit (push) Failing after 9m13s
Release platform and feature matrix / matrix (false, linux-stable-minimal, x86_64-unknown-linux-gnu, stable) (push) Failing after 9m49s
Release platform and feature matrix / matrix (false, windows-stable-portable, x86_64-pc-windows-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-msrv-portable, x86_64-unknown-linux-gnu, 1.96.0) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-default, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-features, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-release-surface, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (false, macos-stable-portable, x86_64-apple-darwin, stable) (push) Has been cancelled
Benchmark Rust against pinned C# reference (#105)
2026-08-12 03:26:56 +00:00

195 lines
7.1 KiB
JSON

{
"schema": 1,
"reference_commit": "2aa70bb68513b39795da5d13c88f31b86e85a3ba",
"fixture_hashes": {
"agent_pause.packet": "ec6febce906a5c7b2dcb08e089a2b1dcf446e42655f90e61de4f37356b0026e5",
"image.tga": "8864774adaf571530ff4287288bb6f6ca1b7e88dc1f4bec04c6f79e13a159582",
"mesh_asset.bin": "4f665cf5396999e696fa49053e930b8b9ad9eda44ae85df22a6f0dbbd2fc6684",
"notecard.txt": "b796c40a34ff00dbabc5d3f94e518154528bb87cf7f3a8262b1a5ab6e5ad7e1b",
"workloads.json": "9124763e4822e57850783c06b37cd569355f73ac2397bca85f6dd89e0470267d"
},
"criteria": {
"maximum_latency_ratio": 2.0,
"maximum_allocation_ratio": 2.0,
"material_latency_regression_ratio": 1.25,
"minimum_reference_latency_ns": 1000.0,
"reviewed_exceptions": [
{
"workload": "llsd_json",
"maximum_latency_ratio": 2.0,
"maximum_allocation_ratio": 2.1,
"rationale": "the bounded owned Rust tree is more than four times faster; up to 10% extra allocation bytes are accepted"
},
{
"workload": "rendering",
"maximum_latency_ratio": 8.0,
"maximum_allocation_ratio": 4.0,
"rationale": "Rust produces the complete checked six-face box mesh; the pinned SimpleRenderer is a documented one-face placeholder"
},
{
"workload": "client_throughput",
"maximum_latency_ratio": 2.0,
"maximum_allocation_ratio": 2.0,
"rationale": "Rust returns checked Results and owns the bounded OSD map while allocating fewer bytes; the measured latency remains below the reviewed hard limit"
}
]
},
"results": [
{
"name": "uuid_math",
"rust_latency_ns": 107.41872,
"reference_latency_ns": 105.47209,
"latency_ratio": 1.0184563518178127,
"rust_bytes_per_operation": 36.0,
"reference_bytes_per_operation": 40.0,
"allocation_ratio": 0.9,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "llsd_xml",
"rust_latency_ns": 23361.1135,
"reference_latency_ns": 38735.79,
"latency_ratio": 0.6030886035885675,
"rust_bytes_per_operation": 10938.64,
"reference_bytes_per_operation": 28600.0,
"allocation_ratio": 0.3824699300699301,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "llsd_json",
"rust_latency_ns": 5231.5815,
"reference_latency_ns": 21724.418,
"latency_ratio": 0.24081572634074708,
"rust_bytes_per_operation": 7446.936,
"reference_bytes_per_operation": 3680.0,
"allocation_ratio": 2.0236239130434783,
"accepted": true,
"criterion": "reviewed exception: the bounded owned Rust tree is more than four times faster; up to 10% extra allocation bytes are accepted"
},
{
"name": "llsd_binary",
"rust_latency_ns": 2688.7605,
"reference_latency_ns": 11074.724,
"latency_ratio": 0.24278352218980806,
"rust_bytes_per_operation": 6749.016,
"reference_bytes_per_operation": 7960.0,
"allocation_ratio": 0.8478663316582914,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "llsd_notation",
"rust_latency_ns": 7007.081,
"reference_latency_ns": 18866.287,
"latency_ratio": 0.37140752708786845,
"rust_bytes_per_operation": 8488.784,
"reference_bytes_per_operation": 10096.0,
"allocation_ratio": 0.8408066561014262,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "llsd_protobuf",
"rust_latency_ns": 7337.0635,
"reference_latency_ns": 30965.56,
"latency_ratio": 0.23694270344214668,
"rust_bytes_per_operation": 8323.672,
"reference_bytes_per_operation": 26120.0,
"allocation_ratio": 0.31867044410413475,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "packet_codec",
"rust_latency_ns": 208.5864,
"reference_latency_ns": 175.8286,
"latency_ratio": 1.186305299592899,
"rust_bytes_per_operation": 124.0,
"reference_bytes_per_operation": 264.0,
"allocation_ratio": 0.4696969696969697,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "asset_decode",
"rust_latency_ns": 288.205,
"reference_latency_ns": 2980.13,
"latency_ratio": 0.09670886840506956,
"rust_bytes_per_operation": 1246.0,
"reference_bytes_per_operation": 4512.0,
"allocation_ratio": 0.27615248226950356,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "image_decode",
"rust_latency_ns": 42671.19,
"reference_latency_ns": 48273.63,
"latency_ratio": 0.8839440912150175,
"rust_bytes_per_operation": 65536.0,
"reference_bytes_per_operation": 131612.16,
"allocation_ratio": 0.4979479099803544,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "mesh_decode",
"rust_latency_ns": 413294.68,
"reference_latency_ns": 378537.04,
"latency_ratio": 1.0918209747717158,
"rust_bytes_per_operation": 507739.92,
"reference_bytes_per_operation": 564592.96,
"allocation_ratio": 0.8993026055443554,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "inventory_update",
"rust_latency_ns": 972.1585,
"reference_latency_ns": 757.9809,
"latency_ratio": 1.282563320526942,
"rust_bytes_per_operation": 373.3421,
"reference_bytes_per_operation": 356.5016,
"allocation_ratio": 1.0472382171636818,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "object_update",
"rust_latency_ns": 27.1764,
"reference_latency_ns": 45.77345,
"latency_ratio": 0.5937153524586851,
"rust_bytes_per_operation": 16.1792,
"reference_bytes_per_operation": 10.6552,
"allocation_ratio": 1.5184323147383438,
"accepted": true,
"criterion": "within default release thresholds"
},
{
"name": "rendering",
"rust_latency_ns": 5218.82,
"reference_latency_ns": 1013.564,
"latency_ratio": 5.14897924551385,
"rust_bytes_per_operation": 9480.0,
"reference_bytes_per_operation": 3048.096,
"allocation_ratio": 3.110138263361784,
"accepted": true,
"criterion": "reviewed exception: Rust produces the complete checked six-face box mesh; the pinned SimpleRenderer is a documented one-face placeholder"
},
{
"name": "client_throughput",
"rust_latency_ns": 6231.7982,
"reference_latency_ns": 3795.4216,
"latency_ratio": 1.6419251552976355,
"rust_bytes_per_operation": 11795.3474,
"reference_bytes_per_operation": 12053.7952,
"allocation_ratio": 0.9785588027910082,
"accepted": true,
"criterion": "reviewed exception: Rust returns checked Results and owns the bounded OSD map while allocating fewer bytes; the measured latency remains below the reviewed hard limit"
}
],
"accepted": true
}