Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Placer Suboptimality Evaluation Using Zero-Change Transformations Andrew B. Kahng Sherief Reda VLSI CAD lab UCSD ECE and CSE Departments."— Presentation transcript:

1 Placer Suboptimality Evaluation Using Zero-Change Transformations Andrew B. Kahng Sherief Reda 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: 1.Hyperedge cardinality increase 2.Hyperedge decomposition 3.Edge substitution  Impact on netlist characteristics  Experimental results and conclusions

3 Placement Problem Fact Slide optimal (unknown) suboptimal Suboptimality gap (?) HPWL  NP-hard  Optimal placements can only be found for few components  No approximation algorithms unless P = NP [Sahni76]  must rely on heuristic algorithms Placement Problem Facts: 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.

4 Suboptimality Evaluation Approaches optimal (unknown) suboptimal Suboptimality gap HPWL lower bound 1. Compute lower bounds [Donath68] Our method belongs to the second approach of pre-calculated values pre- calculated 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.]

5 Zero-Change Transformations hypergraph H 1 =(V, E 1 ) placement  1 Zero-Change Transformation hypergraph H 2 =(V, E 2 ) A zero-change transformation has two properties:  Quiescency property: for the given placement  1 : L(H 1,  1 ) = L(H 2,  1 ) HPWL Calculator hypergraph H 1 placement  1 HPWL Calculator hypergraph H 2 placement  1 L1L1 L1L1 = Quiescency propertyHardness property HPWL Calculator hypergraph H 1 placement  k HPWL Calculator hypergraph H 2 placement  k L2L2 L3L3   Hardness property: for any other placement  k : L(H 1,  k )  L(H 2,  k )

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

7 Suboptimality Evaluation Using Zero- Change Transformations HPWL Calculator Placer P netlist H 1 L1L1 zero-change transformations netlist H 2 HPWL Calculator L1L1  L 1 is a pre-calculated HPWL value placement  1 Placer P HPWL Calculator L2L2  Key question: how much L 2 is different from L 1 ?

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

9 Composability of Zero-Change Transformations H 1 optimal (unknown) suboptimal  What is the effect of applying k consecutive zero-change transformations? Still a zero-change transformation. H 2 optimal (unknown) H 3 optimal (unknown) H2H2 H3H3 H1H1 HkHk H k optimal (unknown) suboptimal H k Suboptimality gap

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

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

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

13 Hyperedge Decomposition  In any other placement  k there are only three possibilities: Max(HPWL e 1, HPWL e 2 )  HPWL of e (e 1  e 2 )  HPWL of e 1 + HPWL of e 2 e1e1 e2e2 e Contained e2e2 e1e1 e Overlapping e1e1 e2e2 e Touching

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

15 Effect of Transformations on Basic Netlist Characteristics Transformation/ Effect Change in #Hyperedges Change in #Total Pin Count Hyperedge Cardinality Increase 0+1 Hyperedge Decomposition +1 Edge Substitution+1+2  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 Netlist Characteristics Preserving Transformations netlist H 1 ’ HPWL Calculator Placer P L1L1 HPWL Calculator L1L1 Placer P HPWL Calculator L2L2 zero-change transformations netlist H 2 Preprocess netlist H 1  Preprocess the netlist such that: amount of reduction in characteristics = amount of increase due to zero-change transformations

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 on terminal propagation or hyperedge to clique/tree conversion can lead to substantial improvement

19 Hyperedge Cardinality Increase  Results on the ibm01 benchmark. CapoDragonFengShuimPL

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 Edge Substitution  Results on the ibm01 benchmark. CapoDragonFengShuimPL

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 Netlist Transformation Classification HardEasy Exact Non-dominating Four output classes of netlist transformations:  Hard: For any given placement  k : HPWL of H 2  H 1  Easy: For any given placement  k : HPWL of H 2  H 1  Exact: For any given placement  k : HPWL of H 2 = H 1  Non-dominating: we can find two placements  1 and  2 such that HWPL of H 2 > H 1 on  1 and H 2 < H 1 on  2  The outcome H 2 of a netlist transformation on H 1 can belong to one of possible four classes

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

29 Netlist Transformations Procedure  Many sources for ties:  which hyperedge to augment/decompose/substitute?  which node to use in augmentation/decomposition/substitution? Input: A hypergraph H 1 (V, E 1 ) Output: A hypergraph H 2 (V, E 2 ) 1.E 2  E 1 2.sort hyperedges E 1 descending using their HPWL 3.for each hyperedge e  E 1 in 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 H 2 (V, E 2 )

30 Hyperedge Decomposition  Results on the ibm01 benchmark. CapoDragonFengShuimPL


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

Similar presentations


Ads by Google