skip to main content
10.1145/1121341.1121487acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
Article

A template library to facilitate teaching message passing parallel computing

Published:03 March 2006Publication History

ABSTRACT

This paper discusses a template-based approach to aid in introducing the upper-division undergraduate (or first year graduate) to the rapidly emerging message passing parallel computing paradigm. Our template library facilitates an accelerated MPI programming learning environment that can realistically be included as one topic among many in an algorithms course. One template module is based on a backtracking solution to the satisfiablity problem (SAT), which the student first solves in the sequential setting. With the aid of a modified template, the student then develops a simple parallel SAT solver. The template includes such things as I/O functions, allowing the student to focus on the algorithm itself. The parallel part is partially provided by the template, with indicators given in places where the student needs to plug in missing MPI function calls. The students are excited about this hands-on-experience in the increasingly important world of message passing parallel computing, which might be missed if their curriculum does not include a course devoted to this topic.

References

  1. Berman K. A. and Paul J. L., Algorithms: Sequential, Parallel and Distributed, Thomson Course Technology, 2005.Google ScholarGoogle Scholar
  2. Davis, M., Logemann, G., Loveland, D.: A Machine Program for Theorem Proving. Communications of the Association of Computing Machinery 5 (1962) 394--397. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Kouril, M. and Paul, J.L., A Parallel Backtracking Framework (BkFr) for Single and Multiple Clusters. Conf. Computing Frontiers, ACM Press, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Neal, L. R. A system for example-based programming. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems: Wings For the Mind K. Bice and C. Lewis, Eds. CHI '89. ACM Press, New York, NY, 63--68. 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Message Passing Interface Forum: MPI: A Message-Passing Interface Standard. International Journal of Supercomputer Applications, 8(3/4), 1994. Special issue on MPI.Google ScholarGoogle Scholar
  6. Quinn M. J., Parallel Programming in C with MPI and OpenMP, McGraw-Hill Science/Engineering/Math, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Pacheco P., Parallel Programming with MPI, Morgan Kaufmann, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Silverstein D.L., Template Based Programming in Chemical Engineering Courses, American Society for Engineering Education, 2001.Google ScholarGoogle Scholar
  9. Truong N., Roe P. and Bancroft P.: Automated Feedback for "Fill in the Gap" Programming Exercises, Australasian Computing Education Conference (2005) 117--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Uniform Random-3-SAT, http://www.intellektik.informatik. tu-darmstadt.de/SATLIB/Benchmarks/SAT/RND3SAT/descr.html.Google ScholarGoogle Scholar

Index Terms

  1. A template library to facilitate teaching message passing parallel computing

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!