24
SimPL: An Effective Placement Algorithm Myung-Chul Kim, Dong-Jin Lee and Igor L. Markov Dept. of EECS, University of Michigan 1 ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL : An Effective Placement Algorithm

  • Upload
    sofia

  • View
    115

  • Download
    2

Embed Size (px)

DESCRIPTION

SimPL : An Effective Placement Algorithm. Myung-Chul Kim, Dong-Jin Lee and Igor L. Markov Dept. of EECS, University of Michigan. Global Placement: Motivation. Interconnect lagging in performance while transistors continue scaling - PowerPoint PPT Presentation

Citation preview

Page 1: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL: An Effective Placement Algorithm

Myung-Chul Kim, Dong-Jin Leeand Igor L. MarkovDept. of EECS, University of Michigan

1

Page 2: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Global Placement: Motivation■Interconnect lagging in

performance while transistors continue scaling

− Circuit delay, power dissipation and areadominated by interconnect

− Routing quality highly controlled by placement

■Circuit size and complexity rapidly increasing− Scalable placement algorithm is critical− Simplicity, integration with other optimizations

2

Unloaded

Coupling IR drop

RC delay

Page 3: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Placement Formulation

■Objective: Minimize estimated wirelength (half-perimeter wirelength)

■Subject to constraints:− Legality: Row-based

placement with no overlaps− Routability: Limiting

local interconnect congestion for successful routing

− Timing: Meeting performancetarget of a design

3

Page 4: SimPL :  An Effective Placement Algorithm

Prior Work

■ Ideal Placer− Fast runtime without sacrificing solution quality− Simplicity, integration with other optimization

4ICCAD 2010, Myung-Chul Kim, University of Michigan

Spee

d

Solution Quality

Non-convex optimization

mFAR, Kraftwerk2, FastPlace3

Ideal placer

mPL6, APlace2, NTUPlace3

Quadratic and force-directed

Page 5: SimPL :  An Effective Placement Algorithm

Key features of SimPL■Flat quadratic placement■Primal dual optimization

− Closing the gap between upper and lower bounds

5

Final Solution

Lower-Bound Solutionby Linear System Solver

Wire

leng

th

Iteration

Final Legal Solution

Upper-Bound Solution by Look-ahead Legalization

Initial WL Opt.

Page 6: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Common Analytical Placement Flow

6

Placement Instance

Converge

yes

no

GlobalPlacement

Initial WLOptimization

Legalizationand Detailed Placement

Page 7: SimPL :  An Effective Placement Algorithm

SimPL Flow

7

We delegate final legalization and detailed placement to FastPlace-DP [M. Pan, et al, “An Efficient and Effective Detailed Placement Algorithm”, ICCAD2005]

Placement Instance

Legalizationand Detailed Placement

B2B net model[P. Spindler, et al, “Kraftwerk2 - A Fast Force-Directed Quadratic Placement Approach Using an Accurate Net Model,” TCAD 2008]

yesno

Pseudonet Insertion

Look-aheadLegalization

(Upper-Bound)

B2B GraphBuilding

Linear System Solver (Lower-Bound)

ConvergeGlobal

Placement

B2B GraphBuilding

Linear System Solver

WLConverge

yes

noInitial WLOptimization

Page 8: SimPL :  An Effective Placement Algorithm

SimPL: Look-ahead Legalization■Purpose: Produces almost-legal placement (Upper-

Bound)while preserving the relative cell ordering given by linear system solver (Lower-Bound)

■Identify target region − Find overflow bin b− Create a minimal wide enough bin cluster B around b■Perform geometric top-down partitioning

− Find cell area median (Cc) and whitespace median (CB) − Assign cells (Cc) to corresponding partitions (CB) ■Non-linear scaling

− Form stripe regions− Move cells across stripe regions in-order based on whitespace

8

Page 9: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL: Look-ahead Legalization (1)

Performing geometric top-down partitioning

Overfilled binCell-area median (Cc)

B0 B1

whitespacemedian (CB)

Bin cluster (B)

9

Page 10: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL: Look-ahead Legalization (2)

10

Cell-area median (Cc)

whitespacemedian (CB)

B0

