Placement Feedback: A Concept and Method for Better Min-Cut Placements

1 / 34
About This Presentation
Title:

Placement Feedback: A Concept and Method for Better Min-Cut Placements

Description:

For example, given a hypergraph that is to be placed on a block, we partition the hypergraph into roughly two equal parts, and bisect the block accordingly. –

Number of Views:133
Avg rating:3.0/5.0
Slides: 35
Provided by: SR956
Category:

less

Transcript and Presenter's Notes

Title: Placement Feedback: A Concept and Method for Better Min-Cut Placements


1
Placement Feedback A Concept and Method for
Better Min-Cut Placements
Andrew B. Kahng
Sherief Reda
CSE ECE Departments University of CA, San
Diego La Jolla, CA 92093 abk_at_cs.ucsd.edu
CSE Department University of CA, San Diego La
Jolla, CA 92093 sreda_at_cs.ucsd.edu
VLSI CAD Laboratory at UCSD http//vlsicad.ucsd.ed
u
2
Outline
  • Min-cut Placement and Terminal Propagation
  • Ambiguous Terminal Propagation
  • Placement Feedback
  • Iterated Controlled Feedback
  • Accelerated Feedback
  • Experimental Results
  • Conclusions

3
Min-Cut Placement Objective
  • Min-cut Placement Objective Total wirelength
    minimization
  • Steiner tree represents the minimum wirelength
    need to connect a number of cells
  • Total wirelength is the sum of the length of
    Steiner trees
  • Routed wirelength is the typically larger than
    total wirelength due to detours arising from
    contention on routing resources

4
Min-Cut Placement Method
  • Min-Cut Placement Method Sequential min-cut
    partitioning

Netlist (hyper-graph)
block
Input
5
Terminal Propagation
A
B
C
D
Simple hypergraph
After first placement level
  • Well-studied problem
  • Terminal propagation (Dunlop/Kernighan85)
  • Global objectives/cycling (HuangK97,
    Zheng/Dutt00, Yildiz/Madden01)

6
Terminal Propagation Mechanism
B1
B2
u
v
  • B1 has been partitioned B2 is to be partitioned
  • u is propagated as a fixed vertex uf to the
    subblock that is closer
  • uf biases the partitioner to move v upward

7
Ambiguous Terminal Propagation
f2
f1
X
f3
  • Ambiguous propagation occurs when terminals,
    e.g. Y4, are equally close to the two subblocks
    of a block under partitioning
  • Traditional solution either propagate to both
    subblocks or not to propagate at all

8
Effect of Ambiguous Terminal Propagations
L
R
Given an edge e with a set of cells I
Conclusion Ambiguous propagations lead to
indeterminism in propagation decisions ?
wirelength increase
9
Min-Cut Placement Flow
Level m Partitioning
Terminal Propagation
Level 2 Partitioning
Level 1 Partitioning
Terminal Propagation
Terminal Propagation
10
Outline
  • Min-cut Placement and Terminal Propagation
  • Ambiguous Terminal Propagation
  • Placement Feedback
  • Iterated Controlled Feedback
  • Accelerated Feedback
  • Experimental Results
  • Conclusions

11
Mitigating Ambiguous Terminal Propagation
  • Two hyperedges A, B, C, X, A, B. B1 is
    partitioned before B2

B1
B2
A
X
C
B
12
Placement Feedback
For each placement level - Undo all
partitioning/block bisecting results, but retain
the new cell locations for terminal
propagations - Use the new cell locations to
re-do the levels placement
Placement Flow with Feedback
13
Placement Feedback Assessment
  • Metrics
  • Reduction in ambiguous terminal propagations
  • Associated reduction in HPWL
  • Experimental Setup
  • We implement feedback in Capo (version 8.7)
  • For each placement level
  • Measure the number of ambiguous terminal
    propagations before and after feedback
  • Measure the HPWL estimate before and after
    feedback (assuming all previous placements levels
    had feedback)

14
Feedback Effects
Percentage reduction in ambiguous propagations
Placement Level
  • Reductions in ambiguous terminals and HPWL per
    level are strongly correlated

15
Outline
  • Min-cut Placement and Terminal Propagation
  • Ambiguous Terminal Propagation
  • Placement Feedback
  • Iterated Controlled Feedback
  • Accelerated Feedback
  • Experimental Results
  • Conclusions

16
Iterative Placement Feedback
Level 1 Partitioning
Terminal Propagation
Level 2 Partitioning
Terminal Propagation
Level m Partitioning
Terminal Propagation
Feedback Controller
Placement Flow with Feedback Controllers
  • Since the feedback loop produces new outputs ?
    iterate over the feedback loop a number of times
  • If the feedback response is not desirable ?
    insert a feedback controller to enhance the
    response.

Feedback controller should
  • Evaluate and optimize some placement quality or
    objective
  • Decide when to terminate feedback iterating

17
Feedback Controller Objectives
B1
  • Two possible objectives (placement qualities) to
    optimize

d1
c1
  • Cut partitioning objective QP c1 c2
  • HPWL objective QH c1 d1 c2 d2

B2
c2
d2
  • QP and QH are not correlated!
  • Example
  • Assume d1 6 and d2 8
  • c1 c2 100 ? QP 200 and QH 1400
  • c1 85, c2 112 ? QP 197 and QH 1406

