What problem does it solve? Manually sweeping hardware or toolchain parameters to find an optimal configuration is slow, error-prone, and hard to track. This Skill runs an autonomous run-analyze-tune loop that explores a design space until an objective is met, a timeout is reached, or progress stalls. ## Core Features & Use Cases - Autonomous Iterative Search: Runs a program, parses the objective metric, picks the next parameter set, and repeats with configurable timeout, iteration cap, and patience-based early stopping. - Parameter Range Inference: Reads source code (argparse definitions, config files, SystemVerilog parameters, Makefiles) to infer sensible ranges when the user only names the knobs to tune. - Structured Logging and Recovery: Records every run in dse_log.csv, maintains DSE_STATE.json for mid-run recovery, and produces a final DSE_REPORT.md with best configuration, sensitivity analysis, and recommendations. - Use Case: Tune gem5 cache size, associativity, and ROB entries to maximize IPC over a 3-hour budget, or sweep yosys synthesis options to minimize area while meeting timing closure. ## Quick Start Ask the agent to run a DSE loop on your simulation or synthesis command, naming the parameters to tune, the objective metric, and a time budget.