[Book Cover]

Studies in Computational Science: Parallel Programming Paradigms, 1/e

Per Brinch Hansen, Syracuse University

Published March, 1995 by Prentice Hall Engineering/Science/Mathematics

Copyright 1995, 400 pp.
Cloth
ISBN 0-13-439324-4


Sign up for future
mailings
on this subject.

See other books about:
    Parallel Computing-Computer Science

    Parallel Processing-Electrical Engineering


Summary

Attempting to understand the nature of parallel scientific computing from a programmer's point of view, this text describes a collection of structured multicomputer programs for computational science. It is the only book that includes complete, executable multicomputer programs, written in a programming language based on Pascal — still the most widely used language in computer science textbooks. The author assumes knowledge of Pascal and elementary calculus.

Features


multicomputer programs solve realistic problems in science and engineering, including linear equations, N-body simulation, sorting, fast Fourier transforms, simulated annealing and Laplace's equation. Each program is presented as an example of a general programming paradigm.
the unifying idea is the concept of a programming paradigm — a class of programs that solve different problems, but have the same control structure. The author develops a parallel generic program for each paradigm, which implements the common control structure. The paradigm is then used to solve two different programs.
the generic program includes a few unspecified data types and procedures that vary from one instance of the paradigm to another
a parallel application program is obtained by replacing these types and procedures with the corresponding types and procedures from a sequential program that solves the same problem
the programs are written for multicomputers in which processor communicate by message passing only. They illustrate the programming of a variety of multicomputer architectures, such as pipelines, trees, hypercubes, and meshes.
subtle algorithms are presented in their entirety as well — structured programs written in a readable, executable programming language (which inspired the author to invent the publication language SuperPascal for parallel scientific programming). However, the book is not a text about SuperPascal or the Computing Surface.
the multicomputer programs are developed and presented in SuperPascal, which extends Pascal with statements for parallel execution and message communication. The language permits unrestricted combinations of recursive procedures and parallel statements
a brief tutorial on SuperPascal and the complete text of ten SuperPascal programs is included.


Table of Contents
(NOTE: Each chapter begins with an introduction and concludes with Final Remarks. Some chapters include an Appendix after Final Remarks.) I. PROGRAMMING CONCEPTS.

    1. Parallel Programming Paradigms.
    2. The SuperPascal Language.

II. THE ALL-PAIRS PARADIGM.
    3. Householder Reduction.
    4. The All-Pairs Pipeline.
    5. Balancing a Pipeline.
    6. The N-Body Pipeline.
III. THE MULTIPLICATION PARADIGM.
    7. The Multiplication Pipeline.
IV. THE DIVIDE AND CONQUER PARADIGM.
    8. The Fast Fourier Transform.
    9. Parallel Divide and Conquer.
    10. Hypercubes and Tree Machines.
V. THE MONTE CARLO PARADIGM.
    11. Simulated Annealing.
    12. Primality Testing.
    13. Multiple-Length Division Revisited.
    14. Parallel Monte Carlo Trails.
VI. THE CELLULAR AUTOMATA PARADIGM.
    15. Laplace's Equation.
    16. Parallel Cellular Automata.
VII. PARALLEL MODEL PROGRAMS.
    17. Complete SuperPascal Programs.
    Bibliography.


[Help]

© Prentice-Hall, Inc. A Simon & Schuster Company
Comments To webmaster@prenhall.com