Skip to main content
Log in

Deriving parallel computations from functional specifications: A seismic example on a hypercube

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

Three algorithms developed for a seismic model illustrate that, when the target hardware has many processing elements, functional programs can exhibit better performance than programs developed with conventional techniques. This stands in contrast to the widely held belief that functional programs necessarily pay in poor performance for their advantages in conciseness and likelihood of correctness. Two of the algorithms evolved from an analysis of the seismic model with the goal of finding parts of the computation that could proceed in parallel. The first algorithm has a low communication to computation ratio. The second and third algorithms have higher ratios trading communication time for computation time. The third algorithm was derived from a presentation of the input/output relationship of the model expressed as a composition of mathematical functions. This algorithm exhibited substantially better performance than either of the others. The algorithm achieves its good performance by setting up a producer-consumer pipeline between simultaneously operating portions of the computation. This pipeline balances computation and interprocessor communication more effectively than the other two algorithms.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. S. Lakshivarahan and S. K. Dhall, A New Hierarchy of Hypercube Interconnection Scheme for Parallel Computers: Theory and Practice Research Report OU-PPI-TR-86-02, Parallel Processing Institute University of Oklahoma, Norman, Oklahoma (August 1986).

    Google Scholar 

  2. NCUBE Corporation,NCUBE System Manual (1985).

  3. W. J. Ouchark, J. A. Davis, S. Lakshivarahan, and S. K. Dhall, Experiences with Intel Hypercube, Proceedings of the Workshop on Applied Computing, Oklahoma State University, Stillwater, Oklahoma, October 10–11 (1986).

  4. C. L. Seitz, The Cosmic Cube,Commun. ACM 28(1):22–33.

  5. D. J. Vasicek and A. Beguelin, Communication Between Nodes of a Hypercube, Second Conference on Hypercube Multiprocessors, Knoxville, Tennessee (September 1986).

  6. D. H. Grit and R. L. Page, Deleting. Irrelevant Tasks in an Expression-Oriented Multiprocessor System,ACM TOPLAS 3(1):49–59 (January, 1981).

    Google Scholar 

  7. D. H. Grit and R. L. Page, A Multiprocessor Computer System for Parallel Evaluation of Applicative Programs,J. Digital Systems, Vol. 4, No. 2 (1980).

  8. F. W. Burton, and M. M. Huntbach, Virtual Tree Machines,IEEE Trans. Comput. C33(3):278–280 (March 1984).

    Google Scholar 

  9. R. M. Keller and F. C. H. Lin, Simulated Performance of a Reduced-Based Multiprocessor,IEEE Computer, pp. 70–82 (July 1984).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wainwright, R.L. Deriving parallel computations from functional specifications: A seismic example on a hypercube. Int J Parallel Prog 16, 243–260 (1987). https://doi.org/10.1007/BF01407935

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01407935

Key Words

Navigation