Skip to content

Avoids unnecessary fanin scheduling and skip writes when the level is… - #560

Open
calewis wants to merge 1 commit into
berkeley-abc:masterfrom
calewis:fast_reverse_level
Open

Avoids unnecessary fanin scheduling and skip writes when the level is…#560
calewis wants to merge 1 commit into
berkeley-abc:masterfrom
calewis:fast_reverse_level

Conversation

@calewis

@calewis calewis commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

… unchanged.

  • Skip writes when LevelNew == Lev, avoiding redundant traversals.
  • Prune fanin updates when LevFanin > LevelReq:
    • LevelNew > Lev: fanin cannot increase unless LevelNew >= LevFanin.
    • LevelNew < Lev: fanin cannot decrease unless LevFanin <= Lev + 1.

Benchmark results (compress2rs, mean of 5 trials):

  • i10.aig: 0.411s -> 0.410s (-0.2%)
  • internal.aig (60k gates): 4.238s -> 3.913s (-7.7%)

… unchanged.

- Skip writes when LevelNew == Lev, avoiding redundant traversals.
- Prune fanin updates when LevFanin > LevelReq:
  * LevelNew > Lev: fanin cannot increase unless LevelNew >= LevFanin.
  * LevelNew < Lev: fanin cannot decrease unless LevFanin <= Lev + 1.

Benchmark results (compress2rs, mean of 5 trials):
- i10.aig: 0.411s -> 0.410s (-0.2%)
- internal.aig (60k gates): 4.238s -> 3.913s (-7.7%)
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