Abstract
Although work on the specification, semantics and verification of parallelism over the last decades has led to significant progress in the understanding of parallelism and to workable development methods in certain domains, no method for the development of reliable, portable, parallel application software for high-performance computing has been achieved as of yet whose practicality and ease of use is commonly evident.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
K. R. Apt, N. Francez, and W. P. de Roever. A proof system for communicating sequential processes. ACM Trans, on Programming Languages and Systems, 2(3):359–385, July 1980.
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.
B. Bacci, S. Gorlatch, C. Lengauer, and S. Pelagatti. Skeletons and transformations in an integrated parallel programming environment. In Parallel Computing Technologies (PaCT-99), LNCS 1662, pages 13–27. Springer-Verlag, 1999.
G. E. Blelloch, J. C. Hardwick, J. Sipelstein, M. Zagha, and S. Chatterjee. Implementation of a portable nested data-parallel language. J. Parallel and Distributed Computing, 21(1):4–14, Apr. 1994.
D. Cann. Retire Fortran? A debate rekindled. Comm. ACM, 35(8), Aug. 1992.
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, Parallel Architectures and Languages Europe (PARLE ’93), LNCS 694, pages 146–160. Springer-Verlag, 1993.
P. Feautrier. Automatic parallelization in the polytope model. In G.-R. Perrin and A. Darte, editors, The Data Parallel Programming Model, LNCS 1132, pages 79–103. Springer-Verlag, 1996.
M. Feng and C. E. Leiserson. Efficient detection of determinacy races in Cilk programs. In 9th ACM Symp. on Parallel Algorithms and Architectures (SPAA ’97), pages 1–11. ACM Press, 1997.
M. Frigo, C. E. Leiserson, and K. H. Randall. The implementation of the Cilk-5 multithreaded language. ACM SIGPLAN Notices, 33(5):213–228, May 1998. Proc. ACM SIGPLAN Conf. on Programming Language Design and Implementation (PLDI′98).
A. Geist et al. PVM: Parallel Virtual Machine. MIT Press, 1994.
S. Gorlatch. Abstraction and performance in the design of parallel programs. Technical Report MIP-9802, Fakultät für Mathematik und Informatik, Universität Passau, Jan. 1998. Habilitation thesis.
S. Gorlatch, C. Wedler, and C. Lengauer. Optimization rules for programming with collective operations. In Proc. 13th Int. Parallel Processing Symp. & 10th Symp. on Parallel and Distributed Processing (IPPS/SPDP ’99), pages 492–499. IEEE Computer Society Press, 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, 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, Universität Passau, May 1999.
C. A. R. Hoare. Communicating sequential processes. Comm. ACM, 21(8):666–677, Aug. 1978.
C. A. R. Hoare. Communicating Sequential Processes. Series in Computer Science. Prentice-Hall Int., 1985.
INMOS Ltd. occam Programming Manual. Series in Computer Science. Prentice-Hall Int., 1984.
C. H. Koelbel, D. B. Loveman, R. S. Schreiber, G. L. Steele, Jr., and M. E. Zosel. The High Performance Fortran Handbook. Scientific and Engineering Computation. MIT Press, 1994.
L. Lamport. TLA—temporal logic of actions. ACM Trans, on Programming Languages and Systems, 16(3):872–923, May 1994.
C. Lengauer. Loop parallelization in the polytope model. In E. Best, editor, CONCUR ’93, LNCS 715, pages 398–416. Springer-Verlag, 1993.
G. M. Levin and D. Gries. A proof technique for communicating sequential processes. Acta Informatica, 15(3):281–302, 1981.
Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems. Springer-Verlag, 1992.
W. F. McColl. Scalable computing. In J. van Leeuwen, editor, Computer Science Today, LNCS 1000, pages 46–61. Springer-Verlag, 1995.
R. Milner. Communication and Concurrency. Series in Computer Science. Prentice-Hall Int., 1989.
Z. G. Mou. Divacon: A parallel language for scientific computing based on divide-and-conquer. In Proc. 3rd Symp. Frontiers of Massively Parallel Computation, pages 451–461. IEEE Computer Society Press, Oct. 1990.
Z. G. Mou and P. Hudak. An algebraic model for divide-and-conquer algorithms and its parallelism. J. Supercomputing, 2(3):257–278, 1988.
S. S. Owicki and D. Gries. An axiomatic proof technique for parallel programs. Acta Informatica, 6(4):319–340, 1976.
S. S. Owicki and D. Gries. Verifying properties of parallel programs. Comm. ACM, 19(5):279–285, May 1976.
P. S. Pacheco. Parallel Programming with MPI. Morgan Kaufmann, 1997.
W. Reisig. A Primer in Petri Net Design. Springer Compass International. Springer-Verlag, 1992.
R. Schreiber. High Performance Fortran, Version 2. Parallel Processing Letters, 7(4):437–449, 1997.
D. B. Skillicorn, J. M. D. Hill, and W. F. McColl. Questions and answers about BSP. Scientific Programming, 6(3):249–274, 1997.
P. W. Trinder, K. Hammond, H.-W. Loidl, and S. L. Peyton Jones. Algorithm + strategy = parallelism. J. Functional Programming, 8(l):23–60, Jan. 1998.
C. Wedler and C. Lengauer. On linear list recursion in parallel. Acta Informatica, 35(10):875–909, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer Science+Business Media Dordrecht
About this chapter
Cite this chapter
Lengauer, C. (2000). A Personal, Historical Perspective of Parallel Programming for High Performance. In: Hommel, G. (eds) Communication-Based Systems. Springer, Dordrecht. https://doi.org/10.1007/978-94-015-9608-4_9
Download citation
DOI: https://doi.org/10.1007/978-94-015-9608-4_9
Publisher Name: Springer, Dordrecht
Print ISBN: 978-90-481-5399-2
Online ISBN: 978-94-015-9608-4
eBook Packages: Springer Book Archive