← Files MOOS-IvP SkillsARCHIVED FILE
skills/moos-ivp-harness-builder/references/timing-and-benchmarking.md
1.65 KB · Oct 2, 2026 · 00:34 UTC
# Timing And Benchmarking Treat timing as an operational property of the harness, not as proof that the mission logic is correct. ## Max-Time Slack For fast threshold or geometry cases, keep enough `--max_time` slack that `uMayFinish` is not the accidental bottleneck. Raise the ceiling before inventing a new completion contract. In normal harnesses, `--max_time` is a run-time override forwarded to the stem mission's `zlaunch.sh`, not a harness-side grading rule. If a case produces no `grade=`, distinguish between: - the mission never reached the lead condition - the mission reached the lead condition and failed - the harness timed out before the stem could report ## Wall Clock Vs MOOS Time When reporting runtime, distinguish wall-clock time from MOOS time. For automation and developer feedback, wall-clock runtime is usually the metric that matters. ## Benchmark Shape A small repeatable sweep over `--jobs` values is usually enough: ```text warp=<N> jobs=1,2,4 port_base=<fresh base> cases=<same matrix> machine=<short note> ``` Keep concise timing summaries in a clearly named location such as `time_benchmarking/`. Avoid committing bulky raw launcher logs by default. For modern harnesses, `--jobs` should be a rolling scheduler: when one active case finishes, the next pending case starts immediately. If a benchmark compares against a legacy batch-barrier harness, say so explicitly because similar correctness results can have different wall-clock behavior. ## Sleep And Cleanup Tuning When trimming launch-path sleeps or cleanup waits, validate the active stem and harness directly. Do not assume a reduction is safe repo-wide or in upstream launchers.
SHA-256: 5d7934a3b16107d0e8a807db35b0920487e229a280bec5b61e6df1f359a691cc