230 likes | 380 Views
An Algebraic Multigrid Solver for Analytical Placement With Layout Based Clustering. Hongyu Chen, Chung-Kuan Cheng, Andrew B. Kahng, Bo Yao, Zhengyong Zhu University of California, San Diego Nan-Chi Chou, John F. MacDonald, Peter Suaris Mentor Graphics Corporation. Outline.
E N D
An Algebraic Multigrid Solver for Analytical Placement With Layout Based Clustering Hongyu Chen, Chung-Kuan Cheng, Andrew B. Kahng, Bo Yao, Zhengyong Zhu University of California, San Diego Nan-Chi Chou, John F. MacDonald, Peter Suaris Mentor Graphics Corporation
Outline • Analytical placement background • Algebraic multigrid solver • Layout based clustering • Experimental results • Conclusions
Analytical Placement • Successfully introduced and applied for 20 years • Minimize quadratic wire length • Basic formulation is a quadratic programming (QP) • Optimal solution is given by the linear equation systems CX+dx=0 CY+dy=0
Matrix Solver Is the Key • Need additional force to make cell distribution even (Eisenmann & Johannes, DAC 1998) • ex is based on cell density, need iterations to update • Key observation Linear equations with the same system matrix C is to be solved for many times • A fast matrix solver is the key technology for analytical placement
Ever Increasing Problem Dimensions • ITRS roadmap • 1 billion transistors integration in year 2007 • Millions of unknowns for the linear equation Number of transistors in a typical MPU/ASIC design (Millions) Year (source: ITRS Roadmap 2002 update)
Hierarchy Is the Way to Go • Placement • T.Chan, J. Cong, et al, Multilevel Optimization for Large-scale Circuit Placement, ICCAD 2000 • X.Hong, et al, CASH, ASP-DAC 2000 • Hsun Cheng Lee, et al, Multilevel Floorplanning for Large-Scale Building Block Design, DAC 2003 • Graph partitioning/clustering • G. Karypis and V. Kumar, hMETIS, 1998 • C.J.Alpert, et al, Multilevel Circuit Partitioning, 1998 • Multigrid • W.L.Briggs, V.E.Henson, S.F.McCormic, A Multigrid Tutorial, 2000 • K.Stüben, A Review of Algebraic Multigrid, 1999
AMG – a Good Candidate • Algebraic MultiGrid – a new branch of the multigrid method • The method is scalable • O(n) time complexity theoretically. • SOR and PCG are O(nlogn). • Guaranteed convergence and optimality • Overcome the restriction of classic multigrid, can be applied to linear systems without regular structure. • A hierarchy of linear systems are derived directly from the original equation.
(2) A(2)•X(2)=b(2) (1) A(1) •X(1)=b(1) (0) A(0) •X(0)=b(0) 1 2 1 2 3 4 6 2 1 4 3 5 AMG Idea (1): A Hierarchy of Problems • Defined by a clustering scheme Original Problem
Restriction : • Interpolation : (2) 2 1 3 4 2 1 (1) AMG Idea (2) : Solution Mapping Between Levels • Coarse level node position is the average of fine level components
Start with Iterate => Interpolation: Restriction: Iterate => AMG Idea (3): V-cycle Iterations • Description of the algorithm in 2 levels (1) A(1)X(1)= b(1) A(1)X(1)= b(1) Update R(0), b(1) (0) A(0)X(0)= b(0) • Extend to multi-levels
Derive Linear Systems for All Levels • Galakin operation • A is symmetric positive definite • Easy operation with interpolation and restriction operators, only addition performed • It introduces overhead to the solution process
Why Iterate at Coarse Levels ? • Smaller problem => less CPU time • Coarse level iterate is more efficient in reducing errors • Iterations on each level are efficient only in reducing high frequency errors to that level • Restriction operation will transform low frequency errors into high frequency ones, which can be efficiently reduced at coarse level • Idea of multigrid: • Iterations to reduce high frequency error in each level, leave the low frequency error for the coarser level.
Aggregate-type of AMG • Our approach turns out to be aggregate-type of AMG • Interpolation: one fine level node depends only on one coarse level node. • Pros • Can be used with any clustering scheme • Simple derivation of the problems and simple solution mapping, less overhead • Cons • Piecewise linear interpolation, less effective.
Layout Based Clustering • Motivation: identify which cells stay close together in the placement. • The clustering is needed for the AMG process. • Layout based clustering • Edge coarsening • Edge weight is according to the distance info • Collapse the edge with shortest distance first • Alternatives • hMETIS • Random
Distance Information of An Edge • Distance information is calculated based on trials of placement • “Blown-up” placement Starting point All cells at the same position Iterations on solving equations Snapshot of the placement when the standard deviation of cell coordinates is max
Deriving the Distance of An Edge • Distance between cell i and j, dij (1) (2) dij = dij(ll)+ dij(lr)+ dij(ul)+ dij(ur) (3) (4)
Experimental Settings • Two experiments • Convergence comparison with SOR and PCG solvers • SOR ( = 1.95 ) • PCG ( Incomplete Cholesky factorization precondition) • Comparison with different clustering algorithms • Layout based clustering • hMETIS clustering • Random clustering • Solve the system Ax=b once • Check relative error, er=||X-X*||∞ / ||X*||∞ • Test cases from ISPD 2002. #cells 12k to 200k
AMG PCG SOR Comparison of the Solvers • CPU time to converge to 10-2 relative error CPU Time (sec) Case Number
AMG PCG SOR Example Convergence Histories • AMG solver converges fast at the beginning er CPU Time (sec)
Layout HMetis Random Comparison of the Clustering Methods (1) • CPU time to reach 10-3 relative error CPU Time (sec) Case Number
Comparison of the Clustering Methods (2) • Clustering time comparison CPU Time (sec) Layout HMetis Random Case Number
Conclusions • A hierarchical solver is important for large scale analytical placement problem • Algebraic multigrid method converges very fast at the beginning stage of iterations. It is a promising technology for solving linear equations in analytical placement • Layout based clustering scheme is useful for AMG solver