Abstract
Parallel programming can be made easier by means of a skeleton based methodology, such as P 3 L, which helps programmers to compose their applications by using a set of fixed parallel patterns. Such kind of approach is also useful to obtain portability because the “structured” nature of the language can be used to devise a composable support for each parallel pattern so that the complexity of finding an “optimal” implementation on different parallel architectures can be reduced. In this work, we show how we can conjugate the BSP abstract model and its related cost analisys to provide an implementation strategy “abstract enough” for being also machine independent. We hope this can be a first step towards the idea of a portable set of optimization rules. The first results show how an implementation template for the Map constructor, able of to be tuned automatically, can be designed. A validation of the technique is given for a Cray T3E and a cluster of PC-Linux.
This work has been partially supported by the italian M.U.R.S.T. in the framework of the Project “MOSAICO”.
Preview
Unable to display preview. Download preview PDF.
References
B. Bacci, B. Cantalupo, M. Danelutto, S. Orlando, D. Pasetto, S. Pelagatti, and M. Vanneschi. An Environment for Structured Parallel Programming. In L. Grandinetti, M. Kowalick, and M. Vaitersic, editors, Advances in High Performance Computing, pages 219–234. Kluwier, Dordrecht, The Netherlands, 1997.
R.S. Bird. Algebraic identities for program calculation. The Computer Jurnal, 32(2):122–126, February 1989.
George H. Botorog and Herbert Kuchen. Skil: An Imperative Language with Algorithmic Skeletons for Efficient Distributed Programming. In Proceedings of the Fifth International Symposium on High Performance Distributed Computing (HPDC-5), pages 243–252. IEEE Computer Society, 1996.
S. Ciarpaglini, M. Danelutto, L. Folchi, C. Manconi, and S. Pelagatti. ANACLETO: a Template-based p3l Compiler. In Proceedings of the Seventh Parallel Computing Workshop (PCW'97), Australian National University, Canberra, August 1997.
M. Cole. Algorithmic Skeletons: Structured Management of Parallel Computation. The MIT Press, Cambridge, Massachusetts, 1989.
M. Danelutto, R. Di Meglio, S. Orlando, S. Pelagatti, and M. Vanneschi. A Methodology for the Development and the Support of Massively Parallel Programs. In D.B. Skillicorn and D. Talia, editors, Programming Languages for Parallel Processing. IEEE Computer Society Press, 1994.
J. Darlington, A.J. Field, P.G. Harrison, P.H.J. Kelly, D.W.N. Sharp, and Q. Wu. Parallel Programming using Skeleton functions. In Parallel Languages and Architectures Europe. Springer Verlag, 1993.
J. Darlington, Y.K. Guo, H.W. To, and J. Yang. Functional Skeletons for Parallel Coordination. In Proceedings of Europar, 1995.
D.B. Skillicorn, M. Danelutto, S. Pelagatti, and A. Zavanella. Optimising Data-Parallel Programs Using the BSP Model. In Proceeding of EUROPAR98, LNCS. Springer, 1998.
A.V. Gerbessiotis and C.J. Siniolakis. Primitive Operations on the BSP Model. Technical Report PRG-TR-23-96, Oxford University Computing Laboratory, October 1996.
F.O. Osoba and F.A. Rabhi. A Parallel Multigrid Skeleton using BSP. In Proceeding of EuroPar98, LNCS. Springer, 1998.
S. Gorlatch and S. Pelagatti. A Transformational Frame for Skeleton based Parallelism: An Oveview and a Case Study. submitted, October 1998.
J.M. Sipelstein and G.E. Blelloch. Collection-oriented languages. Proceedings of the IEEE, 79(4):504–523, April 1991.
David B. Skillicorn, Jonathan M. D. Hill, and W. F. McColl. Questions and answers about BSP. Technical Report 15-96, Programming Research Group, Oxford University Computing Laboratory, August 1996.
S. Pelagatti. Structured Development of Parallel Programs. Taylor & Francis, 1997.
M. Sudholt, C. Piepenbrock, K. Obermayer, and P. Pepper. Solving Large Systems of Differential Equations using Covers and Skeletons. In 50th IFIP WG 2.1 Working Conference on Algorithmic Languages and Calculi. Chapman-Hall, Feb 1997.
L.G. Valiant. A Bridging Model for Parallel Computation. Communications of the ACM, 33(8):103–111, August 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1999 Springer-Verlag
About this paper
Cite this paper
Zavanella, A., Pelagatti, S. (1999). Using BSP to optimize data distribution in skeleton programs. In: Sloot, P., Bubak, M., Hoekstra, A., Hertzberger, B. (eds) High-Performance Computing and Networking. HPCN-Europe 1999. Lecture Notes in Computer Science, vol 1593. Springer, Berlin, Heidelberg . https://doi.org/10.1007/BFb0100622
Download citation
DOI: https://doi.org/10.1007/BFb0100622
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65821-4
Online ISBN: 978-3-540-48933-7
eBook Packages: Springer Book Archive