This takes Jacobi Iteration for Laplace's Equation in a 2D square and uses this to illustrate: |
Programming in both Data Parallel (HPF) and Message Passing (MPI and a simplified Syntax) |
SPMD -- Single Program Multiple Data -- Programming Model |
Stencil dependence of Parallel Program and use of Guard Rings |
Collective Communication |
Basic Speed Up, Efficiency and Performance Analysis with edge over area dependence and consideration of load imbalance and communication overhead effect |
001 Parallel Programming for Laplace's Equation 002 Abstract of Parallel Programming for Laplace's Equation 003 Potential in a Vacuum Filled Rectangular Box 004 Basic Sequential Algorithm 005 Update on the Grid 006 Parallelism is Straightforward 007 Communication is Needed 008 Communication Must be Reduced 009 Various Styles/Terms in Messaging Passing I 010 Various Styles/Terms in Messaging Passing II 011 Approaches to Parallel Programming 012 Sequential Programming with Guard Rings 013 Sequential Guard Rings in Two Dimensions 014 Parallel Guard Rings in One Dimension 015 Summary of Parallel Guard Rings in One Dimension 016 Setup of Parallel Jacobi in One Dimension 017 Performance Analysis Parameters 018 Analytical analysis of Load Imbalance 019 Example of Communication Overhead 020 General Analytical Form of Communication Overhead for Jacobi 021 General Speed Up and Efficiency Analysis I 022 General Speed Up and Efficiency Analysis II 023 Communication to Calculation Ratio as a function of template I 024 Communication to Calculation Ratio as a function of template II 025 Communication to Calculation Ratio as a function of template III 026 Communication to Calculation IV 027 Communication to Calculation V 028 Parallel Guard Rings in Two Dimensions I 029 Parallel Guard Rings in Two Dimensions II 030 Parallel Guard Rings in Two Dimensions III