A Parallel Integer Programming Approach to Global Routing Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer Engineering Jeffrey Linderoth.

Slides:



Advertisements
Similar presentations
Constraint Driven I/O Planning and Placement for Chip-package Co-design Jinjun Xiong, Yiuchung Wong, Egino Sarto, Lei He University of California, Los.
Advertisements

System Level Interconnect Prediction (SLIP) Sidewinder: A Scalable ILP-Based Router Jin Hu, Jarrod Roy, and Igor Markov Dept. of Computer Science.
SLA-Oriented Resource Provisioning for Cloud Computing
Optimization of Placement Solutions for Routability Wen-Hao Liu, Cheng-Kok Koh, and Yih-Lang Li DAC’13.
Wen-Hao Liu1, Yih-Lang Li, and Cheng-Kok Koh Department of Computer Science, National Chiao-Tung University School of Electrical and Computer Engineering,
Shuai Li and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University West Lafayette, IN, Mixed Integer Programming Models.
Branch & Bound Algorithms
EXPLORING HIGH THROUGHPUT COMPUTING PARADIGM FOR GLOBAL ROUTING Yiding Han, Dean Michael Ancajas, Koushik Chakraborty, and Sanghamitra Roy Electrical and.
Coupling-Aware Length-Ratio- Matching Routing for Capacitor Arrays in Analog Integrated Circuits Kuan-Hsien Ho, Hung-Chih Ou, Yao-Wen Chang and Hui-Fang.
An ILP-based Automatic Bus Planner for Dense PCBs P. C. Wu, Q. Ma and M. D. F. Wong Department of Electrical and Computer Engineering, University of Illinois.
Improving Market-Based Task Allocation with Optimal Seed Schedules IAS-11, Ottawa. September 1, 2010 G. Ayorkor Korsah 1 Balajee Kannan 1, Imran Fanaswala.
MCFRoute: A Detailed Router Based on Multi- Commodity Flow Method Xiaotao Jia, Yici Cai, Qiang Zhou, Gang Chen, Zhuoyuan Li, Zuowei Li.
2001 Winter CS215 Course Project Simulation Comparison of Routing Algorithms for Multicast with Bandwidth Reservation Zhihong Duan
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
Multiple constraints QoS Routing Given: - a (real time) connection request with specified QoS requirements (e.g., Bdw, Delay, Jitter, packet loss, path.
Dynamic lot sizing and tool management in automated manufacturing systems M. Selim Aktürk, Siraceddin Önen presented by Zümbül Bulut.
Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong.
Metal Layer Planning for Silicon Interposers with Consideration of Routability and Manufacturing Cost W. Liu, T. Chien and T. Wang Department of CS, NTHU,
1 Planning and Scheduling to Minimize Tardiness John Hooker Carnegie Mellon University September 2005.
WISCAD – VLSI Design Automation GRIP: Scalable 3-D Global Routing using Integer Programming Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer.
1 Global Meta-Hybrids for Large-Scale Combinatorial Optimization Professor Leyuan Shi Department of Industrial Engineering University of Wisconsin-Madison.
Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
A Topology-based ECO Routing Methodology for Mask Cost Minimization Po-Hsun Wu, Shang-Ya Bai, and Tsung-Yi Ho Department of Computer Science and Information.
Authors: Jia-Wei Fang,Chin-Hsiung Hsu,and Yao-Wen Chang DAC 2007 speaker: sheng yi An Integer Linear Programming Based Routing Algorithm for Flip-Chip.
Column Generation Approach for Operating Rooms Planning Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang Industrial Engineering and Computer Sciences Division.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
Confidentiality Preserving Integer Programming for Global Routing Hamid Shojaei, Azadeh Davoodi, Parmesh Ramanathan Department of Electrical and Computer.
1 Coupling Aware Timing Optimization and Antenna Avoidance in Layer Assignment Di Wu, Jiang Hu and Rabi Mahapatra Texas A&M University.
Network Aware Resource Allocation in Distributed Clouds.
MILP Approach to the Axxom Case Study Sebastian Panek.
1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.
Efficient and Scalable Computation of the Energy and Makespan Pareto Front for Heterogeneous Computing Systems Kyle M. Tarplee 1, Ryan Friese 1, Anthony.
Wen-Hao Liu 1, Yih-Lang Li 1, and Kai-Yuan Chao 2 1 Department of Computer Science, National Chiao-Tung University, Hsin-Chu, Taiwan 2 Intel Architecture.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 EECS 527 Paper Presentation High-Performance.
Archer: A History-Driven Global Routing Algorithm Mustafa Ozdal Intel Corporation Martin D. F. Wong Univ. of Illinois at Urbana-Champaign Mustafa Ozdal.
An Efficient Clustering Algorithm For Low Power Clock Tree Synthesis Rupesh S. Shelar Enterprise Microprocessor Group Intel Corporation, Hillsboro, OR.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Parallel Optimization Tools for High Performance Design of Integrated Circuits WISCAD VLSI Design Automation Lab Azadeh Davoodi.
GRID’2012 Dubna July 19, 2012 Dependable Job-flow Dispatching and Scheduling in Virtual Organizations of Distributed Computing Environments Victor Toporkov.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
Tao Lin Chris Chu TPL-Aware Displacement- driven Detailed Placement Refinement with Coloring Constraints ISPD ‘15.
Design of a High-Throughput Low-Power IS95 Viterbi Decoder Xun Liu Marios C. Papaefthymiou Advanced Computer Architecture Laboratory Electrical Engineering.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
A Negotiated Congestion based Router for Simultaneous Escape Routing Q.Ma, T.Yan and Martin D.F. Wong Department of Electrical and Computer Engineering.
A Stable Fixed-outline Floorplanning Method Song Chen and Takeshi Yoshimura Graduate School of IPS, Waseda University March, 2007.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 13: February 20, 2002 Routing 1.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
ILP-Based Inter-Die Routing for 3D ICs Chia-Jen Chang, Pao-Jen Huang, Tai-Chen Chen, and Chien-Nan Jimmy Liu Department of Electrical Engineering, National.
Min Li and Azadeh Davoodi
Routability-driven Floorplanning With Buffer Planning Chiu Wing Sham Evangeline F. Y. Young Department of Computer Science & Engineering The Chinese University.
BOB-Router: A New Buffering-Aware Global Router with Over-the-Block Routing Resources Yilin Zhang1, Salim Chowdhury2 and David Z. Pan1 1 Department of.
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University,
1 NTUplace: A Partitioning Based Placement Algorithm for Large-Scale Designs Tung-Chieh Chen 1, Tien-Chang Hsu 1, Zhe-Wei Jiang 1, and Yao-Wen Chang 1,2.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories.
System in Package and Chip-Package-Board Co-Design
High-Performance Global Routing with Fast Overflow Reduction Huang-Yu Chen, Chin-Hsiung Hsu, and Yao-Wen Chang National Taiwan University Taiwan.
Congestion Analysis for Global Routing via Integer Programming Hamid Shojaei, Azadeh Davoodi, and Jeffrey Linderoth* Department of Electrical and Computer.
Dept. of Electronics Engineering & Institute of Electronics National Chiao Tung University Hsinchu, Taiwan ISPD’16 Generating Routing-Driven Power Distribution.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
VLSI Physical Design Automation
Multi-hop Coflow Routing and Scheduling in Data Centers
Example of usage in Micron Italy (MIT)
Presentation transcript:

A Parallel Integer Programming Approach to Global Routing Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer Engineering Jeffrey Linderoth Department of Industrial and Systems Engineering University of Wisconsin-Madison WISCAD Electronic Design Automation Lab

2 Overview of Global Routing v11v12v13v14 v21v22v23v24 v31v32v33v34 v41v42v43v44 cap. = C v11 v33 v42 Benchmark bigblue4: More than 2M nets Grid size – 403 x 405 Layers – 8

3 GRIP*: Overview IP Formulation Price and Branch Problem Decomposition GRIP Global Routing * [Wu, Davoodi, Linderoth--DAC09]

4 GRIP: The IP Formulation T2T2 T2T2 T1T1 T1T1 (ILP-GR)

5 GRIP: Solution via Price-and-Branch Price: Solve linear program relaxation of (ILP-GR) using “column generation” Branch: Solve (ILP-GR) using S(Ti) instead of Ω(Ti) Step 0: Start with S(Ti)={t 1i } Step 1: Solve linear program relaxation version of (ILP-GR) using current S(Ti) Step 2: Based on solution of step 1, solve pricing problem for each net to identify new route t* S(Ti) = S(Ti) U t* Pass pricing condition? Yes S(T) Step 2: Based on solution of step 1, solve a pricing problem for a net Ti to identify new route t* Pass pricing condition? Generates a set of promising candidate routes S(Ti)  Ω(Ti) for each net Ti

6 GRIP: Problem Decomposition A subproblem is represented by 1.A rectangular area on the chip 2.A set of nets assigned to it Subproblems should be defined to have similar complexity for: 1) workload balance, 2) avoiding overflow GRIP’s strategy: 1.Recursive bi-partitioning to define the subproblem boundaries 2.Net assignment based on FLUTE* combined with dynamic detouring before solving each subproblem adaptec1 3D benchmark * [Chu, Wong--TCAD’08]

