This accessible text covers the techniques of parallel programming in a practical manner that enables readers to write and evaluate their parallel programs. Supported by the National Science Foundation and exhaustively class-tested, it is the first text of its kind that does not require access to a special multiprocessor system, concentrating instead on parallel programs that can be executed on networked computers using freely available parallel software tools. KEY TOPICS: The book covers the timely topic of cluster programming, interesting to many programmers due to the recent availability of low-cost computers. Uses MPI pseudocodes to describe algorithms and allows different programming tools to be implemented, and provides readers with thorough coverage of shared memory programming, including Pthreads and OpenMP. MARKET: Useful as a professional reference for programmers and system administrators.
67171-9
Designed for an undergraduate computer science student or professional, this accessible text covers the techniques of parallel programming in a practical manner that enables students to write and evaluate their parallel programs. Supported by the National Science Foundation and exhaustively class-tested, it is the first text of its kind that does not require access to a special multiprocessor system, concentrating instead on parallel programs that can be executed on networked workstations using freely available parallel software tools.
Key Features:
- Introduces parallel programming techniques as a natural extension to sequential programming, developing the basic techniques of message-passing parallel programming, and then studying problem-specific algorithms in both non-numeric and numeric domains.
- Requires no prerequisite in parallel programming; assumes only C programming knowledge.
- Uses MPI and PVM pseudocodes to describe algorithms and allows different programming tools to be implemented.
- Provides students with thorough coverage of shared memory programming and Pthreads to assist them in shared memory programming assignments.
- Explores such applications as numerical algorithms, image processing, searching, and optimization.