Book: Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation
Publisher: Cambridge University Press
This book provides a seamless approach to numerical algorithms, modern programming techniques and parallel computing. These concepts and tools are usually taught serially across different courses and different textbooks, thus observing the connection between them. The necessity of integrating these subjects usually comes after such courses are concluded (e.g., during a first job or a thesis project), thus forcing the student to synthesize what is perceived to be three independent subfields into one in order to produce a solution. The book includes both basic and advanced topics and places equal emphasis on the discretization of partial differential equations and on solvers. Advanced topics include wavelets, high-order methods, non-symmetric systems and parallelization of sparse systems. A CD-ROM accompanies the text.Scientific computing is by its very nature a practical subject – it requires tools and a lot ofpractice. To solve realistic problems we need not only fast algorithms but also a combinationof good tools and fast computers. This is the subject of the current book, which emphasizesequally all three: algorithms, tools, and computers. Often times such concepts and tools aretaught serially across different courses and different textbooks, and hence the interconnectionbetween them is not immediately apparent. We believe that such a close integration isimportant from the outset.The book starts with a heavy dosage of C++ and basic mathematical and computationalconcepts, and it ends emphasizing advanced parallel algorithms that are used in modernsimulations. We have tried to make this book fun to read, to somewhat demystify thesubject, and thus the style is sometimes informal and personal. It may seem that thishappens at the expense of rigor, and indeed we have tried to limit notation and theoremproofing. Instead, we emphasize concepts and useful tricks-of-the-trade with many codesegments, remarks, reminders, and warnings throughout the book.