7 GRIP: Solving the Subproblems Floating Fixed

8 GRIP: Connecting Subproblems Using IP-based procedure is essential to connect subproblems with low (or no) overflow 0.0

9 GRIP: Results Significantly high improvement in wirelength –9.23% and 5.24% in ISPD2007 and ISPD2008 benchmarks, respectively –Comparable or improved overflow in three unroutable benchmarks However, even wall runtime (with the limited parallelism) prohibitively large –6 to 22 hours on a grid with CPUs of 2GB memory

10 PGRIP: Overview Goal: Remove synchronization barrier between subproblems –Allowing a much higher degree of parallelism without much degradation in wirelength or overflow Subproblem 1 Subproblem 2Subproblem n IP-Based “Patching” Feedback to enhance connectivity Partial routing solution

11 PGRIP: 1) Subproblem Definition 1.Quickly generate a routing solution –Solve relaxed version of (ILP-GR) after fixing some short nets using column generation (set to 10 minutes) –Apply randomized rounding to get integer solution 2.Recursive bi-partition to define boundaries of rectangular subregions –To get subproblems with similar complexity, it balances number of nets at each rectangle during bi-partitioning –Stop when number of nets inside a subproblem is less than Traverse subproblems and apply some detouring to further enhance the net assignments –In order of Total Edge Overflow similar of GRIP