Page 11: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL: Look-ahead Legalization (2)

CB

Obstacle

borders

Uniform cutlines

CellOrdering

Per-stripeLinear Scaling

26

4

37

58

1

CB

26

4

37

58

1

CB

11

Page 12: SimPL :  An Effective Placement Algorithm

SimPL: Look-ahead Legalization (3)■Example (adaptec1)

Look-ahead legalization stops when target regions become small enough

Page 13: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

SimPL: Using legal locations as anchors■Purpose: Gradually perturb the linear system to

generate lower-bound solutions with less overlap

■Anchors and Pseudonets− Look-ahead locations used

as fixed, zero-area anchors − Anchors and original cells

connected with 2-pin pseudonets− Pseudonet weights grow

linearly with iterations

13

Page 14: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Next illustration: Tug-of-war between low-wirelength and

legalized placements

14

Page 15: SimPL :  An Effective Placement Algorithm

SimPL Iterations on Adaptec1 (1)Iteration=0 (Init WL Opt.) Iteration=1 (Upper Bound)

Iteration=2 (Lower Bound) Iteration=3 (Upper Bound)

15

Page 16: SimPL :  An Effective Placement Algorithm

SimPL Iterations on Adaptec1 (2)Iteration=11 (Upper Bound)

Iteration=20 (Lower Bound) Iteration=21 (Upper Bound)

Iteration=11 (Upper Bound)

Iteration=20 (Lower Bound) Iteration=21 (Upper Bound)

Iteration=10 (Lower Bound)

16

Page 17: SimPL :  An Effective Placement Algorithm

SimPL Iterations on Adaptec1 (3)

17

Iteration=31 (Upper Bound)Iteration=30 (Lower Bound)

Iteration=40 (Lower Bound) Iteration=41 (Upper Bound)

Page 18: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Convergence of SimPL■ Legal solution is formed between two bounds

18

Page 19: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Empirical Results: ISPD05 Benchmarks■Experimental setup

− Single threaded runs on a 3.2GHz Intel core i7 Quad CPU Q660 Linux workstation

− HPWL is computed by GSRC Bookshelf Evaluator− < 5000 lines of code in C++, including

CG-based solver for sparse linear systems with Jacobi preconditioner

19

Improvements after ICCAD submission

Page 20: SimPL :  An Effective Placement Algorithm

Empirical Results: Scalability Study■Take an existing design (ISPD 2005) and split each

movable cell into two cells of smaller size− Each connection to the original cell is inherited by

one of two split cells, which are connected by a 2-pin net

Not in ICCAD paper

Page 21: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Parallelism in Conjugate Gradient Solver■Runtime bottleneck in SimPL:

Conjugate gradient linear system solver

■Coarse-grain row partitioning− Implemented using OpenMP3.0 compiler intrinsic■SSE2 (Streaming SIMD Extensions) instructions

− Process 4 multiple data with a single instruction− Marginal runtime improvement in SpMxV■Reducing memory bandwidth demand of SpMxV

− CSR (Compressed Sparse Row) format Y. Saad, “Iterative Methods for Sparse Linear Systems,” SIAM 2003

21

Page 22: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

On-going Research■Integration with physical synthesis

− Look-ahead placement offers opportunity for early estimation of circuit parameters–Timing look-ahead–Congestion look-ahead–Power-density look-ahead

− Improving the speed and quality of physical synthesis

■Parallel look-ahead legalization− Run independently in separate sub-regions

22

Page 23: SimPL :  An Effective Placement Algorithm

ICCAD 2010, Myung-Chul Kim, University of Michigan

Conclusions■ New flat quadratic placement algorithm: SimPL

− Novel primal-dual approach − Amenable to integration with physical synthesis

■ Self-contained, compact implementation − Fastest among available academic placers − Highly competitive solution quality

23

Page 24: SimPL :  An Effective Placement Algorithm

Questions and Answers

Thank you!Time for Questions

24ICCAD 2010, Myung-Chul Kim, University of Michigan

Initial placement 5%

CG solver 19%

Sparse matrix and B2B net

modeling10%

Look-ahead legalization

18%

Pseudo-net insertion 1%

Post Global Placement

46%

IO 1%