Skip to content

feat(bench): geometric scale curves for yaml/soup/protobuf/multipart#91

Merged
Oaklight merged 1 commit into
masterfrom
feature/bench-scale-curves
May 18, 2026
Merged

feat(bench): geometric scale curves for yaml/soup/protobuf/multipart#91
Oaklight merged 1 commit into
masterfrom
feature/bench-scale-curves

Conversation

@Oaklight
Copy link
Copy Markdown
Owner

Summary

Adds TestScaleCurve benchmark classes to 4 parser modules, using geometric input sizes to reveal complexity behavior across the full range.

Modules covered:

  • yaml — document key count: 10 → 50 → 200 → 500 → 1000 → 5000 items
  • soup — HTML node count: 50 → 200 → 500 → 1000 → 2500 → 5000 → 25000 nodes
  • protobuf — message count / field size sweep
  • multipart — part count and payload size sweep

Motivation

Three fixed S/M/L sizes can't reveal where complexity inflects. For example, soup CSS select shows near-parity at 50 nodes but zerodep pulls ahead by 10x+ at 5000 nodes — invisible with only 3 data points.

Test results

120 tests pass across all 4 modules.

Closes #86

@Oaklight Oaklight merged commit cfacff0 into master May 18, 2026
6 checks passed
@Oaklight Oaklight deleted the feature/bench-scale-curves branch May 18, 2026 12:16
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.

Benchmark: add scale curves for key modules

1 participant