© KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth.

Slides:



Advertisements
Similar presentations
A R EVISIT TO THE P RIMAL -D UAL B ASED C LOCK S KEW S CHEDULING A LGORITHM Min Ni and Seda Ogrenci Memik EECS Department, Northwestern University.
Advertisements

Tuesday, March 5 Duality – The art of obtaining bounds – weak and strong duality Handouts: Lecture Notes.
1 LP, extended maxflow, TRW OR: How to understand Vladimirs most recent work Ramin Zabih Cornell University.
1 Outline relationship among topics secrets LP with upper bounds by Simplex method basic feasible solution (BFS) by Simplex method for bounded variables.
Maximum Flow and Minimum Cut Problems In this handout: Duality theory Upper bounds for maximum flow value Minimum Cut Problem Relationship between Maximum.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
IEOR 4004 Midterm review (Part II) March 12, 2014.
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
EMGT 501 HW #1 Solutions Chapter 2 - SELF TEST 18
Introduction to Algorithms
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 8 Tuesday, 11/19/02 Linear Programming.
1 EL736 Communications Networks II: Design and Algorithms Class8: Networks with Shortest-Path Routing Yong Liu 10/31/2007.
Chapter 6 Linear Programming: The Simplex Method Section 3 The Dual Problem: Minimization with Problem Constraints of the Form ≥
The Out of Kilter Algorithm in Introduction The out of kilter algorithm is an example of a primal-dual algorithm. It works on both the primal.
CSCI 3160 Design and Analysis of Algorithms Tutorial 6 Fei Chen.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2006 Lecture 9 Wednesday, 11/15/06 Linear Programming.
Circuit Retiming with Interconnect Delay CUHK CSE CAD Group Meeting One Evangeline Young Aug 19, 2003.
Fast Matching Algorithms for Repetitive Optimization Sanjay Shakkottai, UT Austin Joint work with Supratim Deb (Bell Labs) and Devavrat Shah (MIT)
Duality Lecture 10: Feb 9. Min-Max theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum Cut Both.
Maximum Flow and Minimum Cut Problems In this handout: Good choices for augmenting paths Duality theory Upper bounds for maximum flow value Minimum Cut.
Duality Dual problem Duality Theorem Complementary Slackness
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
EMGT 501 HW # (b) (c) 6.1-4, Due Day: Sep. 21.
Linear programming maximize x 1 + x 2 x 1 + 3x 2  3 3x 1 + x 2  5 x 1  0 x 2  0.
An Efficient Chiplevel Time Slack Allocation Algorithm for Dual-Vdd FPGA Power Reduction Yan Lin 1, Yu Hu 1, Lei He 1 and Vijay Raghunathan 2 1 EE Department,
Continuous Retiming EECS 290A Sequential Logic Synthesis and Verification.
Retiming with Interconnect and Gate Delay CUHK CSE CAD Group Dennis Tong 29 th Sept., 2003.
EE 685 presentation Optimization Flow Control, I: Basic Algorithm and Convergence By Steven Low and David Lapsley Asynchronous Distributed Algorithm Proof.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
ECE LP Duality 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality.
Lecture outline Support vector machines. Support Vector Machines Find a linear hyperplane (decision boundary) that will separate the data.
ISM 206 Lecture 4 Duality and Sensitivity Analysis.
Problem Set # 4 Maximize f(x) = 3x1 + 2 x2 subject to x1 ≤ 4 x1 + 3 x2 ≤ 15 2x1 + x2 ≤ 10 Problem 1 Solve these problems using the simplex tableau. Maximize.
Linear Programming – Max Flow – Min Cut Orgad Keller.
Constrained Optimization Rong Jin. Outline  Equality constraints  Inequality constraints  Linear Programming  Quadratic Programming.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
Optimization of Linear Problems: Linear Programming (LP) © 2011 Daniel Kirschen and University of Washington 1.
Max-flow/min-cut theorem Theorem: For each network with one source and one sink, the maximum flow from the source to the destination is equal to the minimal.
Fair Allocation with Succinct Representation Azarakhsh Malekian (NWU) Joint Work with Saeed Alaei, Ravi Kumar, Erik Vee UMDYahoo! Research.
Duality Theory 對偶理論.
1 Minimum Cost Flows Goal: Minimize costs to meet all demands in a network subject to capacities (combines elements of both shortest path and max flow.
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
Public Policy Modeling Simplex Method Tuesday, October 13, 2015 Hun Myoung Park, Ph.D. Public Management & Policy Analysis Program Graduate School of International.
Lecture 16 Maximum Matching. Incremental Method Transform from a feasible solution to another feasible solution to increase (or decrease) the value of.
Introduction to Operations Research
Duality Theory  Every LP problem (called the ‘Primal’) has associated with another problem called the ‘Dual’.  The ‘Dual’ problem is an LP defined directly.
Department Of Industrial Engineering Duality And Sensitivity Analysis presented by: Taha Ben Omar Supervisor: Prof. Dr. Sahand Daneshvar.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 10: February 18, 2015 Architecture Synthesis (Provisioning, Allocation)
Chapter 6 Linear Programming: The Simplex Method Section 3 The Dual Problem: Minimization with Problem Constraints of the Form ≥
Linear Programming Erasmus Mobility Program (24Apr2012) Pollack Mihály Engineering Faculty (PMMK) University of Pécs João Miranda
EE 685 presentation Optimization Flow Control, I: Basic Algorithm and Convergence By Steven Low and David Lapsley.
Network Optimization Network optimization models: Special cases of linear programming models Important to identify problems that can be modeled as networks.
Improving Voltage Assignment by Outlier Detection and Incremental Placement Huaizhi Wu* and Martin D.F. Wong** * Atoptech, Inc. ** University of Illinois.
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
1 Slides by Yong Liu 1, Deep Medhi 2, and Michał Pióro 3 1 Polytechnic University, New York, USA 2 University of Missouri-Kansas City, USA 3 Warsaw University.
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or.
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
The minimum cost flow problem. Solving the minimum cost flow problem.
An O(bn 2 ) Time Algorithm for Optimal Buffer Insertion with b Buffer Types Authors: Zhuo Li and Weiping Shi Presenter: Sunil Khatri Department of Electrical.
Approximation Algorithms Duality My T. UF.
Weingartner’s Horizon Model. Primal Model Description.
Retiming EECS 290A Sequential Logic Synthesis and Verification.
The number of procedures by type and data about rev/costs. The summary section, includes a change area, which shows the difference between the current.
The minimum cost flow problem
Chap 9. General LP problems: Duality and Infeasibility
The Simplex Method: Standard Minimization Problems
Introduction Basic formulations Applications
Lecture 19-Problem Solving 4 Incremental Method
Out-of-Kilter Algorithm
Constraints.
Presentation transcript:

© KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth Choudhuri, Majid Sarrafzadeh 1

© KLMH Lienig EECS 527 Paper Presentation  Outlines  Introduction  Problem formulation  Solution and algorithm Equivalent formulations Optimal algorithm  Extension to other budget policies Weighted budget distribution Bounded budget distribution Min-Max budget distribution  Experimental results  Q & A 2

© KLMH Lienig  Timing budgeting versus Path-based placement  Delay and placement dilemma  Efficiency and performance  Previous solutions  Zero slack algorithm 3 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 4  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget] I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [0] [0] [0] [0] [0] [0] [0] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 5  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [0] [0] [0] [0] [0] [0] [0] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 6  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1][1] [0] <4,0,4><4,0,4> [1][1] <9,0,9><9,0,9> [1][1] [0] [0] [0] [1][1] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 7  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2][2] [1] [1] [0] [0] [0] [1] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 8  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [2][2] [0] [2][2] [1] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 9  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3][3] [0] <7,0,7><7,0,7> [3][3] [1] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 10  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3] [1][1] [3] [1] [4][4] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 11  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3] [1] [3] [1] [4][4] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  DAG G(V,E) model the delay for nodes  Goal:  Maximize where b denotes the budget on edge e ij. 12 Problem Formulation  Formulation by linear programming model  (1)  (2)  (3)  d ij is the delay and b ij is the budget  T is the timing constraint, largest delay Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Linear Programming Example 13 Problem Formulation Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig 14 Problem Formulation  Formulation by linear programming model  (1)  (2)  (3)  d ij is the delay and b ij is the budget  T is the timing constraint, largest delay  r ij is defined to be the required timing constraint   Define flow supply: Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Basic idea: Maximize the budgets, transform the problem 15 Solution and Algorithm Dual Problem Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Duality 16 Solution and Algorithm Dual Problem Primal (Maximize)Dual (Minimize) i th constraint ≤i th variable ≥ 0 i th constraint ≥i th variable ≤ 0 i th constraint =i th variable unrestricted j th variable ≥ 0j th constraint ≥ j th variable ≤ 0 j th constraint ≤ j th variable unrestrictedj th constraint = Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Duality example  Constaint  Variable  Variable  Constraint 17 Solution and Algorithm Primal: Max z = 2x 1 +x 2, x 1 +x 2 ≤ 4, x 1 -x 2 ≤ 2, x 1 ≥ 0, x 2 ≥ 0. Dual: Min v = 4y 1 +2y 2, y 1 +y 2 ≥ 2, y 1 -y 2 ≥ 1, x 1 ≥ 0, x 2 ≥ 0. Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results Primal (Maximize)Dual (Minimize) i th constraint ≤i th variable ≥ 0 i th constraint ≥i th variable ≤ 0 i th constraint =i th variable unrestricted j th variable ≥ 0j th constraint ≥ j th variable ≤ 0 j th constraint ≤ j th variable unrestrictedj th constraint =

© KLMH Lienig  Min-cost flow problem 18 Solution and Algorithm Source: Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig 19 Solution and Algorithm Source: Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results  Min-cost flow problem

© KLMH Lienig  Example 20 Solution and Algorithm Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Algorithm summary 21 Solution and Algorithm Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Weighted budget distribution  Introduce the weight for different net  22 Extension to other budget policies  Solution: define new to transform again Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Bounded budget distribution  Upper bound is applied to the delay of edge  23 Extension to other budget policies  Solution: define backward flow Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Bounded budget distribution  Example:  nodes a and e --- upper bound =3  Rest of nodes –- upper bound = 4 24 Extension to other budget policies Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Min-Max budget distribution  Goal: minimizing the maximum budget minimize the budget skew  Solution: binary search on the budget upper bounds 25 Extension to other budget policies Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Environment  Xilinx synthesis Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Result 27 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Result  Area and runtime  Improve Slice 25.8% on average  Improve LUT counts 28.7% on average 28 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Q&A 29