Parallel Programming for Multicore and Cluster Systems (3. edition)
- Springer Verlag
- 3rd edition (May, 2023)
- 554 pages, Softcover
- ISBN: 978-3-031-28923-1
- ISBN: 978-3-031-28924-8 (eBook)
- DOI: https://doi.org/10.1007/978-3-031-28924-8
- Parallel Programming
- Architecture of parallel systems
- Parallel programming models
- Parallel programming environments (MPI, Pthreads, Java threads, OpenMP, CUDA)
- Performance analysis of parallel programs
- Performance analysis of communication operations
- Parallel Scientific Programming
This textbook covers the new development in processor architecture and parallel hardware. It provides detailed descriptions of parallel programming techniques that are necessary for developing efficient programs for multicore processors as well as for parallel cluster systems and supercomputers.
The book is structured in three main parts, covering all areas of parallel computing: the architecture of parallel systems, parallel programming models and environments, and the implementation of efficient application algorithms. The emphasis lies on parallel programming techniques needed for different architectures. In particular, this third edition includes an extended update of the chapter on computer architecture and performance analysis taking new developments such as the aspect of energy consumption into consideration. The description of OpenMP has been extended and now also captures the task concept of OpenMP. The chapter on message-passing programming has been extended and updated to include new features of MPI such as extended reduction operations and non-blocking collective communication operations. The chapter on GPU programming also has been updated. All other chapters also have been revised carefully.
The main goal of this book is to present parallel programming techniques that can be used in many situations for many application areas and to enable the reader to develop correct and efficient parallel programs. Many example programs and exercises are provided to support this goal and to show how the techniques can be applied to further applications. The book can be used as a textbook for students as well as a reference book for professionals. The material of the book has been used for courses in parallel programming at different universities for many years.
Features and Benefits
- Broad coverage of all aspects of parallel programming
- Special emphasis on runtime and storage efficiency
- Presented material has been used in courses for many years
- Complemented by many examples and additional website with teaching material
Google Search String
This book provides detailed descriptions of techniques for efficiently programming multicore processors, parallel cluster systems and supercomputers.
About the Authors
Thomas Rauber has been professor for parallel and distributed systems at the University of Bayreuth since 2002. His research is focusing on algorithms and systems for distributed and parallel programming, on which he published more than 200 papers in journals or conference proceedings.
Gudula Rünger has been professor at the Chemnitz University of Technology since 2000. Her main research interests are parallel and distributed programming both in theory and applications, and she published more than 200 conference and journal papers on these topics.
Additional Material for the Book
|Downloads for the Figures|
|Solutions to Selected Excercises|