Ion I. Mandoiu Ph.D. Defense of Research August 11, 2000 Approximation Algorithms for VLSI Routing.

Slides:



Advertisements
Similar presentations
Iterative Rounding and Iterative Relaxation
Advertisements

The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Network Design with Degree Constraints Guy Kortsarz Joint work with Rohit Khandekar and Zeev Nutov.
1 Interconnect Layout Optimization by Simultaneous Steiner Tree Construction and Buffer Insertion Presented By Cesare Ferri Takumi Okamoto, Jason Kong.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (UCLA) S. Muddu (Sanera Systems) A. Zelikovsky (Georgia State) Provably Good Global Buffering by.
Ion Mandoiu (Georgia Tech) Alex Zelikovsky (Georgia State) ISMP 2000 Practical Approximation Algorithms for Zero- and Bounded-Skew Trees.
A.B. Kahng, Ion I. Mandoiu University of California at San Diego, USA A.Z. Zelikovsky Georgia State University, USA Supported in part by MARCO GSRC and.
© Yamacraw, 2001 Minimum-Buffered Routing of Non-Critical Nets for Slew Rate and Reliability A. Zelikovsky GSU Joint work with C. Alpert.
Minimum-Buffered Routing of Non- Critical Nets for Slew Rate and Reliability Control Supported by Cadence Design Systems, Inc. and the MARCO Gigascale.
E. AlthausMax-Plank-Institut fur Informatik G. CalinescuIllinois Institute of Technology I.I. MandoiuUC San Diego S. Prasad Georgia State University N.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (UCLA/UCSD) S. Muddu (Sanera Systems) A. Zelikovsky (Georgia State) Practical Approximation Algorithms.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
Primal Dual Method Lecture 20: March 28 primaldual restricted primal restricted dual y z found x, succeed! Construct a better dual.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
Network Design Adam Meyerson Carnegie-Mellon University.
Approximation Algorithms
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (Georgia Tech/UCLA) S. Muddu (Silicon Graphics) A. Zelikovsky (Georgia State) Provably Good Global.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Provably Good Global Buffering Using an Available Buffer Block Plan F. F. Dragan (Kent) A. B. Kahng (UCLA) I. Mandoiu (Gatech) S. Muddu (Silicon graphics)
An Approximation Algorithm for Requirement cut on graphs Viswanath Nagarajan Joint work with R. Ravi.
Symmetric Connectivity With Minimum Power Consumption in Radio Networks G. Calinescu (IL-IT) I.I. Mandoiu (UCSD) A. Zelikovsky (GSU)
Continuous Retiming EECS 290A Sequential Logic Synthesis and Verification.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Steiner trees Algorithms and Networks. Steiner Trees2 Today Steiner trees: what and why? NP-completeness Approximation algorithms Preprocessing.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
(work appeared in SODA 10’) Yuk Hei Chan (Tom)
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
Priority Models Sashka Davis University of California, San Diego June 1, 2003.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Graph Algorithms: Minimum.
Approximation Algorithms for Stochastic Combinatorial Optimization Part I: Multistage problems Anupam Gupta Carnegie Mellon University.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
CS774. Markov Random Field : Theory and Application Lecture 13 Kyomin Jung KAIST Oct
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
An Efficient Clustering Algorithm For Low Power Clock Tree Synthesis Rupesh S. Shelar Enterprise Microprocessor Group Intel Corporation, Hillsboro, OR.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Combinatorial Optimization Problems in Computational Biology Ion Mandoiu CSE Department.
Fast and accurate energy minimization for static or time-varying Markov Random Fields (MRFs) Nikos Komodakis (Ecole Centrale Paris) Nikos Paragios (Ecole.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Projects Network Theory VLSI PSM 1. Network 1. Steiner trees
Multicommodity flow, well-linked terminals and routing problems Chandra Chekuri Lucent Bell Labs Joint work with Sanjeev Khanna and Bruce Shepherd Mostly.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
New algorithms for Disjoint Paths and Routing Problems
© Yamacraw, 2002 Symmetric Minimum Power Connectivity in Radio Networks A. Zelikovsky (GSU) Joint work with Joint work with.
© Yamacraw, Fall 2002 Power Efficient Range Assignment in Ad-hoc Wireless Networks E. Althous (MPI) G. Calinescu (IL-IT) I.I. Mandoiu (UCSD) S. Prasad.
Prof. Shiyan Hu Office: EERC 518
Routing Topology Algorithms Mustafa Ozdal 1. Introduction How to connect nets with multiple terminals? Net topologies needed before point-to-point routing.
CSE 248 Skew 1Kahng, UCSD 2011 CSE248 Spring 2011 Skew.
A Fully Polynomial Time Approximation Scheme for Timing Driven Minimum Cost Buffer Insertion Shiyan Hu*, Zhuo Li**, Charles Alpert** *Dept of Electrical.
Steiner Tree Problem Given: A set S of points in the plane = terminals
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Models of Greedy Algorithms for Graph Problems Sashka Davis, UCSD Russell Impagliazzo, UCSD SIAM SODA 2004.
E. AlthausMax-Plank-Institut fur Informatik G. CalinescuIllinois Institute of Technology I.I. MandoiuUC San Diego S. Prasad Georgia State University N.
Approximation Algorithms Duality My T. UF.
Ion I. Mandoiu, Vijay V. Vazirani Georgia Tech Joseph L. Ganley Simplex Solutions A New Heuristic for Rectilinear Steiner Trees.
Approximation Algorithms based on linear programming.
Multiroute Flows & Node-weighted Network Design Chandra Chekuri Univ of Illinois, Urbana-Champaign Joint work with Alina Ene and Ali Vakilian.
::Network Optimization:: Minimum Spanning Trees and Clustering Taufik Djatna, Dr.Eng. 1.
Confidential & Proprietary – All Rights Reserved Internal Distribution, October Quality of Service in Multimedia Distribution G. Calinescu (Illinois.
Steiner trees: Approximation Algorithms
CSE248 Spring 2011 Skew.
Haim Kaplan and Uri Zwick
Analysis of Algorithms
Graph Partitioning Problems
Clustering.
Zero-Skew Trees Zero-Skew Tree: rooted tree in which all root-to-leaf paths have the same length Used in VLSI clock routing & network multicasting.
Presentation transcript:

Ion I. Mandoiu Ph.D. Defense of Research August 11, 2000 Approximation Algorithms for VLSI Routing

VLSI Routing VLSI Physical Design Electrical description  Geometrical layout VLSI Global Routing Given: locations for net terminals Find: tree interconnection for each net Minimizing: total length (RSMT problem) skew (ZST problem) number of buffers (MSPT problem) …

Overview of Results Single-net routing: New RSMT heuristic runs  10 times faster, and gives higher-quality solutions than previous best RSMT heuristic Improved ZST approximation algorithms very fast: O(n log n) running time Tight analysis of the MST heuristic for MSPT Multi-net routing: MCF-based approximation algorithms for global buffering via buffer blocks

A New RSMT Heuristic

The RSMT problem RSMT Steiner point MST MST gives 3/2 approximation [H76]

Why RSMT? Minimum wire length gives Minimum area Minimum resistance/capacitance RSMT used for: Non-critical nets Physically small instances

Key Results on RSMT Problem Reduction to discrete grid [H66] NP-hard [GJ77] Iterated 1-Steiner heuristic [KR90] Greedily adds Steiner points to the tree Almost 11% improvement over MST on average Fast batched implementation (BI1S) Exact algorithm: GeoSteiner 3.0 [WWZ98] Branch-and-cut 11.5% improvement over MST on average Average speed comparable to BI1S!!!

The IRV Algorithm: High-Level Idea Iterative method: in each step add/remove one Steiner point to/from tree Unlike Iterated 1-Steiner heuristic, do not insist on choosing best Steiner point in each step Steiner point to be added is chosen using a powerful LP formulation of the Steiner tree problem in graphs, called the bidirected cut formulation

The Bidirected Cut Formulation

Valid cut C C

The Bidirected Cut Formulation (cont.)

LP relaxation

The Bidirected Cut Formulation (cont.) LP relaxation Dual LP

The Bidirected Cut Formulation (cont.) LP relaxation Dual LP Gives optimum integer solution if all vertices are terminals, i.e., for the MST problem (E 66) Integrality gap believed to be very close to 1

The RV Algorithm [RV99] 3/2 approximation algorithm for Steiner tree problem in graphs based on bidirected cut formulation Applies only to quasi-bipartite graphs, i.e., graphs with no edges connecting pairs of Steiner vertices Uses the primal-dual method for approximation algorithms

Adaptation to General Graphs Remove Steiner-Steiner edges from graph G Run RV algorithm on remaining graph Repeat, treating Steiner vertices picked by the RV algorithm as terminals Stop when no new Steiner vertices are picked

Implementation Issues Size of graphs resulting from reduction to grid is a potential bottleneck Use efficiently computable reductions: Vertex reduction based on the empty rectangle test Edge reductions based on bound on max. degree of geometric MSTs (RS 95)

Experimental Setup Test bed for experiments: Random instances ranging in size between 10 and 250 terminals, 1000 instances/size Instances extracted from industrial designs Measure of quality: percent improvement over MST

Average Improvement over MST

Average CPU Time

Results on Industrial Instances No Term:

Improved ZST and BST Approximation Algorithms

Zero-Skew Trees Zero-Skew Tree: rooted tree in which all root-to-leaf paths have the same length Used in VLSI clock routing & network multicasting

The Zero-Skew Tree Problem Zero-Skew Tree Problem Given: set of terminals in rectilinear plane Find: zero-skew tree with minimum total length Previous results [CKKRST99] NP-hard for general metric spaces factor 2e ~ 5.44 approximation Our results: factor 4 approximation for general metric spaces factor 3 approximation for rectilinear plane

Overview Constructive lower-bound on optimum ZST length Converting spanning tree to zero-skew trees Finding spanning trees with small conversion cost Improved conversion using Steiner points Approximation algorithms for bounded-skew trees Conclusions and open problems

ZST Lower-Bound (CKKRST 99) N(r)=min. # of balls of radius r that cover all sinks

ZST Lower-Bound (CKKRST 99) N(r)=min. # of balls of radius r that cover all sinks

ZST Lower-Bound (CKKRST 99) N(r)=min. # of balls of radius r that cover all sinks

ZST Lower-Bound (CKKRST 99) N(r)=min. # of balls of radius r that cover all sinks

ZST Lower-Bound (CKKRST 99) N(r)=min. # of balls of radius r that cover all sinks

Constructive Lower-Bound Computing N(r) is NP-hard, but … Lemma: For any ordering of the terminals, if then

Constructive Lower-Bound r N(r) 2 n n-1

Stretching Rooted Spanning Trees ZST root = spanning tree root where = max path length from to a leaf of ZST root-to-leaf path length =

Stretching Rooted Spanning Trees Loop length =

Stretching Rooted Spanning Trees Sum of loop lengths =

Zero-Skew Spanning Tree Problem Theorem: Every rooted spanning tree can be stretched to a ZST of total length where Zero-Skew Spanning Tree Problem: Find rooted spanning tree minimizing

How good are the MST and Min-Star?... MST: min length, huge delay N-1 3 N-2 … … Star: min delay, huge length

The Rooted-Kruskal Algorithm While  2 roots remain: Initially each terminal is a rooted tree; d(t)=0 for all t Pick closest two roots, t & t’, where d(t)  d(t’) t’t t’ becomes child of t, root of merged tree is t d(t)  max{ d(t), d(t’) + dist(t,t’) } t’t

The Rooted-Kruskal Algorithm While  2 roots remain: Initially each terminal is a rooted tree; d(t)=0 for all t Pick closest two roots, t & t’, where d(t)  d(t’) t’ becomes child of t, root of merged tree is t d(t)  max{ d(t), d(t’) + dist(t,t’) }

How good is Rooted-Kruskal? While  2 roots remain: Initially each terminal is a rooted tree; d(t)=0 for all t Pick closest two roots, t & t’, where d(t)  d(t’) t’ becomes child of t, root of merged tree is t d(t)  max{ d(t), d(t’) + dist(t,t’) } Lemma: delay(T)  length(T) Initially each terminal is a rooted tree; d(t)=0 for all t d(t)  max{ d(t), d(t’) + dist(t,t’) } At the end of the algorithm, d(t)=delay (t ) TT Pick closest two roots, t & t’, where d(t)  d(t’) Initially each terminal is a rooted tree; d(t)=0 for all t At the end of the algorithm, d(t)=delay (t ) When edge (t,t’) is added to T: length(T) increases by dist(t,t’) delay(T) increases by at most dist(t,t’)

How good is Rooted-Kruskal? While  2 roots remain: Initially each terminal is a rooted tree; d(t)=0 for all t Pick closest two roots, t & t’, where d(t)  d(t’) t’ becomes child of t, root of merged tree is t d(t)  max{ d(t), d(t’) + dist(t,t’) } Lemma: length(T)  2 OPT Pick closest two roots, t & t’, where d(t)  d(t’) Number terminals in reverse order of becoming non-roots length(T) =

Factor 4 Approximation Length after stretching = length(T) + delay(T) delay(T)  length(T) length(T)  2 OPT  ZST length  4 OPT Algorithm: Rooted-Kruskal + Stretching

Stretching Using Steiner Points

Factor 3 Approximation Length after stretching = length(T) + ½ delay(T) delay(T)  length(T) length(T)  2 OPT  ZST length  3 OPT Algorithm: Rooted-Kruskal + Improved Stretching

Practical Considerations For a fixed topology, minimum length ZST can be found in linear time using the Deferred Merge Embedding (DME) algorithm [Eda91, BK92, CHH92] Practical algo: Rooted-Kruskal + Stretching + DME Theorem: Both stretching algorithms lead to the same ZST topology when applied to the Rooted- Kruskal tree

Running Time Stretching: O(N logN) Rooted-Kruskal: O(N logN) using the dynamic closest-pair data structure of [B98] DME: O(N) [Eda91, BK92, CHH92]  O(N logN) overall

Extension to Other Metric Spaces Everything works as in rectilinear plane, except: 2 Running time of Rooted-Kruskal becomes O(N ) No equivalent of DME known for other spaces The space must be metrically convex to apply second stretching algorithm

Bounded-Skew Trees b-bounded-skew tree: difference between length of any two root-to-leaf paths is at most b Bounded-Skew Tree Problem: given a set of terminals and bound b>0, find a b-bounded-skew tree with minimum total length Previous approximation guarantees [CKKRST 99]: factor for arbitrary metrics factor for rectilinear plane Our results: factor 14, resp. 9 approximation

BST construction idea + lower bound Two stage BST construction: Cover terminals by disjoint b-bounded-skew trees Connect roots via a zero-skew tree Lemma: For any set of terminals, and any

Constructing the tree cover T  MST on terminals, rooted arbitrarily W   While T   do: Find leaf of T furthest from the root Find its highest ancestor u that still has delay  b Add u to W Add T to the tree cover and delete it from T u Lemma:

BST Approximation Algorithm: Output tree cover  approximate ZST on W

BST Approximation Theorem: Rectilinear Plane: Arbitrary metric spaces:

Summary of Results on ZST/BST ProblemZero-SkewBounded-skew Metric GeneralRectilinearGeneralRectilinear Previous factor New factor 43149

Open Problems Complexity of ZST problem in rectilinear plane Complexity of finding the spanning tree with minimum length+delay? Zero-skew Steiner ratio: supremum, over all sets of terminals, of the ratio between minimum ZST length and minimum spanning tree length+delay What is the ratio for rectilinear plane? What is the ratio for arbitrary spaces? (  4,  3) Planar ZST / BST

Tight Analysis of the MST Heuristic for MSPT

The MSPT Problem MSPT Problem: find bounded edge-length Steiner tree with min. number of Steiner points

The MST Heuristic for MSPT Find MST, subdivide edges to meet edge-length constraints Our result Approximation factor of MST heuristic is D-1, where D is the MST number of the space (maximum possible degree of a minimum-degree MST)  Factor 3 in rectilinear plane, 4 in Euclidean plane [LX99] Approximation factor  5 in Euclidean plane

Provably Good Global Buffering by MTMCF Approximation

Global Routing via Buffer Blocks BB

Global Buffering Problem Given: L/U bounds on edge lengths buffer block locations and capacities list of nets, each net has upper-bound and parity requirement on # buffers for each source-sink path non-negative weight (criticality coefficient) Find: routing of a max. weight set of nets s.t. each edge length is between L and U # buffers for any source-sink pair satisfy given constraints # of nets passing through buffer block b  capacity(b)

Integer MTMCF Formulation Approach: solve LP relaxation + randomized rounding

MTMCF Approximation Garg/Konemann & Fleisher (edge-cap. MCF)  -MCF algorithm: w(v) = , f = 0 For i = 1 to N do For k = 1,…,K do Find min. weight valid tree T for net k While w(T) < min{ 1,  (1+2  )^i} do f(T)= f(T)+1 For every v, w(v)  (1+  (T,v)/c(v))*w(v) End while End for Output f/N

Rounding fractional MCF Raghavan-Thompson: random walk from source  probability of choosing an arc/node proport. node flow Probability of routing net proportional net flow Algorithm  decrease flow by (1-  )  route nets with randomized rounding With high probability no node capacity violations

Experimental results

Conclusions Improved approximation algorithms and heuristics for NP-hard problems arising in VLSI routing Experimentally validated, theoretical guarantees doubled by good practical results