Skip to content

fix(adapter): Record oss-crs timing per trial#216

Merged
fuyu0425 merged 3 commits into
mainfrom
feat/crs_run_time
Apr 29, 2026
Merged

fix(adapter): Record oss-crs timing per trial#216
fuyu0425 merged 3 commits into
mainfrom
feat/crs_run_time

Conversation

@fuyu0425

Copy link
Copy Markdown
Member

Summary

  • Populate oss-crs build/run timing on execution results so distributed metadata no longer serializes run_time/build_time as null.
  • Isolate build state by trial and explicit work_dir, including restaging benchmarks for artifact resolution when a shared explicit workdir is reused.
  • Measure build time as build wall-clock minus actual flock() contention only, with regression coverage for timing and reuse paths.

Testing

  • pytest -q tests/test_compose_adapter.py
  • scripts/ci-tests/run-local.sh checks

Notes

  • Historical trial metadata is unchanged; rerun or regenerate affected trials to backfill timing fields.
  • Lock contention accounting is unit-tested via mocked timing rather than a dedicated multi-process integration test.

Preserve explicit work_dir reuse without leaking cached build state across trial or work_dir boundaries.

Also record build_time as build wall-clock minus lock wait and keep staged benchmarks available for resolve_artifacts when an explicit shared work_dir reuses an existing build.
Measure lock wait inside _acquire_lock() so build_time excludes only actual flock contention rather than uncontended lock helper overhead.

Add direct helper coverage and keep the higher-level build_time regression test aligned with the real lock-wait contract.
@fuyu0425 fuyu0425 merged commit de88b14 into main Apr 29, 2026
5 checks passed
@fuyu0425 fuyu0425 deleted the feat/crs_run_time branch April 29, 2026 08:54
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.

1 participant