Skip to content

Add Code Behind the Layout benchmark: generator-edit agents on SKY130 - #129

Closed
DonaldLucy wants to merge 1 commit into
ReaLLMASIC:mainfrom
DonaldLucy:cbl-release
Closed

DonaldLucy wants to merge 1 commit into
ReaLLMASIC:mainfrom
DonaldLucy:cbl-release

Conversation

@DonaldLucy

Copy link
Copy Markdown
Contributor

Summary

Adds benchmarks/code_behind_layout/, the code and frozen configurations for The Code Behind the Layout: AI Agents for Analog Layout Generators. The study tests whether one shared edit to a gLayout generator's source improves post-extraction performance across a declared family of parameter configurations, without breaking any configuration that passed before. Every candidate goes through SKY130 GDS → DRC → LVS → RC extraction → SPICE at tt/ss/ff.

  • E1: action level for frontier-model edits (geometry, primitives, generator source).
  • E2: cheap ranking signals vs. full evaluation (area, geometric rule, extracted RC, calibrated F3).
  • E3: test rules for family regressions under a fixed budget (anchor, random, boundary, risk).
  • E4: point vs. family supervision, SFT vs. DPO, for a local Qwen2.5-Coder-32B model (T1–T4 × 3 seeds).
  • E5: physical CPU, GPU and token cost.

The policies are Claude Opus 5.5 and GPT-6.1.

Data

The frozen task packets and the E4 training set (43 MB compressed) are published as a release asset rather than committed:

cd benchmarks/code_behind_layout
bash scripts/fetch_data.sh

Dependencies

Testing

  • python3 -m unittest discover -s tests -p 'test_*.py': 625 tests pass (5 skipped).
  • With the data bundle unpacked, scripts/train_policy.py --validate-only admits T1–T4.
  • The E1 and E3 frozen manifests verify against the bound implementation files.
  • Nothing outside benchmarks/code_behind_layout/ changes, and the existing CI collects only the top-level tests/.

Code and frozen configurations for E1 (action level), E2 (evaluation
fidelity), E3 (family test rules), E4 (point/family SFT and DPO) and E5
(cost). Frozen task packets and the E4 training set are fetched with
scripts/fetch_data.sh.
@DonaldLucy

Copy link
Copy Markdown
Contributor Author

Closing: this work will live as a separate project branch rather than a merge into main.

@DonaldLucy DonaldLucy closed this Oct 26, 2026
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