course #: csi 441/541 high perf sci comp iigilder/lectures/2010-s/gaussian.pdf · 2010. 4. 19. ·...

16
High Performance Computing Course #: CSI 441/541 High Perf Sci Comp II Spring ‘10 Mark R. Gilder Email: [email protected] [email protected]

Upload: others

Post on 08-Feb-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

  • High Performance Computing

    Course #: CSI 441/541

    High Perf Sci Comp II

    Spring ‘10

    Mark R. Gilder

    Email: [email protected] [email protected]

    mailto:[email protected]:[email protected]

  • CSI 441/541

    This course investigates the latest trends in high-performance computing (HPC) evolution and examines key issues in developing algorithms capable of exploiting these architectures.

    Grading: Your grade in the course will be based on completion of assignments (40%), course project (35%), class presentation(15%), class participation (10%).

    Course Goals

    Understanding of the latest trends in HPC architecture evolution,

    Appreciation for the complexities in efficiently mapping algorithms onto HPC architectures,

    Hands-on experience in design and implementation of algorithms for both shared & distributed memory parallel architectures using MPI,

    Experience in evaluating performance of parallel programs.

    Mark R. Gilder 2 CSI 441/541 – SUNY Albany Spring '10

  • Grades

    40% Homework assignments

    35% Final project

    15% Class presentations

    10% Class participation

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10 3

  • Project

    Topic of general interest to the course

    Read three or four papers to get some

    ideas of latest research in HPC field

    Identify an application that can be

    implemented on our RIT cluster

    Implement and write a final report

    describing your application and results

    Present your results in class

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10 4

  • Numerical Methods

    Gaussian Elimination,

    LU Decomposition

  • Gaussian Elimination

    LU Decomposition

    6 Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • Gaussian Elimination

    LU Decomposition

    7

    One way of solving a system of equations is using the Gauss-Jordan method (variation of Gaussian Elimination).

    Another way of solving a system of equations is by using a factorization technique for matrices called LU decomposition. This factorization is involves two matrices, one lower triangular matrix and one upper triangular matrix.

    First we explain how to find an LU decomposition.

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 8

    When finding an LU Decomposition:

    1. Row swapping is not allowed. If you swap rows, then an LU decomposition will not exist.

    2. It is not necessary to get leading ones on the main diagonal when using Gaussian Elimination. In some matrices, however, it is recommended to get leading ones to use nice row operations.

    3. When using Gaussian Elimination to find such an LU decomposition, record all row operations involved. The row operations will help find the lower triangular matrix using the identity matrix.

    4. An LU decomposition is not unique. There can be more than one such LU decomposition for a matrix.

    Gaussian Elimination

    LU Decomposition

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 9

    To get the matrix U, just use row operations until an upper triangular matrix is formed.

    To get L, start with the idenity matrix and use the following rules: ◦ Any row operations that involves adding a multiple of one

    row to another, for example, Ri + kRj, put the value –k in the ith-row, jth-column of the identity matrix.

    ◦ Any row operations that involves getting a leading one on the main diagonal, for example, kRi, put the value 1/k in the position of the identity matrix where the leading one occurs.

    Gaussian Elimination

    LU Decomposition

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 10

    Find an LU decomposition of the following:

    1. Use Gaussian Elimination to get the upper triangular matrix U:

    Gaussian Elimination

    LU Decomposition - Example

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 11

    2. Form the lower triangular matrix L by using the rules mentioned above for the row operations involved to get U.

    Gaussian Elimination

    LU Decomposition - Example

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 12

    Gaussian Elimination

    LU Decomposition - Example

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 13

    • Thus an LU Decomposition is given by:

    A L U = *

    Gaussian Elimination

    LU Decomposition - Example

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 14

    Next we show how an LU decomposition can be used to solve a system of equations:

    Steps to solve a system using an LU decomposition:

    1. Set up the equation Ax = b

    2. Find an LU decomposition for A. This will yield the equation (LU)x = b

    3. Let y = Ux. Then solve the equation Ly = b for y.

    4. Take the values for y and solve the equation y = Ux for x. This will give the solution to the system Ax = b.

    Gaussian Elimination

    LU Decomposition

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • 15

    • Solve the following system using an LU decomposition:

    Gaussian Elimination

    LU Decomposition - Example

    Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10

  • Gaussian Elimination - Example

    16 Mark R. Gilder CSI 441/541 – SUNY Albany Spring '10