This is the first text explaining how to use the bulk
synchronous parallel (BSP) model and the freely
available BSPlib communication library in parallel
algorithm design and parallel programming. Aimed at
graduate students and researchers in mathematics,
physics and computer science, the main topics treated in
the book are core topics in the area of scientific
computation and many additional topics are treated in
numerous exercises. An appendix on the message-passing
interface (MPI) discusses how to program using the MPI
communication library. MPI equivalents of all the
programs are also presented. The main topics treated in
the book are core in the area of scientific computation:
solving dense linear systems by Gaussian elimination,
computing fast Fourier transforms, and solving sparse
linear systems by iterative methods. Each topic is
treated in depth, starting from the problem formulation
and a sequential algorithm, through a parallel algorithm
and its analysis, to a complete parallel program written
in C and BSPlib, and experimental results obtained using
this program on a parallel computer.Additional topics
treated in the exercises include: data compression,
random number generation, cryptography, eigensystem
solving, 3D and Strassen matrix multiplication, wavelets
and image compression, fast cosine transform, decimals
of pi, simulated annealing, and molecular dynamics.The
book contains five small but complete example programs
written in BSPlib which illustrate the methods taught.
The appendix on MPI discusses how to program in a
structured, bulk synchronous parallel style using the
MPI communication library. It presents MPI equivalents
of all the programs in the book. The complete programs
of the book and their driver programs are freely
available online in the packages BSPedupack and
MPIedupack. |
|