Parallel Scientific Computation: A Structured Approach using BSP and MPI
The book deals with implementations of parallel algorithms in scientific computing using the Bulk Synchronous Parallel (BSP) approach. It is a realistic abstraction of a real parallel computer. The first chapter introduces the BSP approach to parallel programming and BSPlib as the corresponding tool. An example of inner product illustrates how to use and analyze this approach. The next three chapters are devoted to a study of three essential algorithms. They contain a study of LU decomposition of a matrix, an analysis of FFT and a study of sparse matrix-vector multiplication. The author then develops some versions of parallel algorithms, real implementations using BSP, and experiments on real systems. The book ends with bibliographic notes and exercises. There are three appendices describing auxiliary functions from the package BSPEDUPACK, a quick reference guide to BSP lib and hints on how to use MPI tools for programming in BSP style. The book will be useful for students and researchers in the field of computer science, numerical analysis and high performance computing.