Abstract
Sequential programming has overcome its preoccupation with details of the machine organisation several decades ago. In contrast, the average parallel programmer spends a large amount of development time on organisational details like synchronisation, communication, marshalling, etc. Message passing libraries like MPI are useful aids at this level ¡ª but they give the programmer a large choice of complex options rather than removing organisational issues with bold abstractions.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
Reference
G. Ausiello, P. Crescenzi, Gambosi, V. Kann, A. Marchetti-Spaccamela, and M. Protasi. Complexity and Approximation. Springer-Verlag, 1999.
B. Bacci, M. Danelutto, S. Orlando, S. Pelagatti, and M. Vanneschi. P3L: A structured high level programming language and its structured support. Concurrency: Practice and Experience, 7(3):225–255, 1995
H. P. Barendregt. The Lambda Calculus. Studies in Logic 103. North-Holland, 1984.
J. L. Bentley. Programming pearls. Comm. ACM, 27:865–871, 1984.
G. E. Blelloch. Vector Models for Data-Parallel Computing. MIT Press, 1990.
J. Darlington, A. Field, P. Harrison, P. Kelly, D. Sharp, Q. Wu, and R. L. While. Parallel programming using skeleton functions. In A. Bode, M. Reeve, and G. Wolf, editors, PARLE’93: Parallel Architectures and Languages Europe, Lecture Notes in Computer Science 694, pages 146–160. Springer-Verlag, 1993.
J. Darlington, Y. Guo, H. W. To, and J. Yang. Parallel skeletons for structured composition. In Proc. 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP’95), pages 19–28 ACM Press, 1995.
T. Elrad and N. Francez. Decomposition of distributed programs into communication-closed layers. Science of Computer Programming, 2(2):155–173 1982.
M. R. Garey and D. S. Johnson. Computers and Intractability. W.H. Freeman & Co., 1979.
A. Gill J. Launchbury, and S. L. Peyton Jones. A short cut to deforestation. In Proc. Sixth Conf. on Functional Programming Languages and Computer Architecture (FPCA’93), pages 223–232. ACM Press, 1993.
S. Gorlatch. Extracting and implementing list homomorphisms in parallel program developement. Science of Comuter Programming, 33(1):1–27, 1999.
S. Gorlatch. Send-recv considered harmful? Myths and truths about parallel programming. In V. Malyshkin, editor, Parallel Computing Technologies (PaCT 2001), Lecture Note in Computer Science 2127, pages 243–257. Springer-Verlag, 2001.
P. Hammarlund and Lisper. On the relation between functional and data parallel programming languages. In Proc. Sixth Conf. on Functional Programming Languages and Computer Architecture (FPCA’93), pages 210–222. ACM Press, 1993
K. Hammond and G. Michaelson. Research Directions in Parallel Functional Programming, chapter 1. Springer-Verlag, 1999
C. A. Herrmann, C. Lengauer, R. Günz, J. Laitenberger, and C. Schaller. A compiler for HDC. Technical Report MIP-9907, Fakultät für Mathematik und Informatik, Univ. Passau, May 1999.
C. A. Herrmann and C. Lengauer. Parallelization of divide-and-conquer by translation to nested loops. J. Functional Programming, 9(3):279–310, May 1999.
C. A. Herrmann and C. Lengauer. A transformational approach which combines size inference and programm optimization. In W. Taha, editor, Semantics, Applications, and Implementation of Program Generation (SAIG’01), Lecture Notes in Computer Science 2196, pages 199–218. Springer-Verlag, 2001.
R. E. Ladner and M. J. Fisher. Parallel prefix computation. J. ACM,, 27(4):831–838, 1980.
MPI Forum. MPI: A Message-Passing Interface Standard. Univ. of Tennessee at Knoxville, 1995.,
A. D. Robinson. Impact of economics on compiler optimization. In Proc. ACM 2001 Java Grande/ISCOPE Conf., pages 1–10. ACM Press, 2001.
P. W. Trinder, K. Hammond, H.-W. Loidl, and S. L. Peyton Jones. Algorithm + strategy = parallelism. J. Functional Programming, 8(1):23–80, Jan. 1998.
M. Weber, 2000. http://www.i2.informatik.rwth-aachen.de/~michaelw/hmpi.html.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag London
About this chapter
Cite this chapter
Herrmann, C.A., Lengauer, C. (2003). Transforming Rapid Prototypes to Efficient Parallel Programs. In: Rabhi, F.A., Gorlatch, S. (eds) Patterns and Skeletons for Parallel and Distributed Computing. Springer, London. https://doi.org/10.1007/978-1-4471-0097-3_3
Download citation
DOI: https://doi.org/10.1007/978-1-4471-0097-3_3
Publisher Name: Springer, London
Print ISBN: 978-1-85233-506-9
Online ISBN: 978-1-4471-0097-3
eBook Packages: Springer Book Archive