Cornell Theory Center


Presentation:
Tariff Case Study Part 2, MPI Implementation

10/98

This is the presentation layer of a two-part module. For an explanation of the layers and how to navigate within and between them, return to the top page of this module.


  1. Introduction
  2. Parallel Issues
  3. MPI Implementation
  4. References Lab Exercise Evaluation

    [Table of Contents] [Section 1] [Section 2] [Section 3] [More Detail]


    1. Introduction

    [Table of Contents] [Section 1] [Section 2] [Section 3] [More Detail]


    2. Parallel Issues

    2.1 Problem Partition


    2.2 Data Partition

    Figure 2. Data partition


    2.3 Communication


    2.4 Load Balance


    2.4.1 Balancing the Data Partition

    Figure 2. Graphical View of the Data Partition


    2.4.1 Balancing the Data Partition

    Figure 3. Pseudo-code for the Data Partition
    !         number of columns per processor
    chunk = ndemm / total_processors
    !         number of columns "left over"
    extra = mod( ndemm, total_processors )

    !         skip past data assigned to lower
    !         ranked processors, including "extra"
    lower = chunk * rank + 1 + min( extra, rank )

    !         "extra" processors get 1 more column
    if( rank .lt. extra ) then
        upper = lower + chunk
    else
        upper = lower + chunk - 1
    endif


    2.5 Performance

    [Table of Contents] [Section 1] [Section 2] [Section 3] [More Detail]


    3. Implementation

    3.1 MPI Calls Needed


    3.2 Changes to the Program


    3.3 Parallel I/O


    3.4 Performance


    Figure 4. Wallclock Time in Seconds
    Number of Processors


    Speedup:

    Figure 5. Speedup over Serial Program
    Number of Processors


    Efficiency:

    Figure 5. Efficiency of Processor Use
    Number of Processors


    3.5 Conclusions

    [Table of Contents] [Section 1] [Section 2] [Section 3] [More Detail]


    References

    Franke, H., Wu, C.E., Riviere, M., Pattnaik, P. and Snir, M. (1995) MPI Programming Environment for IBM SP1/SP2. Proceedings of ICDCS 95, Vancouver, 1995. Available in postscript, at http://www.tc.cornell.edu/UserDoc/Software/PTools/mpi

    Gropp, W., Lusk, E. and Skjellum, A. (1994) Using MPI. Portable Parallel Programming with the Message-Passing Interface. The MIT Press. Cambridge, Massachusetts.

    Message Passing Interface Forum (1995) MPI: A Message Passing Interface Standard. June 12, 1995. Available in postscript at http://www.epm.ornl.gov/~walker/mpi


    [Exercise] Tariff Case Study Part 2: MPI Version Lab

    [Evaluation] Please complete this short evaluation form. Thank you!


    [CTC Home Page] [Search] [Education]
    [Copyright Statement] [Feedback] [Resources]

    URL http://www.tc.cornell.edu/Edu/Talks/Tariff.Case.Study/Part2/less.html