Parallelized Analytic Placer

Slides:



Advertisements
Similar presentations
Copyright © Cengage Learning. All rights reserved.
Advertisements

CSCI-455/552 Introduction to High Performance Computing Lecture 25.
Linear Algebra Applications in Matlab ME 303. Special Characters and Matlab Functions.
Scientific Computing Linear Systems – Gaussian Elimination.
Lecture 7 Intersection of Hyperplanes and Matrix Inverse Shang-Hua Teng.
Lecture 9: Introduction to Matrix Inversion Gaussian Elimination Sections 2.4, 2.5, 2.6 Sections 2.2.3, 2.3.
Table of Contents Solving Linear Systems of Equations - Triangular Form Consider the following system of equations... The system is easily solved by starting.
Numerical Algorithms Matrix multiplication
Lecture 6 Matrix Operations and Gaussian Elimination for Solving Linear Systems Shang-Hua Teng.
P1 RJM 07/08/02EG1C2 Engineering Maths: Matrix Algebra 5 Solving Linear Equations Given the equations 3x + 4y = 10 2x + z = 7 y + 2z = 7 Solve by removing.
Solving Systems of Linear Equations Part Pivot a Matrix 2. Gaussian Elimination Method 3. Infinitely Many Solutions 4. Inconsistent System 5. Geometric.
Matrices. Special Matrices Matrix Addition and Subtraction Example.
ECIV 301 Programming & Graphics Numerical Methods for Engineers Lecture 17 Solution of Systems of Equations.
1/26 Design of parallel algorithms Linear equations Jari Porras.
ECIV 301 Programming & Graphics Numerical Methods for Engineers Lecture 15 Solution of Systems of Equations.
Linear Systems and Matrices
Math for CSLecture 21 Solution of Linear Systems of Equations Consistency Rank Geometric Interpretation Gaussian Elimination Lecture 2. Contents.
10.1 Gaussian Elimination Method
2. Linear Equations Objectives: 1.Introduction to Gaussian Elimination. 2. Using multiple row operations. 3. Exercise - let’s see if you can do it. Refs:
Table of Contents Solving Systems of Linear Equations - Gaussian Elimination The method of solving a linear system of equations by Gaussian Elimination.
Matrices Write and Augmented Matrix of a system of Linear Equations Write the system from the augmented matrix Solve Systems of Linear Equations using.
Assignment Solving System of Linear Equations Using MPI Phạm Trần Vũ.
8.1 Matrix Solutions to Linear Systems Veronica Fangzhu Xing 3 rd period.
Scientific Computing Linear Systems – LU Factorization.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Copyright © Cengage Learning. All rights reserved. 7.4 Matrices and Systems of Equations.
Sec 3.1 Introduction to Linear System Sec 3.2 Matrices and Gaussian Elemination The graph is a line in xy-plane The graph is a line in xyz-plane.
Math 201 for Management Students
MA2213 Lecture 5 Linear Equations (Direct Solvers)
1.1.2 INTRODUCTION TO SYSTEMS OF LINEAR EQUATIONS Chapter 1: Systems of Linear Equations and Matrices SWBAT: Redefine algebraic operations as Elementary.
Using LU Decomposition to Optimize the modconcen.m Routine Matt Tornowske April 1, 2002.
MATH 250 Linear Equations and Matrices
Sec 3.2 Matrices and Gaussian Elemination Coefficient Matrix 3 x 3 Coefficient Matrix 3 x 3 Augmented Coefficient Matrix 3 x 4 Augmented Coefficient Matrix.
Matrix Solutions to Linear Systems. 1. Write the augmented matrix for each system of linear equations.
Using Matrices A matrix is a rectangular array that can help us to streamline the solving of a system of equations The order of this matrix is 2 × 3 If.
MATH 175: Numerical Analysis II Lecturer: Jomar Fajardo Rabajante 2 nd Sem AY IMSP, UPLB.
Yasser F. O. Mohammad Assiut University Egypt. Previously in NM Introduction to NM Solving single equation System of Linear Equations Vectors and Matrices.
ΑΡΙΘΜΗΤΙΚΕΣ ΜΕΘΟΔΟΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ 4. Αριθμητική Επίλυση Συστημάτων Γραμμικών Εξισώσεων Gaussian elimination Gauss - Jordan 1.
MCV4U1 Matrices and Gaussian Elimination Matrix: A rectangular array (Rows x Columns) of real numbers. Examples: (3 x 3 Matrix) (3 x 2 Matrix) (2 x 2 Matrix)
Matrices and Systems of Equations
Matrices and Systems of Linear Equations
Hello Mr. Anderson… We’ve been waiting for you.. Hello Mr. Anderson… We’ve been waiting for you.
Matrices and Systems of Equations
Meeting 19 System of Linear Equations. Linear Equations A solution of a linear equation in n variables is a sequence of n real numbers s 1, s 2,..., s.
Direct Methods for Linear Systems Lecture 3 Alessandra Nardi Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen Veroy.
7.3 & 7.4 – MATRICES AND SYSTEMS OF EQUATIONS. I N THIS SECTION, YOU WILL LEARN TO  Write a matrix and identify its order  Perform elementary row operations.
Slide Copyright © 2009 Pearson Education, Inc. 7.4 Solving Systems of Equations by Using Matrices.
Chapter 5: Matrices and Determinants Section 5.5: Augmented Matrix Solutions.
Unit #1 Linear Systems Fall Dr. Jehad Al Dallal.
4: Sets of linear equations 4.1 Introduction In this course we will usually be dealing with n equations in n unknowns If we have just two unknowns x and.
Lecture 9 Numerical Analysis. Solution of Linear System of Equations Chapter 3.
Multivariable Linear Systems and Row Operations
Chapter 7: Systems of Equations and Inequalities; Matrices
Section 6.1 Systems of Linear Equations
Copyright © 2014, 2010, 2007 Pearson Education, Inc.
Gaussian Elimination and Gauss-Jordan Elimination
PIVOTING The pivot or pivot element is the element of a matrix, or an array, which is selected first by an algorithm (e.g. Gaussian elimination, simplex.
Spring Dr. Jehad Al Dallal
Chapter 8: Lesson 8.1 Matrices & Systems of Equations
Chapter 10: Solving Linear Systems of Equations
Programming #4 Computer Problems
8.1 Matrices and System of Linear Equations
Matrix Solutions to Linear Systems
Numerical Analysis Lecture14.
RECORD. RECORD COLLABORATE: Discuss: Is the statement below correct? Try a 2x2 example.
Numerical Analysis Lecture10.
Gaussian Elimination.
4.8 Pivoting Implementing Gaussian Elimination computationally can lead to problems Happens if the element used to create zeros is small relative to other.
Suppose we want to solve this system of equations:
Ax = b Methods for Solution of the System of Equations (ReCap):
Presentation transcript:

Parallelized Analytic Placer Bryce Leung, Jungmoo Oh, David Goldman

Introduction Analytic Placement is a CAD algorithm for ASIC placement Takes arbitrary circuit netlist and finds physical location of each element Attempt to minimize wire-length, maximize performance

Introduction Each block treated as a physical element Each interconnect treated as a spring that exerts force

Introduction Algorithm creates a set of force equations for each node

Introduction Steady state location found when net forces are 0 Creates a system of linear equations Solving X matrix gives position of all elements

Introduction

Parallelization Uses Gaussian Elimination to compute X and Y coordinate matrices Gaussian Elimination is composed of two stages, and each stage is parallelized independently Upper-Triangular Reduction Back-Substitution

Parallelizing Upper-Triangular Reduction Perform row elimination on entire bottom right corner of the pivot at once Iterate only number of row times Reduced the number of threads spawned by ignoring left side of pivot Augmented A, xB and yB matrices The same row operation is performed on all three matrices Reduced number of row elimination calls

Parallelizing Back-Substitution Improved efficiency by decoupling dependency between rows Original (serial) algorithm computes final result for one row by another Compute partial results for entire rows at once for efficiency Minimized the number of threads spawned by ignoring zero columns

Measurements(First Cut)

Measurements (First Cut)

No row swaps necessary Row swapping only required if pivot entry is missing This only happens if net-lists form a disjoint subgraph This never happens, so row swapping unnecessary

Measurements (No row swapping)

Measurements (No row swapping)

Future Work Further coalesce global memory accesses Access patterns already fairly coalesced Take advantage of shared memory Possibly caching pivot value