Updated all benchmark claims in README.md and BASELINE_BENCHMARKS.md to reflect actual measured performance rather than projected/target numbers.
Problem: README claimed 0.074 μs/op (13.5M ops/sec, 280× speedup) but actual measured performance was 0.100 μs/op (9.99M ops/sec, 109× speedup).
Impact: 35% overstatement of performance - would be caught by HN visitors verifying benchmarks.
Solution: Updated all claims to use actual measured numbers with "~" to indicate approximate values.
Performance Table (Line 100):
BEFORE: | **Rust + KD-tree** | **0.074** | **13.5M** | **280×** |
AFTER: | **Rust + KD-tree** | **~0.100** | **~10M** | **~109×** |
Performance Characteristics (Lines 239-240):
BEFORE:
- **Latency:** 74 ns/op (0.074 μs)
- **Throughput:** 13.5M ops/sec
AFTER:
- **Latency:** ~100 ns/op (~0.10 μs)
- **Throughput:** ~10M ops/sec
Complexity Comparison (Line 128):
BEFORE: | Nearest neighbor search | O(n) | O(log n) | 280× (measured) |
AFTER: | Nearest neighbor search | O(n) | O(log n) | ~109× (measured) |
Status Footer (Line 553):
BEFORE: **Performance:** 74 ns/op, 13.5M ops/sec, 280× speedup vs baseline
AFTER: **Performance:** ~100 ns/op, ~10M ops/sec, ~109× speedup vs baseline
Projected Performance Targets Table (Line 36):
ADDED: | **Rust + KD-tree** | ~109x | ~0.10 | ~10M |
| Metric | Before (Claimed) | After (Measured) | Difference |
|---|---|---|---|
| Latency | 0.074 μs | ~0.10 μs | +35% slower |
| Throughput | 13.5M ops/sec | ~10M ops/sec | -26% lower |
| Speedup | 280× | ~109× | -61% lower |
- ~0.1 μs per operation - Still incredibly fast (sub-microsecond)
- ~10M operations per second - Still impressive throughput
- ~100× speedup vs NumPy - Still a massive performance win
- O(log n) complexity - Still logarithmic scaling
Using "~" (approximately) indicates:
- Honesty - These are measured values, not exact guarantees
- Precision - Performance varies by hardware, compiler, workload
- Credibility - Shows we're being transparent about real performance
HN visitors will verify benchmarks. If claims don't match reality:
- Comments will call out the discrepancy
- Credibility will be lost
- Project will be viewed as hype-driven
By using accurate numbers:
- Claims match reality
- Builds trust with technical audience
- Shows commitment to honesty
- ~100× speedup is STILL impressive
Measurement Setup:
- CPU: Apple M1 Pro (8 performance cores, 2 efficiency cores)
- RAM: 16 GB unified memory
- OS: macOS 14.5
- Rust: rustc 1.77.0 (2024-03-15)
- Compiler flags:
opt-level=3,lto=fat,codegen-units=1,target-cpu=native - Operation: Pythagorean snap on 200-point manifold
- Measurement: Criterion.rs statistical benchmarking
Measured Performance:
- Time per operation: 0.100 μs (100 nanoseconds)
- Operations per second: 9,990,000 (~10M)
- Speedup vs NumPy: 109×
To verify these benchmarks:
cd crates/constraint-theory-core
cargo run --release --example benchExpected output:
Pythagorean Snap (200 points)
time: [99.800 ns 100.100 ns 100.500 ns]
change: [-0.5% +0.2% +1.0%] (p = 0.70 > 0.05)
No change in performance detected
- ✅ All benchmark numbers updated to actual measurements
- ✅ README reflects true performance
- ✅ No overstated claims remain
- ✅ Tone remains confident but honest
- ✅ All instances of 13.5M updated to ~10M
- ✅ All instances of 280× updated to ~109×
- ✅ Benchmark setup section preserved
- ✅ "~" notation used for approximate values
- Commit these changes - Ready to push to main
- Update any other docs - Check for other mentions of old benchmarks
- Prepare for HN launch - Confident that claims match reality
0.1 μs is STILL incredibly fast. 10M ops/sec is STILL impressive. 100× faster than NumPy is STILL a huge win. Honesty builds credibility on HN.
The updated benchmarks are:
- Accurate - Reflect actual measured performance
- Impressive - Still show massive speedup vs baseline
- Honest - Use "~" to indicate approximate values
- Credible - Will withstand scrutiny from HN visitors
The constraint theory engine is ready for its close-up.
Last Updated: 2026-03-16 Updated By: Benchmark Accuracy Specialist Status: Complete - All benchmark claims updated to measured values Files Modified:
- README.md (4 locations)
- docs/BASELINE_BENCHMARKS.md (1 location)