12 Procedure –Apply pricing to solve each subproblem independently in a bounded-time (set to 5 minutes) –Allow inter-region nets to connect to anywhere on the subproblem boundaries When solving relaxed (ILP-GR), Qe set to be equal to the Manhattan distance of edge e from the center of the subproblem PGRIP: 2) Initial Subproblem Pricing

13 PGRIP: 3) IP-Based Patching Patcher’s feedback –Pseudo-terminal locations per boundary per inter-region net –Goal is to define restricted window to enhance connectivity T1 T2

14 Subproblem 1 PGRIP: 3) IP-Based Patching T1 Subproblem 2 T2 T1 T2

15 Subproblem 1 PGRIP: 3) IP-Based Patching T1 Subproblem 2 T2 T1 T2 V’ e’ C11 C12 C13C14 C21C22 (ILP-Patch) T2 C23 C24

16 PGRIP: 3) Adjusted Pricing Subproblems apply adjusted pricing –Nets only allowed to connect within their provided spanning window per boundary (set to 20 minutes) Branching is then used to solve the subproblems independently T1 T2

17 PGRIP: 4) Distributed Connecting of Subproblems Subproblems are connected simultaneously (in parallel) –Similar procedure as in GRIP –Inside each subproblem, the remaining edge capacities are allocated uniformly among its boundary connection problems c c cc

18 Simulation Setup Pricing using MOSEK 5.0 Branching using CPLEX 6.5 All parallel jobs in CS grid at UW-Madison –Machines of similar speed and same 2GB memory Network managed by Condor –Each CPU does one job at a time

19 Simulation Setup Runtime limits in PGRIP [target runtime: 75 minutes] –Defining subproblems:10 minutes –Initial pricing: 5 minutes –Adjusted pricing: 20 minutes –Branch-and-bound for solving subproblems: 10 minutes –Pricing to connect subproblems: 20 minutes –Branch-and-bound for connecting subproblems: 10 minutes

20 Simulation Results: Comparison of QoS PGRIPGRIPFGRFR 4.0NTHU 2.0 TOFWLTOFWL(%)TOFWL(%)TOFWL(%)TOFWL(%) a1 (07) a2 (07) a3 (07) a4 (07) a5 (07) n1 (07) n2 (07) n3 (07) 0 41K K K K K Average % 6.58 % 8.87 % 7.42% n4 (08) n5 (08) n6 (08) n7 (08) b1 (08) b2 (08) b3 (08) b4 (08) Average % 4.44 % 6.40 % 3.77 %

21 Simulation Results: Runtime PGRIPGRIP #ParallelWCPU (min) TCPU (min) E[#Parallel]WCPU (min) TCPU (min) a1 (07) a2 (07) a3 (07) a4 (07) a5 (07) n1 (07) n2 (07) n3 (07) n4 (08) n5 (08) n6 (08) n7 (08) b1 (08) b2 (08) b3 (08) b4 (08) Average

22 Conclusions & Future Works Conclusions –Removed synchronization barrier in GRIP –High-level of distributed processing –High use of IP—considered impractical for GR—shown to be practical when combined with distributed processing, allowing significant improvement in solution quality Future works –Explore use of pricing for quick congestion estimation –Incorporate restrictive routing constraints within pricing, e.g. on net topology for delay consideration, metal usage for manufacturability

23 Thank You