Skip to main content

Skeleton Composition Using Remote Data

  • Conference paper
Practical Aspects of Declarative Languages (PADL 2010)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5937))

Included in the following conference series:

Abstract

Skeletons simplify parallel programming by providing general patterns of parallel computations. When several skeletons are used inside the same program, skeleton composition usually leads to aggregation and redistribution of the intermediate data on a single process. Though the programmer can overcome the performance loss at a lower level of abstraction by altering the existing skeletons or not using them at all. A high-level concept like skeleton-based programming, however, calls for a more general solution.

Remote data provides runtime mechanisms that allow declaratively specified processes to access other processes’ data via remote handles. This enables the programmer to easily build complex skeletons by combining simpler ones. Skeletons can be composed without the drawback of collecting and then redistributing the data in between two skeleton instances. Another advantage is that skeletons which inherently depend on their inner communication patterns are easily implemented using remote data. We present the implementation of remote data in the parallel functional language Eden and show the definition of some example skeletons with a remote data interface.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Alt, M.: Using Algorithmic Skeletons for Efficient Grid Computing with Predictable Performance. PhD thesis, Universität Münster (July 2007)

    Google Scholar 

  2. Alt, M., Gorlatch, S.: Future-Based RMI: Optimizing compositions of remote method calls on the Grid. In: Kosch, H., Böszörményi, L., Hellwagner, H. (eds.) Euro-Par 2003. LNCS, vol. 2790, pp. 427–430. Springer, Heidelberg (2003)

    Google Scholar 

  3. Alt, M., Gorlatch, S.: Adapting Java RMI for grid computing. Future Generation Computer Systems 21(5), 699–707 (2004)

    Article  Google Scholar 

  4. Berthold, J., Dieterle, M., Loogen, R.: Implementing Parallel Google Map-Reduce in Eden. In: Sips, H., Epema, D., Lin, H. (eds.) Euro-Par 2009. LNCS, vol. 5704, pp. 990–1002. Springer, Heidelberg (2009)

    Google Scholar 

  5. Cole, M.: Algorithmic Skeletons: Structured Management of Parallel Computation. MIT Press, Cambridge (1989)

    MATH  Google Scholar 

  6. Darlington, J., Guo, Y.-k., To, H.W., Yang, J.: Parallel skeletons for structured composition. In: PPOPP 1995: Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming, pp. 19–28. ACM, New York (1995)

    Chapter  Google Scholar 

  7. Kuchen, H., Cole, M.: The integration of task and data parallel skeletons. Parallel Processing Letters 12(2), 141–155 (2002)

    Article  Google Scholar 

  8. Lobachev, O., Berthold, J., Dieterle, M., Loogen, R.: Parallel FFT using Eden Skeletons. In: Malyshkin, V. (ed.) PaCT 2009. LNCS, vol. 5698, pp. 73–83. Springer, Heidelberg (2009)

    Google Scholar 

  9. Loogen, R., Ortega-Mallén, Y., Peña-Marí, R.: Parallel Functional Programming in Eden. Journal of Functional Programming 15(3), 431–475 (2005)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dieterle, M., Horstmeyer, T., Loogen, R. (2010). Skeleton Composition Using Remote Data. In: Carro, M., Peña, R. (eds) Practical Aspects of Declarative Languages. PADL 2010. Lecture Notes in Computer Science, vol 5937. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11503-5_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11503-5_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11502-8

  • Online ISBN: 978-3-642-11503-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics