Skeleton composition using remote data

  • Authors:
  • Mischa Dieterle;Thomas Horstmeyer;Rita Loogen

  • Affiliations:
  • Fachbereich Mathematik und Informatik, Philipps-Universität Marburg, Marburg, Germany;Fachbereich Mathematik und Informatik, Philipps-Universität Marburg, Marburg, Germany;Fachbereich Mathematik und Informatik, Philipps-Universität Marburg, Marburg, Germany

  • Venue:
  • PADL'10 Proceedings of the 12th international conference on Practical Aspects of Declarative Languages
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

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.