ON IMPLEMENTING THE FARM SKELETON
Abstract
Algorithmic skeletons intend to simplify parallel programming by providing a higher level of abstraction compared to the usual message passing. Task and data parallel skeletons can be distinguished. In the present paper, we will consider several approaches to implement one of the most classical task parallel skeletons, namely the farm, and compare them w.r.t. scalability, overhead, potential bottlenecks, and load balancing. We will also investigate several communication modes for the implementation of skeletons. Based on experimental results, the advantages and disadvantages of the different approaches are shown. Moreover, we will show how to terminate the system of processes properly.
References
E. Alba , MALLBA: A Library of Skeletons for Combinatorial Search, Proc. Euro-Par 2002,LNCS (Springer, 2002) pp. 927–932. Google ScholarG. H. Botorog and H. Kuchen , Efficient Parallel Programming with Algorithmic Skeletons, Proc. Euro-Par'96,LNCS (Springer, 1996) pp. 718–731. Google Scholar- Theoretical Computer Science 196, 71 (1998), DOI: 10.1016/S0304-3975(97)00196-5. Crossref, ISI, Google Scholar
-
M. Cole , Algorithmic Skeletons: Structured Management of Parallel Computation ( MIT Press , 1989 ) . Google Scholar - Parallel Computing 30(3), 389 (2004), DOI: 10.1016/j.parco.2003.12.002. Crossref, ISI, Google Scholar
- M. Cole, The Skeletal Parallelism Web Page, http://homepages.inf.ed.ac.uk/mic/Skeletons/ . Google Scholar
J. Darlington , Parallel Programming Using Skeleton Functions, Proc. PARLE'93,LNCS (Springer, 1993) pp. 146–160. Google ScholarJ. Darlington , Functional Skeletons for Parallel Coordination, Proc. Euro-Par'95,LNCS (Springer, 1995) pp. 55–66. Google Scholar- Scientific Programming 1(1), 51 (1992). Crossref, Google Scholar
-
W. Gropp , E. Lusk and A. Skjellum , Using MPI ( MIT Press , 1999 ) . Google Scholar - Parallel Processing Letters 12(2), 141 (2002), DOI: 10.1142/S0129626402000896. Link, Google Scholar
H. Kuchen , R. Plasmeijer and H. Stoltze , Efficient Distributed Memory Implementation of a Data Parallel Functional Language, Proc. PARLE'94,LNCS (Springer, 1994) pp. 466–475. Google ScholarH. Kuchen and J. Striegnitz , Higher-Order Functions and Partial Applications for a C + + Skeleton Library, Proc. Joint ACM Java Grande & ISCOPE Conference (ACM, 2002) pp. 122–130. Google ScholarH. Kuchen , A Skeleton Library, Euro-Par'02,LNCS (Springer, 2002) pp. 620–629. Google ScholarH. Kuchen , Domain-Specific Program Generation,LNCS (Springer, 2004) pp. 254–273. Crossref, Google Scholar- H. Kuchen, The Skeleton Library Web Pages. http://www.wi.uni-muenster.de/PI/forschung/Skeletons/ . Google Scholar
- Message Passing Interface Forum, MPI: A Message-Passing Interface Standard http://www.mpi-forum.org/docs/mpi-ll-html/mpi-report.html . Google Scholar
- Myricom, The Myricom Homepage, http://www.myri.com/ . Google Scholar
- , Patterns and Skeletons for Parallel and Distributed Computing, eds.
F. A. Rabhi and S. Gorlatch (Springer, 2003) pp. 155–186. Crossref, Google Scholar -
D. Skillicorn , Foundations of Parallel Programming ( Cambridge U. Press , 1994 ) . Crossref, Google Scholar - J. Striegnitz, Making C++ Ready for Algorithmic Skeletons, Tech. Report IB-2000- 08, http://www.fz-juelich.de/zam/docs/autoren/striegnitz.html . Google Scholar
- ZIV-Cluster, http://zivcluster.uni-muenster.de/ . Google Scholar


