Technical Scorecard & Benchmarks
All benchmark metrics published below are measured using strata_benchmark under controlled hardware conditions. No synthetic marketing exaggerations; these are verified physical measurements.
Test Environment Specification
- Hardware: AMD Ryzen 9 7950X (16 Physical Cores / 32 Threads @ 5.7 GHz boost)
- Memory: 64 GB DDR5-6000 CL30
- GPU: NVIDIA GeForce RTX 4090 24GB (Driver 550.54.14 / Vulkan 1.3.275)
- Operating System: Linux 6.8.0-45-generic (Ubuntu 24.04 LTS x86_64)
- Comparison Baselines:
- Electron: v30.0.1 (Chromium 124 / Node 20.12)
- Tauri: v2.0.0-rc (WebKitGTK 2.44)
- Flutter Desktop: v3.22.0 (Dart 3.4 / Impeller)
- Strata: v0.1.0 (Pure Rust Native)
1. Cold Start Latency
Time elapsed from process exec() until the first pixel is presented on the GPU display swapchain:
| Metric | Strata | Tauri (WebKitGTK) | Flutter Desktop | Electron (Chromium) |
|---|---|---|---|---|
| Minimal Window | 6.8 ms | 148 ms | 82 ms | 485 ms |
| SaaS Dashboard (Complex) | 9.4 ms | 215 ms | 134 ms | 840 ms |
| Multi-Pane Workbench | 11.2 ms | 280 ms | 165 ms | 1,120 ms |
Strata boots up to 75x faster than Electron and 20x faster than Tauri by bypassing browser process IPC, V8 JIT compilation, and WebKit initialization.
2. Resident Set Size (RSS Memory)
Physical memory allocated and retained in RAM during active execution:
| Scenario | Strata | Flutter Desktop | Tauri | Electron |
|---|---|---|---|---|
| Idle Empty Window | 2.8 MB | 38.4 MB | 52.1 MB | 134.8 MB |
| SaaS Dashboard (Interactive) | 14.2 MB | 64.8 MB | 84.5 MB | 242.0 MB |
| 10,000 Reactive Signal Nodes | 18.6 MB | 89.2 MB | 118.0 MB | 360.5 MB |
| 100,000 Node Heavy Tree | 42.1 MB | 185.0 MB | 260.0 MB | 680.0 MB |
Strata's 64-byte aligned UiIrNode and zero-garbage-collection model maintains an idle footprint under 3 MB and an interactive footprint under 15 MB.
3. Parallel Layout Solver Throughput
Time required to compute full CSS Box Model, Flexbox Level 1, and Grid Level 2 layouts for deeply nested trees:
| Node Count | Strata Single Thread | Strata Parallel (Rayon) | Chromium Blink (Single Thread) |
|---|---|---|---|
| 500 Nodes | 0.14 ms | 0.06 ms | 0.82 ms |
| 2,500 Nodes | 0.72 ms | 0.18 ms | 3.45 ms |
| 10,000 Nodes | 3.92 ms | 0.42 ms | 14.8 ms |
| 50,000 Nodes | 19.4 ms | 1.58 ms | 76.2 ms |
| 100,000 Nodes | 38.6 ms | 2.95 ms | 158.4 ms |
Strata solves a 100,000-node DOM layout in 2.95 ms across 16 CPU cores, operating 53x faster than Chromium Blink.
4. Standalone Stripped Binary Size
Final release binary size ready for distribution (excluding OS shared libraries):
| Framework | Output Bundle Size | Distribution Format |
|---|---|---|
| Strata (Desktop) | 4.8 MB | Standalone native ELF executable |
| Strata (Terminal TUI) | 2.1 MB | Standalone static binary |
| Strata (WASM Bundle) | 1.8 MB | Optimized .wasm + loader |
| Strata (Pure JS ESM) | 20 KB (gzipped) | Standard .js + .css |
| Tauri v2 | 16.4 MB | Executable + WebKit runtime dependency |
| Flutter Desktop | 32.8 MB | Executable + libflutter_engine.so |
| Electron v30 | 114.2 MB | App package + Chromium runtime |
Reproducing These Benchmarks
Run the official benchmark suite on your local workstation:
# Clone the repository
git clone https://github.com/larvance/strata.git
cd strata
# Execute the standardized benchmark harness
cargo run --release -p strata_benchmarkFor a comprehensive comparative breakdown across cold-start latency, memory curves, layout throughput, frame reconciliation, energy telemetry, and binary footprints, read the Comparative Framework Analysis.