Commit 43bc82f
committed
Add per-node origin cap (nOriginsMax) to bound accumulation
Shared fanin cones can accumulate origins from all CO drivers,
causing O(n²) dedup cost in Gia_ObjAddOrigin. Add nOriginsMax
field to Gia_Man_t that short-circuits overflow-mode AddOrigin
when the node has reached the limit. Cap is set via &origins_id -M.
Pathological case (10K outputs, shared 50-deep cone):
No cap: 5.70s, 1.01M total origins, max 10000/node
-M 256: 0.79s, 45K total origins, max 256/node (7.2x faster)
Normal designs (i10.aig, max 165/node): identical results.
Co-developed-by: Claude Code v2.1.89 (claude-opus-4-6)1 parent 41b48b7 commit 43bc82f
3 files changed
Lines changed: 57 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
221 | 221 | | |
222 | 222 | | |
223 | 223 | | |
| 224 | + | |
224 | 225 | | |
225 | 226 | | |
226 | 227 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
217 | 220 | | |
218 | 221 | | |
219 | 222 | | |
| |||
332 | 335 | | |
333 | 336 | | |
334 | 337 | | |
| 338 | + | |
335 | 339 | | |
336 | 340 | | |
337 | 341 | | |
| |||
365 | 369 | | |
366 | 370 | | |
367 | 371 | | |
| 372 | + | |
368 | 373 | | |
369 | 374 | | |
370 | 375 | | |
| |||
400 | 405 | | |
401 | 406 | | |
402 | 407 | | |
| 408 | + | |
403 | 409 | | |
404 | 410 | | |
405 | 411 | | |
| |||
457 | 463 | | |
458 | 464 | | |
459 | 465 | | |
| 466 | + | |
460 | 467 | | |
461 | 468 | | |
462 | 469 | | |
| |||
1109 | 1116 | | |
1110 | 1117 | | |
1111 | 1118 | | |
| 1119 | + | |
1112 | 1120 | | |
1113 | 1121 | | |
1114 | 1122 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35561 | 35561 | | |
35562 | 35562 | | |
35563 | 35563 | | |
35564 | | - | |
| 35564 | + | |
35565 | 35565 | | |
35566 | | - | |
| 35566 | + | |
35567 | 35567 | | |
35568 | 35568 | | |
35569 | 35569 | | |
| 35570 | + | |
| 35571 | + | |
| 35572 | + | |
| 35573 | + | |
| 35574 | + | |
| 35575 | + | |
| 35576 | + | |
| 35577 | + | |
| 35578 | + | |
| 35579 | + | |
| 35580 | + | |
| 35581 | + | |
| 35582 | + | |
| 35583 | + | |
| 35584 | + | |
35570 | 35585 | | |
35571 | 35586 | | |
35572 | 35587 | | |
| |||
35578 | 35593 | | |
35579 | 35594 | | |
35580 | 35595 | | |
| 35596 | + | |
| 35597 | + | |
| 35598 | + | |
| 35599 | + | |
| 35600 | + | |
| 35601 | + | |
35581 | 35602 | | |
35582 | 35603 | | |
35583 | 35604 | | |
| |||
35619 | 35640 | | |
35620 | 35641 | | |
35621 | 35642 | | |
35622 | | - | |
| 35643 | + | |
35623 | 35644 | | |
| 35645 | + | |
35624 | 35646 | | |
35625 | 35647 | | |
35626 | 35648 | | |
| |||
35642 | 35664 | | |
35643 | 35665 | | |
35644 | 35666 | | |
35645 | | - | |
| 35667 | + | |
35646 | 35668 | | |
35647 | | - | |
| 35669 | + | |
35648 | 35670 | | |
35649 | 35671 | | |
35650 | 35672 | | |
| 35673 | + | |
| 35674 | + | |
| 35675 | + | |
| 35676 | + | |
| 35677 | + | |
| 35678 | + | |
| 35679 | + | |
| 35680 | + | |
| 35681 | + | |
| 35682 | + | |
| 35683 | + | |
| 35684 | + | |
| 35685 | + | |
| 35686 | + | |
35651 | 35687 | | |
35652 | 35688 | | |
35653 | 35689 | | |
| |||
35668 | 35704 | | |
35669 | 35705 | | |
35670 | 35706 | | |
| 35707 | + | |
35671 | 35708 | | |
35672 | 35709 | | |
35673 | 35710 | | |
35674 | | - | |
| 35711 | + | |
| 35712 | + | |
| 35713 | + | |
| 35714 | + | |
35675 | 35715 | | |
35676 | 35716 | | |
35677 | 35717 | | |
35678 | 35718 | | |
35679 | | - | |
| 35719 | + | |
35680 | 35720 | | |
35681 | 35721 | | |
| 35722 | + | |
35682 | 35723 | | |
35683 | 35724 | | |
35684 | 35725 | | |
| |||
0 commit comments