OpenROAD-flow-scripts icon indicating copy to clipboard operation
OpenROAD-flow-scripts copied to clipboard

[Autotuner] Feature: add `--cpu_budget` and `--timeout_per_trial`

Open luarss opened this issue 1 year ago • 3 comments

Rationale

  • More intuitive for end users who might just want to specify the total number of cpus to be blocked.
  • timeout_per_trial is different from overall timeout.

TODO

  • [x] Tests for --cpu_budget -> verify the timeout is hit.
  • [x] Tests for timeout per trial and timeout -> does it actually stop the entire training?

luarss avatar Sep 29 '24 10:09 luarss

The various ORFS stages have vastly different memory and CPU needs.

How does the user characterize and balance this?

oharboe avatar Nov 09 '24 02:11 oharboe

The various ORFS stages have vastly different memory and CPU needs.

How does the user characterize and balance this?

The intended usage for these knobs is to limit experiment runtime (and consequently $$ budget). These knobs do not limit how much resources a given ORFS run has access to.

CPU budget is intended to stop the experiment after the budget is spent. Trial timeout will limit each ORFS complete flow runtime; this way, if your experiment requires 1k ORFS runs, you know you will, at most, use 1k * timout_per_trial units of time.

vvbandeira avatar Nov 11 '24 17:11 vvbandeira

@vvbandeira this PR is almost ready - just requires the fix from https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/pull/2394 to be applied

luarss avatar Jan 22 '25 01:01 luarss