Preface
This book grew out of lecture notes for a course on parallel algorithms that Igave at Drexel University over a period of several years. I was frustrated by thelack of texts that had the focus that I wanted. Although the book also addressessome architectural issues, the main focus is on the development of parallel algo-rithms on “massively parallel” computers. This book could be used in severalversions of a course on Parallel Algorithms. We tend to focus on SIMD parallelalgorithms in several general areas of application:
•
Numerical and scientific computing. We study matrix algorithms and nu-merical solutions to partial differential equations.
•
“Symbolic” areas, including graph algorithms, symbolic computation,sorting, etc.There is more material in this book than can be covered in any single course, butthere are many ways this book can be used. I have taught a graduate course inparallel numerical algorithms by covering the material in:1. The Introduction.2.
§
2 of chapter 3 (page 57).3. Chapter 4, and;4. Chapter 5.Another possible “track” through this book, that emphasizes symbolic algorithms,involves covering:1. The Introduction;2. Chapter 2;3. and Chapter 6.A graduate course on parallel algorithms in general could follow the sequence:1. The Introduction;2. Chapter 2 — for a theoretical background;3.
§§
1 and 1.2 of chapter 5 — for a taste of some numerical algorithms;4.
§§
1, 2, 2.1, 2.2, 2.3.1 3.5, and if time permits, 3.7.1 of chapter 6.I welcome readers’ comments, and am particularly interested in reports of errorsor suggestions for new topics or exercises. My address is: Justin R. SmithDepartment of MathematicsDrexel UniversityPhiladelphia, PA 19104USA