Pacheco | An Introduction to Parallel Programming | E-Book | www.sack.de
E-Book

E-Book, Englisch, 392 Seiten

Pacheco An Introduction to Parallel Programming


1. Auflage 2011
ISBN: 978-0-08-092144-0
Verlag: Elsevier Science & Techn.
Format: EPUB
Kopierschutz: 6 - ePub Watermark

E-Book, Englisch, 392 Seiten

ISBN: 978-0-08-092144-0
Verlag: Elsevier Science & Techn.
Format: EPUB
Kopierschutz: 6 - ePub Watermark



An Introduction to Parallel Programming is the first undergraduate text to directly address compiling and running parallel programs on the new multi-core and cluster architecture. It explains how to design, debug, and evaluate the performance of distributed and shared-memory programs. The author Peter Pacheco uses a tutorial approach to show students how to develop effective parallel programs with MPI, Pthreads, and OpenMP, starting with small programming examples and building progressively to more challenging ones. The text is written for students in undergraduate parallel programming or parallel computing courses designed for the computer science major or as a service course to other departments; professionals with no background in parallel computing. - Takes a tutorial approach, starting with small programming examples and building progressively to more challenging examples - Focuses on designing, debugging and evaluating the performance of distributed and shared-memory programs - Explains how to develop parallel programs using MPI, Pthreads, and OpenMP programming models

Peter Pacheco received a PhD in mathematics from Florida State University. After completing graduate school, he became one of the first professors in UCLA's 'Program in Computing, which teaches basic computer science to students at the College of Letters and Sciences there. Since leaving UCLA, he has been on the faculty of the University of San Francisco. At USF Peter has served as chair of the computer science department and is currently chair of the mathematics department.His research is in parallel scientific computing. He has worked on the development of parallel software for circuit simulation, speech recognition, and the simulation of large networks of biologically accurate neurons. Peter has been teaching parallel computing at both the undergraduate and graduate levels for nearly twenty years. He is the author of Parallel Programming with MPI, published by Morgan Kaufmann Publishers."
Pacheco An Introduction to Parallel Programming jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Front Cover;1
2;An Introduction to Parallel Programming;6
3;Copyright;7
4;Dedication;8
5;Table of Contents;10
6;Preface;16
7;Acknowledgments;19
8;About the Author;20
9;Chapter 1. Why Parallel Computing?;22
9.1;1.1 Why We Need Ever-Increasing Performance;23
9.2;1.2 Why We're Building Parallel Systems;24
9.3;1.3 Why We Need to Write Parallel Programs;24
9.4;1.4 How Do We Write Parallel Programs?;27
9.5;1.5 What We'll Be Doing;29
9.6;1.6 Concurrent, Parallel, Distributed;30
9.7;1.7 The Rest of the Book;31
9.8;1.8 A Word of Warning;31
9.9;1.9 Typographical Conventions;32
9.10;1.10 Summary;33
9.11;1.11 Exercises;33
10;Chapter 2. Parallel Hardware and Parallel Software;36
10.1;2.1 Some Background;36
10.2;2.2 Modifications to the von Neumann Model;39
10.3;2.3 Parallel Hardware;50
10.4;2.4 Parallel Software;68
10.5;2.5 Input and Output;77
10.6;2.6 Performance;79
10.7;2.7 Parallel Program Design;86
10.8;2.8 Writing and Running Parallel Programs;91
10.9;2.9 Assumptions;91
10.10;2.10 Summary;92
10.11;2.11 Exercises;98
11;Chapter 3. Distributed-Memory Programming with MPI;104
11.1;3.1 Getting Started;105
11.2;3.2 The Trapezoidal Rule in MPI;115
11.3;3.3 Dealing with I/O;118
11.4;3.4 Collective Communication;122
11.5;3.5 MPI Derived Datatypes;137
11.6;3.6 Performance Evaluation of MPI Programs;140
11.7;3.7 A Parallel Sorting Algorithm;148
11.8;3.8 Summary;157
11.9;3.9 Exercises;161
11.10;3.10 Programming Assignments;168
12;Chapter 4. Shared-Memory Programming with Pthreads;172
12.1;4.1 Processes, Threads, and Pthreads;172
12.2;4.2 Hello, World;174
12.3;4.3 Matrix-Vector Multiplication;180
12.4;4.4 Critical Sections;183
12.5;4.5 Busy-Waiting;186
12.6;4.6 Mutexes;189
12.7;4.7 Producer-Consumer Synchronization and Semaphores;192
12.8;4.8 Barriers and Condition Variables;197
12.9;4.9 Read-Write Locks;202
12.10;4.10 Caches, Cache Coherence, and False Sharing;211
12.11;4.11 Thread-Safety;216
12.12;4.12 Summary;219
12.13;4.13 Exercises;221
12.14;4.14 Programming Assignments;227
13;Chapter 5. Shared-Memory Programming with OpenMP;230
13.1;5.1 Getting Started;231
13.2;5.2 The Trapezoidal Rule;237
13.3;5.3 Scope of Variables;241
13.4;5.4 The Reduction Clause;242
13.5;5.5 The parallel for Directive;245
13.6;5.6 More About Loops in OpenMP: Sorting;253
13.7;5.7 Scheduling Loops;257
13.8;5.8 Producers and Consumers;262
13.9;5.9 Caches, Cache Coherence, and False Sharing;272
13.10;5.10 Thread-Safety;277
13.11;5.11 Summary;280
13.12;5.12 Exercises;284
13.13;5.13 Programming Assignments;288
14;Chapter 6. Parallel Program Development;292
14.1;6.1 Two n-Body Solvers;292
14.2;6.2 Tree Search;320
14.3;6.3 A Word of Caution;356
14.4;6.4 Which API?;356
14.5;6.5 Summary;357
14.6;6.6 Exercises;362
14.7;6.7 Programming Assignments;371
15;Chapter 7. Where to Go from Here;374
16;References;378
17;Index;382



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.