Skip to content

[Benchmark]: Measure concurrency and gate contention #59

Description

@rian-be

Summary

Benchmark the concurrency and contention behavior of the core mutation runtime.

Goal

Measure how the core engine behaves under parallel execution, blocking synchronization, and batch scheduling pressure so contention costs are visible and can be tracked over time.

Problem

Concurrency behavior is one of the most important runtime characteristics for mutation engine. The repository already contains concurrency-oriented runtime logic and tests, but performance characteristics under contention are not measured separately.

Without a dedicated benchmark, it is difficult to tell whether changes improve throughput while preserving concurrency behavior, or whether they introduce hidden bottlenecks in the scheduling and synchronization path.

Scope

  • Benchmark parallel mutation executions in the core runtime
  • Benchmark blocking gate behavior under contention
  • Benchmark batch scheduling behavior when multiple executions compete for runtime resources
  • Keep the benchmark focused on the core runtime's concurrency behavior
  • Reuse existing concurrency helpers where they already exist
  • Make the benchmark scenarios explicit enough to compare contention profiles over time

Design Expectations

  • Concurrency scenarios should be deterministic enough to compare across runs.
  • Parallel and blocked execution paths should be measured separately.
  • Batch scheduling should expose scheduler pressure rather than hiding it behind a generic throughput number.
  • Helper code should remain local to the benchmark project.
  • Scenario names should make the source of contention obvious.

Suggested Measurements

  • multiple mutations executing in parallel
  • execution blocked on a shared gate
  • batch scheduling under limited runtime availability

Acceptance Criteria

  • Parallel execution is benchmarked as distinct core scenario
  • Blocking gate contention is benchmarked as distinct core scenario
  • Batch scheduling pressure is visible in benchmark results
  • The benchmark remains centered on core runtime concurrency behavior

Non Goals

  • This issue does not change runtime concurrency semantics
  • This issue does not add governance specific contention scenarios
  • This issue does not introduce distributed benchmarks
  • This issue does not change runtime behavior

Notes

This issue is child of the benchmark umbrella #55.

Metadata

Metadata

Assignees

No one assigned

    Labels

    benchmarkBenchmark coverage and performance measurement changes

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions