LooPo-HOC: A Grid Component with Embedded Loop Parallelization
This work integrates two distinct research areas of parallel and distributed computing, (1) automatic loop parallelization, and (2) component-based Grid programming. The latter includes technologies developed within CoreGRID for simplifying Grid programming: the Grid ComponentModel (GCM) and Higher- Order Components (HOCs). Components support developing applications on the Grid without taking all the technical details of the particular platform type into account (network communication, heterogeneity, etc.). The GCMenables a hierarchical composition of programpieces and HOCs enable the reuse of component code in the development of new applications by specifying application-specific operations in a program via code parameters. When a programmer is provided, e. g., with a compute farm HOC, only the independent worker tasks must be described. But, once an application exhibits data or control dependences, the trivial farm is no longer sufficient. Here, the power of loop parallelization tools, like LooPo, comes into play: by embedding LooPo into a HOC, we show that these two technologies in combination facilitate the automatic transformation of a sequential loop nest with complex dependences (supplied by the user as a HOC parameter) into an ordered task graph, which can be processed on the Grid in parallel. This technique can significantly simplify GCM-based systems which combine multiple HOCs and other components. We use an equation system solver based on the successive overrelaxation method (SOR) as our motivating application example and for performance experiments.
KeywordsHigher-Order Components (HOCs) Loop Parallelization GCM Grid Programming
Unable to display preview. Download preview PDF.
- Institut National de Recherche en Informatique (INRIA), The Fractal Web Site, 2007. http://fractal.objectweb.org.
- Marco Danelutto, Task Farm Computations in Java, International Conference on HighPerformance Computing and Networking, Amsterdam, NL, 2000, pp. 385-394.Google Scholar
- INRIA, The ProActive Web Site, 2007. http://www-sop.inria.fr/oasis/ProActive.
- 1994-2007 Sun Microsystems, The JavaSpaces Specification. www.sun.com/software/jini.
- Eduardo Argollo, Michael Claßen, Philipp Claßen, and Martin Griebl, Loop Parallelization for a Grid Master-Worker Framework, CG Integration Workshop Heraklion, Greece, 2007, pp. 516-527.Google Scholar
- Yousef Saad, Iterative Methods for Sparse Linear Systems, SIAM U.S.A., 2003.Google Scholar
- University of Passau, The Polyhedral Loop Parallelizer: LooPo, 1997. http://www.infosun.fim.uni-passau.de/cl/loopo.
- Michael Klemm, Matthias Bezold, Ronald Veldema, and Michael Philippsen, Repar- allelization and Migration of OpenMP Programs, International Symposium on Cluster Computing and the Grid, Rio de Janeiro, Brazil, 2007, pp. 529-540.Google Scholar
- James Clark and Steve DeRose, XML Path Language, W3C Recommendations, 1999- 2007.Google Scholar
- Ian Foster, Globus Toolkit Version 4: Software for Service-Oriented Systems, International Conference on Network and Parallel Computing, 2006, pp. 2-13.Google Scholar
- C ăt ălin L. Dumitrescu, Dick H.J. Epema, Jan D ünnweber, and Sergei Gorlatch, User- transparant Scheduling of Structured Parallel Applications in Grid Environments, Work- shop on Grid programming Environments and Components, Paris, France, 2006, pp. 85-92.Google Scholar
- C ăt ălin L. Dumitrescu, Jan D ünnweber, Philipp L üdeking, Sergei Gorlatch, Ioan Raicu, and Ian Foster, Simplifying Grid Application Programming Using Web-enabled Code Transfer Tools, in Toward Next Generation Grids, Springer 2007, pp. 225-235.Google Scholar
- [13.] Jan D ünnweber, Sergei Gorlatch, Martin Griebl, Eduardo Argollo, and Christian Lengauer, Making a Task Farm Component Parallelize Loops for the Grid, CG Integration Workshop (CYFRONET), 2006, pp. 93-104.Google Scholar
- William Hoarau, S ébastien Tixeuil, Nuno Rodrigues, D écio Sousa, and Luis Silva, Bench-marking the OGSA-DAI Middleware, CG Integration Workshop (CYFRONET), 2006, pp. 357-368.Google Scholar
- Jan D ünnweber, Philipp L üdeking, C ǎt ǎlin L. Dumitrescu, Eduardo Ar- gollo, and Sergei Gorlatch, The HOC-SA Globus Incubator Project, 2006. http://dev.globus.org/incubator/hoc-sa.
- CoreGRID Network of Excellence www.coregrid.net, Basic Features of the Grid Com-ponent Model (GCM), Technical Report D.PM.04, Institute on Component-based Programming, 2005.
- Sergei Gorlatch and Jan D ünnweber, From Grid Middleware to Grid Applications: Bridg- ing the Gap with HOCs, in Future Generation Grids, Springer Verlag, 2005, pp. 241-261.Google Scholar
- Martin Griebl, Peter Faber, and Christian Lengauer, Space-time Mapping and Tiling – A Helpful Combination, Concurrency and Computation: Practice and Experience 16 (March 2004), no. 3, 221-246.Google Scholar
- Jarek Gawor, Ian Foster, and Stephen Pickles et al., State and Events for Web Services, Intl’ Conference on High-Performance and Distributed Computing, 2005, pp. 3-13.Google Scholar
- Christian Lengauer, Loop Parallelization in the Polytope Model, CONCUR, 1993, pp. 398-416.Google Scholar
- Object Management Group, The Corba Component Model, 1997. http://www.omg.org.
- C. Szyperski, Component Software: Beyond Object-Oriented Programming, Addison We- seley, 1998.Google Scholar
- The CCA Forum, CCA Glossary. http://www.cca-forum.org/glossary.
- European Research Network on Foundations, Software Infrastructures and Applica- tions for large scale distributed, GRID and Peer-to-Peer Technologies, CoreGRID. http://www.coregrid.net.
- UK Grid Database Task Force, OGSA Data Access and Integration. http://www.ogsadai.org.