1 / 30

Placer Suboptimality Evaluation Using Zero-Change Transformations

Placer Suboptimality Evaluation Using Zero-Change Transformations. Sherief Reda. Andrew B. Kahng. VLSI CAD lab UCSD ECE and CSE Departments. Outline. The placement benchmarking problem Zero-change netlist transformation definition Using zero-change to quantify placer suboptimality

landry
Download Presentation

Placer Suboptimality Evaluation Using Zero-Change Transformations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Placer Suboptimality Evaluation Using Zero-Change Transformations Sherief Reda Andrew B. Kahng VLSI CAD lab UCSD ECE and CSE Departments

  2. Outline • The placement benchmarking problem • Zero-change netlist transformation definition • Using zero-change to quantify placer suboptimality • Zero-change netlist transformations: • Hyperedge cardinality increase • Hyperedge decomposition • Edge substitution • Impact on netlist characteristics • Experimental results and conclusions

  3. Suboptimality gap (?) HPWL optimal (unknown) suboptimal Placement Problem Fact Slide Placement Problem:Given a netlist (hypergraph), find a non-overlapping arrangement for the components of the netlist on the layout area such that the total Half-Perimeter WireLength (HPWL) is minimized. Placement Problem Facts: • NP-hard • Optimal placements can only be found for few components • No approximation algorithms unless P = NP [Sahni76]  must rely on heuristic algorithms

  4. lower bound pre- calculated 1. Compute lower bounds [Donath68] 2. Compute pre-calculated HPWL values: • Scaling [HagenHK95] • Instances with known optimal HPWL (PEKO) [Cong et al. - method attributed to Boese] • Instances with known HPWL (PEKU) [Cong et al.] Suboptimality Evaluation Approaches Suboptimality gap HPWL optimal (unknown) suboptimal • Our method belongs to the second approach of pre-calculated values

  5. placement k placement 1 L2 L1 HPWL Calculator HPWL Calculator hypergraph H1 hypergraph H1 =  placement k placement 1 L3 L1 HPWL Calculator HPWL Calculator hypergraph H2 hypergraph H2 Quiescency property Hardness property A zero-change transformation has two properties: • Quiescency property: for the given placement 1 : L(H1, 1) = L(H2, 1) • Hardness property: for any other placement k : L(H1, k)  L(H2, k) Zero-Change Transformations placement 1 hypergraph H2 =(V, E2) Zero-Change Transformation hypergraph H1=(V, E1)

  6. hypergraph H2 =(V, E2) Zero-Change Transformation hypergraph H1=(V, E1) H2 HPWL Optimal H2 Zero-Change Transformations Impact placement 1 H1 HPWL Placements Optimal H1 1 Lemma 1: If H2 is obtained from H1 via zero-change transformations then the optimal placementHPWL of H2 is no less than that of H1

  7. L1 HPWL Calculator netlist H2 zero-change transformations Placer P L2 HPWL Calculator • L1 is a pre-calculated HPWL value • Key question: how much L2 is different from L1? Suboptimality Evaluation Using Zero-Change Transformations L1 HPWL Calculator placement 1 netlist H1 Placer P

  8. Suboptimality gap H2 suboptimal H2 optimal (unknown) • Effectively, zero-change transformations gives us a lower bound on the suboptimality gap of H2 Suboptimality Evaluation Using Zero-Change Transformations placement 1 hypergraph H2 =(V, E2) Zero-Change Transformation hypergraph H1=(V, E1) HPWL H1 suboptimal (H2) H1 optimal (unknown)

  9. Suboptimality gap suboptimal Hk H3 optimal (unknown) H2 optimal (unknown) Hk optimal (unknown) Hk Composability of Zero-Change Transformations • What is the effect of applying k consecutive zero-change transformations? Still a zero-change transformation. suboptimal H1 optimal (unknown) H1 H2 H3

  10. Zero-Change Netlist Transformations • Hyperedge Cardinality Increase • Increases the cardinality of hyperedges • Keeps the number of hyperedges constant • Hyperedge Decomposition • Increases the number of hyperedges • Decreases the cardinality of individual hyperedges • Edge Substitution • Increases the number of edges • Does not change the number of hyperedges

  11. A B = C E D Placement 1 B D  B D C C A A Placement k Placement k Hyperedge Cardinality Increase • Augment a hyperedge with a existing node within its bounding box if possible A B C D Placement 1 E E

  12. Hyperedge Decomposition • Given a placement 1, decompose a hyperedge e if possible into two hyperedges e1 and e2 such that HPWL of e = HPWL of e1 + HPWL of e2 A B C D E F H G I Placement 1

  13. e e e e1 e1 e1 e2 Contained e2 e2 Overlapping Touching Hyperedge Decomposition • In any other placement k there are only three possibilities: Max(HPWL e1, HPWL e2)  HPWL of e (e1e2) HPWL of e1 + HPWL of e2

  14. C B A Placement k Edge Substitution • Take an edge and substitute with two edges by using an additional existing node within the edge’s bounding box A C B Placement 1 Rectilinear dist between A and B  Rectilinear dist between A and C + Rectilinear dist between C and B

  15. Effect of Transformations on Basic Netlist Characteristics • We consider two basic characteristics: (1) total number of hyperedges and (2) total pin count • We want to consider a zero-change transformations flow that preserves these two characteristics as a sort of realism

  16. Preprocess netlist netlist H1 L1 L1 HPWL Calculator HPWL Calculator netlist H2 Placer P zero-change transformations Placer P L2 HPWL Calculator Netlist Characteristics Preserving Transformations • Preprocess the netlist such that: amount of reduction in characteristics = amount of increase due to zero-change transformations netlist H1’

  17. Experimental Testbed • Tools: • Capo (version 9.0) • FengShui (version 2.6) • Dragon (version 3.01) • mPL (version 4.0) • Benchmarks: • IBM (version 1): variable width cells • HPWL evaluators: • center-to-center

  18. Results: Hyperedge Cardinality Increase • Suboptimality deviation due to 20% increase in total pin cardinality • Results are normalized with respect to each placement’s original HPWL • Poor handling of hyperedges probable cause for HPWL increase.  More work onterminal propagation or hyperedge to clique/tree conversion can lead to substantial improvement

  19. Capo Dragon FengShui mPL Hyperedge Cardinality Increase • Results on the ibm01 benchmark.

  20. Results: Edge Substitution • Suboptimality deviation due to 10% edge substitutions. • Results are normalized with respect to each placement’s original HPWL. • Edge substitution increases # edges at no effect on hyperedge cardinality  exemplifies the adverse impact of top-down sequential optimization • large amount of suboptimality with respect to edge substitution

  21. Capo Dragon FengShui mPL Edge Substitution • Results on the ibm01 benchmark.

  22. Results: Hyperedge Decomposition • Suboptimality deviation due to hyperedge decomposition • Results are normalized with respect to each placement’s original HPWL • Hyperedge decomposition transformation • potentially reduce the HPWL (from reduction in cardinality) • increase the HPWL (from increase in #hyperedges) • perhaps by tuning, the results of placers can improve

  23. Results: Hybrid Transformations • Suboptimality deviation due to 5% hyperedge cardinality increase + 5% hyperedge decomposition + 5% edge substitutions • Results are normalized with respect to each placement’s original HPWL

  24. Results: Preserving Characteristics • Transformed netlists have the same amount of nets and total cardinality as original nets • Netlists are preprocessed to reduce total cardinality and number of hyperedges by 10% then zero-change transformations follow • The suboptimal behavior of placers in response to zero-change transformations is not an artifact of the increase in netlist characteristics

  25. Conclusions • Zero-change transformations yield useful suboptimality information using arbitrary benchmarks and placers • Create similar instances around a given instance to allow effective placer tuning • Given a netlist and a placement, can produce new netlist(s): (1) New HPWL = original HPWL on the given placement (2) New HPWL  original HPWL on any other placement  New Optimal HPWL  Original Optimal HPWL • Three transformations: hyperedge cardinality, hyperedge decomposition and edge substitution • Lower bounds on the deviation from the optimal HPWL value • Embed zero-change transformations in a flow that preserves basic netlist characteristics • Extensive empirical results showing suboptimality results

  26. Thank You

  27. Hard Easy Exact Non-dominating Netlist Transformation Classification • The outcome H2 of a netlist transformation on H1 can belong to one of possible four classes • Four output classes of netlist transformations: • Hard: For any given placement k: HPWL of H2  H1 • Easy: For any given placement k: HPWL of H2  H1 • Exact: For any given placement k: HPWL of H2 = H1 • Non-dominating: we can find two placements 1 and 2 such that HWPL of H2> H1 on 1 and H2 < H1 on 2

  28. RMST/RSMT benchmarking • Suboptimality deviation with respect to RMST/RSMT. • Results are normalized with respect to each placement’s original RMST.

  29. Input: A hypergraph H1(V, E1) Output: A hypergraph H2(V, E2) • E2 E1 • sort hyperedges E1descending using their HPWL • for each hyperedge e  E1in order: • 2.1 find the set of nodes S that can be used for augmentation/decomposition/substitution • 2.2 identify the node v  S that has the least degree • 2.3 use v to augment/decompose/substitute e • 4. return H2(V, E2) Netlist Transformations Procedure • Many sources for ties: • which hyperedge to augment/decompose/substitute? • which node to use in augmentation/decomposition/substitution?

  30. Capo Dragon FengShui mPL Hyperedge Decomposition • Results on the ibm01 benchmark.

More Related