18
Feedback Controller Stopping Criteria
19
Feedback Controller Stopping Criteria
B. Best Improvement Criterion Iterate per
placement level a fixed number of times but pass
the best results seen QP (or QH)
20
Feedback Controller Stopping Criteria
C. Unconstrained Criterion Iterate per placement
level a fixed number of times and pass the last
results
21
Controller Type Comparison
3 Stopping Criteria 2 Objectives
Monotonic Improvement Total Cut (QP)
Monotonic Improvement HPWL Estimate (QH)
Best Improvement Total Cut (QP)
Best Improvement HPWL Estimate (QH)
Unconstrained -
  • Combinations of the 3 stopping criteria and 2
    objectives yield 5 controllers
  • We study the aggregate impact of the different
    controllers on the final HPWL

22
Effect of Controller on Final Wirelength
Final HPWL versus number of iterations for
different controllers
Monotonic QH
Best QH
Monotonic QP
Best QP
Unconstrained
Iteration
  • QP (based on partitioning) controllers dominate
    QH (based on HPWL) controllers
  • Best Improvement controllers outperform
    monotonic improvement controllers
  • Best Improvement QP controller slightly
    outperforms the unconstrained controller

23
Asymptotic Controller Behavior
Final HPWL versus number of iterations for
different controllers
Best QP
Iteration
  • Results are average of 6 seeds for up to 12
    iterations using the best improvement QP
    controller
  • Final value slightly oscillates around a fixed
    value with a 8-9 improvement in HPWL in
    comparison to traditional placement flow

24
Accelerated Feedback
Coarsening
Uncoarsening
V Cycle
  • Feedback runtime a number of feedback iterations
  • Typically, placers call the multilevel
    partitioner a number of times and utilize the
    best cluster-tree partitioning results
  • In iterated feedback, only the last feedback
    iteration determines the partitioning results
    other loops determine accurate terminal
    propagation.

To speedup our feedback implementation ?
Call the multi-level partitioner once (1 V-Cycle)
for each feedback loop ? Restore to default
placer settings (2 V-Cycles) for the last
feedback iteration
25
Outline
  • Min-cut Placement and Terminal Propagation
  • Ambiguous Terminal Propagation
  • Placement Feedback
  • Iterated Controlled Feedback
  • Accelerated Feedback
  • Experimental Results
  • Conclusions

26
Experimental Setup
  • We test our methodology in Capo version 8.7
  • Cadences WarpRoute is used for routed
    wirelength evaluation
  • Placement results are average of 6 seeds
  • Code implementation took 130 lines of C code
  • All experiments conducted on 2.4 GHz Xeon Linux
    workstation, 2 GB RAM
  • We evaluate feedback on the IBM version 1,
    version 2, and PEKO benchmarks

27
HPWL Results (IBM Version 1)
  • We use 3 feedback iterations with the best
    improvement Qp feedback controller


AFB
FB
Percentage improvement in HPWL (Half-Perimeter
Wirelength) in comparison to Capo
28
HPWL Results (IBM Version 1)
  • Accelerated Feedback Max improvement 13.43 and
    average improvement 4.70 with 2.43x the original
    Capo runtime
  • Feedback Max improvement 13.73 and average
    improvement 5.43 with 4.10x the original in Capo
    runtime
  • PEKO benchmarks Max improvement 10 and average
    improvement 5 for feedback at the expense of
    2-3x increase in Capo runtime

29
Routed Wirelength Results (IBM Version 2 - Hard)

benchmark Violations Violations
benchmark Capo FeedBack
Ibm01 601 103
Ibm02 0 0
Ibm07 450 0
Ibm08 59 0
Percentage improvement in routed wirelength in
comparison to Capo
Number of routing violations
30
Routed Wirelength Results (IBM Version 2 - Easy)

benchmark Violations Violations
benchmark Capo FeedBack
Ibm01 1238 0
Ibm02 0 0
Ibm07 0 0
Ibm08 0 0
Percentage improvement in routed wirelength in
comparison to Capo.
Number of routing violations
31
Conclusions
  • New understanding of how ambiguous terminal
    propagation leads to indeterminism in propagation
    results and degraded placer performance
  • Idea reduce indeterminism by undoing placement
    results, but still using them to guide future
    partitioning.
  • Flavors of this approach proposed before, but
    for different contexts
  • Our approach is captured as feedback, which we
    tune using controllers
  • Detailed study of variant objectives that can be
    optimized by the controllers, as well as
    iterating criteria
  • Accelerated feedback efficient implementations
    to reduce runtime impact
  • IBMv1 HPWL results up to 14 (best) and 6
    (avg) improvement over Capo
  • IBMv2 routed WL results up to 10 improvement
    over Capo, with improved routability and reduced
    via count
  • Accelerated feedback is now the default mode in
    Capo

32
Acknowledgments
We thank Igor Markov (University of Michigan) for
helpful discussions.
33
Thank You
34
Block Ordering
  • Regular ordering
  • Random ordering
  • Alternate ordering

Results are inconclusive!
Write a Comment
User Comments (0)
About PowerShow.com