1 / 17

MPICH2 for Windows Parallelism on (LCS) Longest Common Subsequence

MPICH2 for Windows Parallelism on (LCS) Longest Common Subsequence. T u Tran T ao Shen T homas Hardinger. The Final Report. MPICH2 on Windows Microsoft Visual C++ LCS Filediff. MPICH2 on Windows – Why?.

matilda
Download Presentation

MPICH2 for Windows Parallelism on (LCS) Longest Common Subsequence

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MPICH2 for WindowsParallelism on (LCS) Longest Common Subsequence Tu Tran Tao Shen Thomas Hardinger

  2. The Final Report • MPICH2 on Windows • Microsoft Visual C++ • LCS • Filediff

  3. MPICH2 on Windows – Why? Some surveys say 90% of the World uses windows. Some say 80% Some say “Nobody really Knows!”

  4. MS Visual C++ Express Edition – Why? • C++ is a Modern Object Oriented Language • MS C++ was Free to download • Express Edition 2008 has all the necessary tool to write, debug, test, and compile parallel programs.

  5. The Algorithm– LCS Why? • Longest Common Subsequence LCS

  6. The Application – Filediff Why? • Filediff is a practical application of the Algorithm LCS • The C++ source code was available • Running this application on parallel computers was a challenge • Benefits from parallelism desirable • Results could be measured

  7. Setup and Implementation • 2 Lap Tops and 1 Desk Top • Total of 5 processors running Parallel!

  8. Components of the Algorithm • Part 1. Reading the files (2n times) • Part 2. Comparing the files ( n2 k execution) • Part 3. Printing the Difference (n execution) 2n + 100 * n2 + n Θ(n) + 100 n2 + Θ(n)

  9. Option B, Analysis • First is to populate the matrix with only the equivalency data – 1 for equal, 0 for not equal. • Second, traversing the same matrix, we establish the LCS length. Θ(n) + n2 + 0.01 * n2 + Θ(n) Speedup = 1 / (.99 / P) + 0.01 100 Max

  10. Option C, Analysis • Each processor will be assigned a row index of i . • If done with column j, send notification down • P0 will not need to wait for notification. Pn will not need to send nofication.

  11. Option C, Analysis (cont) k speedup= t - ∑ b * k / n k=1..(n-1) n/2 Max

  12. From Scratch to Finish

  13. Binary Matrix Performance Data

  14. Anti-Diagonal Performance Data

  15. Binary Matrix Speed Up

  16. Anti-Diagonal Speed Up

  17. Analysis & Conclusions • Only suitable for sizable computations; • Both Binary Matrix and Anti Diagonal Options shows significant performance speed up; • The Anti Diagonal Option has less computation time and better computing potential.

More Related