Download presentation
Presentation is loading. Please wait.
Published byΚλεισθένης Βασιλειάδης Modified over 6 years ago
1
Analytic Placement Optimization Using Nonlinear Methodologies
Jingwei Lu UC San Diego June 10, 2013 11/27/2018 UC San Diego
2
Outlines Introduction Formulation Density Function
Nonlinear Optimization Parameter Setting Experimental Results Conclusion 11/27/2018 UC San Diego
3
Introduction Synthesis Analysis ECO Placement Routing 11/27/2018
UC San Diego
4
Introduction Placement: NP complete problem.
Analytic Placement: Placement having a first derivative at all points of placement domain. Heuristic Approach: Mathematic derivation with empirical tuning. 11/27/2018 UC San Diego
5
Introduction Procedure: (All figure illustration use ADAPTEC1 [Nam05])
Initial Placement: Focus on wire length Iterative Placement: Spread the cells with minimal wire length increment Global Placement: Verify with detailed placement initial placement final placement 11/27/2018 UC San Diego
6
Placement Flowchart our focus 11/27/2018 UC San Diego
7
Problem Formulation Obj: min HPWL Constraint: No overlapping
Nonlinear Programming: 11/27/2018 UC San Diego
8
Density Function Analogy of charge force
Calculation via Fourier Transformation Boundary Condition Adjustment Smoothing over discrete grids Dummy cell insertion Complexity 11/27/2018 UC San Diego
9
Placement Density vs. Charge Force
Cell Instances Electric Particles Cell Location (xi, yi) Particle Location (xi, yi) Cell Area (Ai) Charge Quantity (qi) Grid Density Equalization Minimum AC Potential Energy N=Σqiψi Placement Instance Electrostatic System Obj.: min W+λN 11/27/2018 UC San Diego
10
cell placement charge density field distribution potential energy
ADAPTEC1 128x128 charge density cell placement charge density electric field potential distr field distribution potential energy 11/27/2018 UC San Diego
11
Poisson’s Equation Charge Density
Neumann boundary condition, is the outer norm vector. Total charge and total potential are zero 11/27/2018 UC San Diego
12
Numerical Solution: Boundary Conditions
Neumann boundary condition negative half-plane mirroring [0,n-1] [-n,n-1] DCT expansion of density function even & periodic density function within [-n, n-1] fast numerical solution using FFT 11/27/2018 UC San Diego
13
2D cosine series generation
Spectral Methods frequency components 2D cosine series generation 2D DCT expansion 11/27/2018 UC San Diego
14
From Poisson’s Equation
Spectral Methods From Poisson’s Equation Potential Function 11/27/2018 UC San Diego
15
From Poisson’s Equation partial gradient generation
Spectral Methods From Poisson’s Equation partial gradient generation 11/27/2018 UC San Diego
16
Smoothing Over Discrete Grids
Usage of Fast Fourier Transform Smoothing function of triangular weight Reflect the density cost for cell shifting A one-dimension example is shown below A(c,bi) : area contribution of cell c to grid bi still analytic function 11/27/2018 UC San Diego
17
Dummy Cell Insertion Initial solution
Placement: spread cells -> long wires Placement with fillers Placement (fillers removed) 11/27/2018 UC San Diego
18
quality and efficiency improve by adding fillers (ADAPTEC1)
Dummy Cell Insertion quality and efficiency improve by adding fillers (ADAPTEC1) 11/27/2018 UC San Diego
19
Complexity Analysis Complexity O(m+n2logn) m: total movable nodes
standard cells & filler cells Density computation O(m) n: each dimension of 2-D grids Uniform decomposition 2D fast Fourier transform O(n2logn) 11/27/2018 UC San Diego
20
Boundary Condition Verification
iteration 100 iteration 150 ADAPTEC1 128x128 The boundary force is zero! 11/27/2018 UC San Diego
21
Density Gradient (Global Effect)
iteration 3 ADAPTEC1 128x128 iteration 33 Global Information Aware 11/27/2018 UC San Diego
22
Optimization Methods Line search for the step length
Locally quadratic approximation Convergence Hessian condition Conjugate Gradient [Shewchuk94] Lipschitz continuity of gradient Locally strongly convex function Convergence rate O(1/k2) Nesterov’s method [Nesterov83] 11/27/2018 UC San Diego
23
Conjugate Gradient (CG)
objective function: f = W + λD gradient vector Iterative approach Polak-Ribiere search direction line search new solution 11/27/2018 UC San Diego
24
escape from local optimal
Line Search using golden sectional search optimal if f is uni-modal sub-optimal if f is multi-modal occasional uphill climbing escape from local optimal 11/27/2018 UC San Diego
25
Nesterov’s Method function and gradient vector def. Lipschitz constant
objective function: f = W + λN function and gradient vector f(x) є C1,1(E) def. Lipschitz constant convex function inequality maximum step length (1) using Lipschitz constant 11/27/2018 UC San Diego
26
Empirical Approximation
Dynamic approximation Lipschitz const approximation step length prediction verification & backtrack 11/27/2018 UC San Diego
27
wirelength parameter γ
grid dimension n Lagrange multiplier λ Parameter Setting wirelength parameter γ step length α density overflow τ 11/27/2018 UC San Diego
28
Grid Dimension (n×n) Tradeoff: accuracy v.s. complexity
n must be power of two Required by FFT package [Ooura] In our work: n is function of # cells Simple & effective Low penalty on efficiency 11/27/2018 UC San Diego
29
Lagrange Multiplier (λ)
Initial value Balance: wirelength and density force Iterative update 11/27/2018 UC San Diego
30
ρb’: density due to movable cells
Density Overflow (τ) ρb’: density due to movable cells Ab: area of bin Ai: area of cell 11/27/2018 UC San Diego
31
Wirelength Smoothing Parameter (γ)
τ: density overflow wb: bin dimension 11/27/2018 UC San Diego
32
Adaptive Step Length (α)
Conjugate Gradient Nesterov’s method Adaptive Step Length (α) line search Lipschitz approx interval length adjustment verification & backtrack 11/27/2018 UC San Diego
33
Experiment Setup ISPD 2005 benchmark suite [Nam05] Placement density
GSRC bookshelf format iterative density distribution Placement density ρt=1.00 for Conjugate Gradient method ρt=0.97 for Nesterov’s method Seven state-of-the-art placers Covering three categories: quadratic, min-cut, nonlinear 11/27/2018 UC San Diego
34
* from published results
Table of Results * from published results Wirelength (e6) Placers Our work Min-Cut Quadratic Non-linear Benchmarks Nesterov (LC) CG (LS) Capo10.5 FastPlace3.0 RQL* SimPL* APlace2 NTUplace3 mPL6 ADAPTEC1 76.46 87.80 78.34 77.82 77.73 78.35 80.29 77.93 ADAPTEC2 87.69 85.57 102.66 93.47 88.51 90.36 95.70 90.18 92.04 ADAPTEC3 196.27 202.16 234.27 213.48 210.96 208.95 218.52 233.77 214.16 ADAPTEC4 186.15 185.63 204.33 196.88 188.86 187.4 209.28 215.02 193.89 BIGBLUE1 93.04 91.64 106.58 96.23 94.98 97.42 100.02 98.65 96.80 BIGBLUE2 146.48 145.54 161.68 154.89 150.03 145.78 153.75 158.27 152.34 BIGBLUE3 323.49 337.39 403.36 369.19 323.09 339.78 411.59 346.33 344.10 BIGBLUE4 800.95 805.90 871.29 834.04 797.66 808.22 945.77 829.09 829.44 Avg. Diff 0.00% 0.38% 14.93% 6.38% 1.95% 2.75% 11.64% 8.39% 4.77% CPU (minutes) Placers Our work Min-Cut Quadratic Non-linear Benchmarks Nesterov (LC) CG (LS) Capo10.5 FastPlace3.0 APlace2 NTUplace3 mPL6 ADAPTEC1 2.91 9.17 48.33 2.92 48.88 7.17 23.27 ADAPTEC2 4.47 12.67 61.63 4.13 68.07 8.22 24.75 ADAPTEC3 21.06 45.40 133.43 9.53 186.67 18.53 73.97 ADAPTEC4 14.66 34.33 141.85 8.75 209.60 23.53 71.03 BIGBLUE1 5.38 23.63 77.90 4.57 64.05 14.30 30.05 BIGBLUE2 7.31 30.83 150.15 8.00 136.43 35.10 79.00 BIGBLUE3 32.69 107.75 373.87 21.05 289.78 38.77 104.63 BIGBLUE4 43.08 165.00 730.42 40.13 779.22 106.08 238.82 Avg. Mult. 1.00 3.28 13.73 0.81 14.09 2.24 5.88 11/27/2018 UC San Diego
35
Quality & CPU Comparison
* from published results our work 11/27/2018 our work UC San Diego
36
Conclusion Background introduction & problem formulation
Poisson’s equation for potential coupling Fast numerical solution using spectral methods Flat nonlinear algorithm using conjugate gradient and Nesterov’s method Experiments and results on ISPD05 bookshelf format 11/27/2018 UC San Diego
37
Future Work Placement quality improvement
Preconditioning for convergence acceleration Stochastic process to complement analytic algorithm Extensibility towards parallel platform GPU architecture and distributed system Parallel FFT for density gradient [Moreland03] Parallel wirelength gradient generation [Cong09] Extensibility towards other design objectives Routability [Kim11], timing [Chan09], thermal [Cong11] 11/27/2018 UC San Diego
38
References [Adya03] S. N. Adya, I. L. Markov, and P. G. Villarrubia. On Whitespace and Stability in Mixed-Size Placement. In ICCAD, pages 311–318, 2003. [Caldwell00] A. E. Caldwell, A. B. Kahng, and I. L. Markov. Can Recursive Bisection Alone Produce Routable Placements? In DAC, pages 477–482, 2000. [Chan06] T. F. Chan, J. Cong, J. R. Shinnerl, K. Sze, and M. Xie. mPL6: Enhanced Multilevel Mixed-Size Placement, in ISPD, pages 212–214, 2006. [Chan09] T. F. Chan, J. Cong, and E. Radke, A Rigorous Framework for Convergent Net Weighting Schemes in Timing-Driven Placement, in ICCAD, pages , 2009. [Chen08] T.-C. Chen et al. NTUPlace3: An Analytical Placer for Large-Scale Mixed-Size Designs with Preplaced Blocks and Density Constraint, IEEE TCAD, 27(7):1228–1240, 2008. [Cong08] J. Cong, G. Luo, and E. Radke. Highly Efficient Gradient Computation for Density-Constrained Analytical Placement. IEEE TCAD, 27(12):2133–2144, 2008. [Cong09] J. Cong and Y. Zou, Paralell Multi-level Analytical Global Placement on Graphics Processing Unit, in ICCAD, pages , 2009 [Cong11] J. Cong, G. Luo and Y. Shi, Thermal-Aware Cell and Through-Silicon-Via Co-Placement for 3D ICs, in DAC, pages , 2011. [Eisenmann98] H. Eisenmann and F. M. Johannes. Generic Global Placement and Floorplanning. In DAC, pages 269–274, 1998. [Kahng05] A. B. Kahng, S. Reda, and Q. Wang. Architecture and Details of a High Quality, Large-Scale Analytical Placer. In ICCAD, pages 890–897, 2005 11/27/2018 UC San Diego
39
References [Kim10] M.-C. Kim, D.-J. Lee, and I. L. Markov. SimPL: An Effective Placement Algorithm. In ICCAD, pages 649–656, 2010. [Moreland03] K. Moreland and E. Angel. The FFT on a GPU. Graphics Hardware, 2003. [Nam05] G.-J. Nam, C. J. Alpert, P. Villarrubia, B. Winter, and M. Yildiz. The ISPD2005 Placement Contest and Benchmark Suite. In ISPD, pages 216–220, 2005. [Naylor01] W. C. Naylor, R. Donelly, and L. Sha. Non-Linear Optimization System and Method for Wire Length and Delay Optimization for an Automatic Electric Circuit Placer. In US Patent , 2001. [Nesterov83] Y. E. Nesterov. A Method of Solving a Convex Programming Problem with Convergence Rate O(1/k2). In Soviet Math, 27(2), 1983. [Ooura] General-Purpose FFT Package. [Pan05] M. Pan, N. Viswanathan, and C. Chu. An Efficient and Effective Detailed Placement Algorithm. In ICCAD, pages 48–55, 2005. [Shewchuk94] J. Shewchuk. An Introduction to the Conjugate Gradient Method without the Agonizing Pain. In Technical Report CMU-CS-TR , Carnegie Mellon University, 1994. [Skollermo75] G. Skollermo. A Fourier Method for the Numerical Solution of Poisson’s Equation. Mathematics of Computation, 29(131):697–711, 1975. [Viswanathan07a] N. Viswanathan et al. RQL: Global Placement via Relaxed Quadratic Spreading and Linearization. In DAC, pages 453–458, 2007. [Viswanathan07b] N. Viswanathan, M. Pan, and C. Chu. FastPlace3.0: A Fast Multilevel Quadratic Placement Algorithm with Placement Congestion Control, in ASPDAC, pages 135–140, 2007. 11/27/2018 UC San Diego
40
Q & A Thank you 11/27/2018 UC San Diego
41
Backup Slides 11/27/2018 UC San Diego
42
Graph Problem Abstraction
G=(V,E,R) hyper-graph: placement instance V node set: cells & macros E edge set: nets R placement region Global routing remains a fundamental and important research problem in VLSI physical design. The quality of routing has direct impact on the overall circuit performance Low-quality routing solution will cause serious problem to the timing closure Routing failure will loopback to placement and reduce design efficiency. As a result, High-performance routing approaches are quite necessary to the back-end Electronic design automation ISPD hosts two international contests on global router design optimization, they have Published benchmark suite, which are generated from placed real integrated circuits. Lots of research works have been done based on their formulation. State-of-the-art approaches are mostly based on integer linear programming, or Negotiation-based Iterative rip-up and rerouting. 11/27/2018 UC San Diego
43
Uniform Grid Decomposition
original instance 1024x1024 256x256 64x64 Uniform Grid Decomposition 11/27/2018 UC San Diego
44
Grid Density Equalization
original density distribution after 5 iterations after 10 iterations after 15 iterations Grid Density Equalization 11/27/2018 UC San Diego
45
Algorithm Categorization
Stochastic Min-Cut Quadratic Simulated annealing Timberwolf [Sechen86] Circuit partitioning Capo [Caldwell00] Dragon[Taghavi05] Fengshui [Agnihorti05] Nonlinear Linear system solution SimPL [Kim10], RQL [Viswanathan07a] FastPlace [Viswanathan07b] Nonlinear optimization Aplace[Kahng05] NTUplace[Chen08] mPL [Chan06] 11/27/2018 UC San Diego
46
Analysis of Prior Methods
Stochastic Best performance at small case (<10K cells) Longest runtime, low scalability to large case Min-cut Unrecoverable quality loss due to incorrect partitioning Quality loss due to naïve choice at early iteration Quadratic Inaccurate quadratic wirelength modeling Density force modulation remains a problem Nonlinear High-order smoothing function complexity Cell clustering reduced search space & quality loss 11/27/2018 UC San Diego
47
Wirelength Modeling HPWL LSE WA 11/27/2018 UC San Diego
48
Wirelength Error Bound
LSE WA 11/27/2018 UC San Diego
49
Existing Problems in Prior PDEs
Poisson’s equation Ill-definition induces non-unique solution [Chan05] Performance instability Can be improved by introducing linear terms Helmholtz equation Unique PDE solution with linear terms Quality is sensitive to the choice of ε [Cong07] Robustness degradation Gaussian smoothing Convolution with Gaussian equation High complexity, computationally intensive Only applied to fixed blocks [Chen08] 11/27/2018 UC San Diego
50
PDE Solutions & Problems
Green’s function [Eisenmann98] [Cong08] Computationally intensive Low extensibility to large design & high granularity Finite difference method [chan05] [Chan06] Still only local information aware Slow variation propagation in global scale Low convergence rate & quality loss 11/27/2018 UC San Diego
51
Density Scaling for Fixed Macros
GP solution w/o density scaling GP solution w/ density scaling white margin around macros global even distribution, less quality penalty 11/27/2018 UC San Diego
52
wirelength and energy functions conjugate orthogonalization
Analysis wirelength and energy functions quadratic approximation highly nonlinear f= W+λD conjugate orthogonalization easy to lose conjugacy convergence rate estimation time-varying Hessian matrix Hf, hard to approx 11/27/2018 UC San Diego
53
Analysis unconstrained optimization constraint relaxation (λ)
convex objective function non-convex function f= W+λD convergence rate estimation time-varying Lipschitz constant L = func(λ,t) 11/27/2018 UC San Diego
54
Density Smoothing Effect
original density Bell-shaped smoothing global smoothing two-level smoothing 11/27/2018 UC San Diego
55
Existing Problems in Prior PDEs
Poisson’s equation Ill-definition induces non-unique solution [Chan05] Performance instability Can be improved by introducing linear terms Helmholtz equation Unique PDE solution with linear terms Quality is sensitive to the choice of ε [Cong07] Robustness degradation Gaussian smoothing Convolution with Gaussian equation High complexity, computationally intensive Only applied to fixed blocks [Chen08] 11/27/2018 UC San Diego
56
Original Electrostatic Equilibrium
Original Charge Distr. (in 1D illustration) Even distribution at the boundary Converged Charge Distr. (using electric force) But, still overlap 11/27/2018 UC San Diego
57
Original Distr. w/o direct current (DC) globally even distribution
Modified System Original Distr. w/o direct current (DC) globally even distribution Converged Distr. 11/27/2018 UC San Diego
58
Breakdown of Node Set V fixed movable original inserted Vm Vf std cell
macros Vd dark nodes Vfc fillers Vm std cell original inserted 11/27/2018 UC San Diego
59
Boundary Condition Verification
iteration 15 iteration 30 ADAPTEC1 128x128 The boundary force is zero! 11/27/2018 UC San Diego
60
Density Gradient w/ Global Effect
whitespace at quadrant 2 whitespace at quadrant 4 Global Information Aware 11/27/2018 UC San Diego
61
Nesterov’s Method gradient vector Iterative approach
objective function: f = W + λD gradient vector Iterative approach no step length search ? new solution & parameters 11/27/2018 UC San Diego
62
Step Length & Lipschitz Constant
f(x) є C1,1(E) function inequality step length search (1) using Lipschitz constant 11/27/2018 UC San Diego
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.