170 likes | 333 Views
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?.
E N D
MPICH2 for WindowsParallelism on (LCS) Longest Common Subsequence Tu Tran Tao Shen Thomas Hardinger
The Final Report • MPICH2 on Windows • Microsoft Visual C++ • LCS • Filediff
MPICH2 on Windows – Why? Some surveys say 90% of the World uses windows. Some say 80% Some say “Nobody really Knows!”
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.
The Algorithm– LCS Why? • Longest Common Subsequence LCS
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
Setup and Implementation • 2 Lap Tops and 1 Desk Top • Total of 5 processors running Parallel!
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)
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
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.
Option C, Analysis (cont) k speedup= t - ∑ b * k / n k=1..(n-1) n/2 Max
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.