aris-dse-loop

Automates iterative design space exploration for computer architecture and EDA parameter tuning.

1.1k|116|Updated Feb 26, 2026
One-click install
npx skills add https://github.com/OpenLAIR/dr-claw --skill aris-dse-loop
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aris-dse-loop
Source: https://github.com/OpenLAIR/dr-claw/tree/main/skills/aris-dse-loop
Command: npx skills add https://github.com/OpenLAIR/dr-claw --skill aris-dse-loop

SYSTEM DOCUMENTATION & REQUIREMENTS

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 improvements stall.

Core Features & Use Cases

  • Autonomous DSE Loop: Runs a program, parses the objective metric, picks the next parameter set, and iterates with timeout, max-iteration, and patience stopping conditions.
  • 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.
  • Full Logging and Recovery: Records every run in dse_log.csv, tracks state in DSE_STATE.json for mid-run recovery, and produces a final DSE_REPORT.md with sensitivity analysis and convergence plots.
  • 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 design space exploration on your simulation or synthesis command, naming the parameters to tune, the objective metric to optimize, and a wall-clock timeout.

Frequently Asked Questions about aris-dse-loop

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run design space exploration on gem5 simulations?

Invoke the skill with the simulation command, the parameters to tune such as L1D_SIZE, L2_SIZE, and ROB_ENTRIES, the objective like maximizing IPC, and a timeout. The loop runs baseline and exploration iterations, logging every result to dse_log.csv.

How to tune synthesis parameters with yosys automatically?

Provide the make or script target, parameters such as clock period and optimization passes, and an objective like minimizing area at timing closure. The skill sweeps configurations, checks constraints each run, and reports the best feasible design point.

What happens if I don't specify parameter ranges?

The skill reads the source code for argparse definitions, config files, and hardware parameters, then infers ranges using domain heuristics such as powers of two for cache sizes. Inferred ranges are written to dse_results/inferred_params.md for review.

Can a DSE run recover after the context window resets?

Yes. State is persisted in DSE_STATE.json and dse_log.csv after every iteration, so the loop can reload the current iteration, best parameters, and patience counter and resume from where it stopped.

When does the exploration loop stop early?

The loop stops when the timeout is reached, the iteration cap is hit, no improvement occurs for the configured patience count, or the success criteria are met. Constraint-violating points never count as improvements.