A. Abbas,
Grid Computing: A Practical Guide to Technology and Applications,
Charles River Media, 2004.
G. S. Almasi and A. Gottlieb, Highly Parallel Computing, 2nd ed.,
Benjamin/Cummings, 1994.
F. Berman, A. Hey, and G. Fox, eds., Grid Computing: Making the Global
Infrastructure a Reality, John Wiley & Sons, 2003.
A. Chalmers and J. Tidmus, Practical Parallel Processing,
International Thomson, 1996.
B. Codenotti and M. Leoncini, Introduction to Parallel Processing,
Addison-Wesley, 1993.
J. M. Crichlow, Introduction to Distributed and Parallel Computing,
Prentice Hall, 1988.
Y. Deng, Applied Parallel Computing, World Scientific, 2011.
G. R. Desrochers, Principles of Parallel and Multiprocessing,
McGraw-Hill, 1987.
J. Dongarra, et al., eds., Sourcebook of Parallel Computing,
Morgan Kaufmann, 2003.
K. Dowd and C. R. Severance, High Performance Computing, 2nd. ed.,
O'Reilly, 1998.
H. El-Rewini and T. G. Lewis, Distributed and Parallel Computing,
Manning, 1998.
I. Foster and C. Kesselman, eds., The Grid: Blueprint for a New
Computing Infrastructure, Morgan Kaufmann, 1999.
I. Foster and C. Kesselman, eds., The Grid 2: Blueprint for a New
Computing Infrastructure, Morgan Kaufmann, 2003.
T. J. Fountain, Parallel Computing: Principles and Practice,
Cambridge University Press, 1994.
F. Gebali, Algorithms and Parallel Computing, John Wiley &
Sons, 2011.
R. W. Hockney and C. R. Jesshope, Parallel Computers 2: Architecture,
Programming and Algorithms, Institute of Physics Publishing, 1988.
R. M. Hord, Understanding Parallel Supercomputing, IEEE Press,
1999.
E. V. Krishnamurthy, Parallel Processing: Principles and Practice,
Addison-Wesley, 1989.
H. F. Jordan and G. Alaghband, Fundamentals of Parallel Processing,
Prentice Hall, 2003.
E. L. Leiss, Parallel and Vector Computing: A Practical
Introduction, McGraw-Hill, 1995.
T. G. Lewis and H. El-Rewini, Introduction to Parallel Computing,
Prentice Hall, 1992.
G. J. Lipovski and M. Malek, Parallel Computing: Theory and
Comparisons, John Wiley & Sons, 1987.
D. I. Moldovan, Parallel Processing: From Applications to Systems,
Morgan Kaufmann, 1993.
H. S. Morse, Practical Parallel Computing, Academic Press, 1994.
W. P. Petersen and P. Arbenz, Introduction to Parallel Computing:
A Practical Guide with Examples in C, Oxford University Press, 2004.
M. J. Quinn, Parallel Computing: Theory and Practice, McGraw-Hill,
1994.
S. Rajasekaran and J. Reif, eds., Handbook of Parallel Computing:
Models, Algorithms, and Applications, Chapman & Hall/CRC, 2008.
S. H. Roosta, Parallel Processing and Parallel Algorithms: Theory
and Computation, Springer, 2000.
J. A. Sharp, An Introduction to Distributed and Parallel
Processing, Blackwell, 1987.
A. Y. Zomaya, ed., Parallel and Distributed Computing Handbook,
McGraw-Hill, 1996.
Parallel Programming
G. R. Andrews, Concurrent Programming: Principles and Practice,
Benjamin/Cummings, 1991.
G. R. Andrews, Foundations of Multithreaded, Parallel, and Distributed
Programming, Addison-Wesley, 2000.
R. G. Babb, ed., Programming Parallel Processors, Addison-Wesley, 1988.
L. Baker and B. J. Smith, Parallel Programming, McGraw-Hill, 1996.
B. E. Bauer, Practical Parallel Programming, Academic Press, 1992.
M. Ben-Ari, Principles of Concurrent and Distributed Programming,
2nd ed., Addison-Wesley, 2006.
G. E. Blelloch, Vector Models for Data-Parallel Computing, MIT
Press, 1990.
T. Braunl, Parallel Programming: An Introduction, Prentice Hall, 1993.
S. Brawer, Introduction to Parallel Programming, Academic Press, 1989.
C. Breshears, The Art of Concurrency: A Thread Monkey's Guide to
Writing Parallel Applications, O'Reilly Media, 2009.
P. Brinch Hansen, Studies in Computational Science: Parallel
Programming Paradigms, Prentice Hall, 1995.
A. Burns and G. Davies, Concurrent Programming, Addison-Wesley, 1993.
N. Carriero and D. Gelernter, How to Write Parallel Programs: A First
Course, MIT Press, 1990.
K. M. Chandy and J. Misra, Parallel Program Design: A Foundation,
Addison-Wesley, 1988.
K. M. Chandy and S. Taylor, An Introduction to Parallel
Programming, Jones & Bartlett, 1992.
I. T. Foster,
Designing and Building Parallel Programs, Addison-Wesley, 1995.
Available online
S. Goedecker and A. Hoisie, Performance Optimization of Numerically
Intensive Codes, SIAM, 2001.
G. Hager and G. Wellein, Introduction to High Performance Computing
for Scientists and Engineers, CRC Press, 2011.
M. Herlihy and N. Shavit, The Art of Multiprocessor Programming,
Morgan Kaufmann, 2008.
C. A. R. Hoare, Communicating Sequential Processes, Prentice
Hall, 1985.
A. H. Karp, “Programming for parallelism,” IEEE
Computer Vol. 20, No. 9, pp. 43-57, 1987.
J. Kepner, Parallel MATLAB for Multicore and Multinode Computers,
SIAM, 2009.
D. B. Kirk and W. W. Hwu, Programming Massively Parallel Processors:
A Hands-on Approach, Morgan Kaufmann, 2010.
A. L. Lastovetsky, Parallel Computing on Heterogeneous Networks,
John Wiley & Sons, 2003.
B. P. Lester, The Art of Parallel Programming, 2nd ed., 1st World
Publishing, 2006.
C. Lin and L. Snyder, Principles of Parallel Programming,
Addison-Wesley, 2008.
P. Luszczek, Parallel programming in MATLAB, Internat. J. High
Perf. Comput. Appl., 23:277-283, 2009.
T. G. Mattson, B. A. Sanders, and B. L. Massingill, Patterns for
Parallel Programming, Addison-Wesley, 2005.
J. L. Ortega-Arjona, Patterns for Parallel Software Design,
Wiley, 2010.
R. H. Perrott, Parallel Programming, Addison-Wesley, 1987.
M. J. Quinn, Parallel Programming in C with MPI and OpenMP,
McGraw-Hill, 2003
S. Ragsdale, ed., Parallel Programming, McGraw-Hill, 1991.
T. Rauber and G. Runger, Parallel Programming for Multicore and
Cluster Systems, Springer, 2010.
B. Wilkinson and M. Allen, Parallel Programming, 2nd ed., Prentice
Hall, 2004.
G. V. Wilson, Practical Parallel Programming, MIT Press, 1995.
Parallel Programming Languages and Systems
C. Amza, A. Cox, S. Dwarkadas, P. Keleher, H. Lu, R. Rajamony, W. Yu, and
W. Zwaenepoel, “TreadMarks: Shared Memory Computing on Networks of
Workstations,” IEEE Computer, Vol. 29, No. 2, February 1996,
pp. 18-28.
D. F. Bacon, S. L. Graham, and O. J. Sharp, “Compiler transformations
for high-performance computing,” ACM Computing Surveys Vol. 26,
pp. 345-420, 1994
H. E. Bal, J. G. Steiner, and A. S. Tanenbaum, Programming languages
for distributed computing systems, ACM Computing Surveys Vol. 21,
pp. 261-322, 1989
D. R. Butenhof, Programming with POSIX Threads, Addison-Wesley, 1997.
R. Chandra, R. Menon, L. Dagum, D. Kohr, D. Maydan, and J. McDonald,
Parallel Programming in OpenMP, Morgan Kaufmann, 2000.
B. Chapman, G. Jost, and R. van der Pas,
Using OpenMP: Portable Shared Memory Parallel Programming,
MIT Press, 2008.
A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek, and V. Sunderam,
PVM: Parallel Virtual Machine, A User's Guide and Tutorial for Networked
Parallel Computing, MIT Press, 1994.
Available online
W. Gropp, S. Huss-Lederman, A. Lumsdaine, E. Lusk, B. Nitzberg,
W. Saphir, and M. Snir, MPI: The Complete Reference, Vol. 2, The MPI
Extensions, MIT Press, 1998.
W. Gropp, E. Lusk, and A. Skjellum, Using MPI: Portable Parallel
Programming with the Message-Passing Interface, 2nd ed., MIT Press, 1999.
W. Gropp, E. Lusk, and R. Thakur, Using MPI-2: Advanced Features of
the Message Passing Interface, MIT Press, 1999.
P. J. Hatcher and M. J. Quinn, Data-Parallel Programming on MIMD
Computers, MIT Press, 1991.
S. Kleiman, D. Shah, and B. Smaalders, Programming with Threads,
Prentice Hall, 1996.
C. H. Koelbel, D. B. Loveman, R. S. Schreiber, G. L. Steele, and
M. E. Zosel, The High Performance Fortran Handbook, MIT Press, 1994.
B. Nichols, D. Buttlar, and J. P. Farrell, Pthreads Programming,
O'Reilly & Associates, 1996.
P. S. Pacheco, Parallel Programming with MPI, Morgan Kaufmann, 1997.
P. S. Pacheco, An Introduction to Parallel Programming, Morgan
Kaufmann, 2011.
S. Prasad, Multithreading Programming Techniques, McGraw-Hill, 1997.
M. Snir, S. Otto, S. Huss-Lederman, D. Walker, and J. Dongarra, MPI:
The Complete Reference, Vol. 1, The MPI Core, 2nd ed., MIT Press, 1998.
1st ed. available online
M. J. Sottile, T. G. Mattson, and C. E. Rasmussen, Introduction to
Concurrency in Programming Languages, CRC Press, 2009.
G. V. Wilson and P. Lu, eds., Parallel Programming Using C++,
MIT Press, 1996.
M. Wolfe, High Performance Compilers for Parallel Computing,
Addison-Wesley, 1996.
Parallel Architectures
R. Buyya, editor, High Performance Cluster Computing, two volumes,
Prentice Hall, 1999.
D. E. Culler, J. P. Singh, and A. Gupta, Parallel Computer
Architecture, Morgan Kaufmann, 1998.
A. L. DeCegama, Parallel Processing Architectures and VLSI
Hardware, Prentice Hall, 1989.
W. J. Dally and B. P. Towles, Principles and Practices of
Interconnection Networks, Morgan Kaufmann, 2004.
J. Duato, S. Yalamanchili, and L. Ni, Interconnection Networks: An
Engineering Approach, IEEE Computer Society Press, 1997.
M. Dubois, M. Annavaram, and P. Stenstrom, Parallel Computer
Organization and Design, Cambridge University Press, 2012.
M. J. Flynn,
Computer Architecture: Pipelined and Parallel Processor Design,
Jones & Bartlett, 1995.
K. Hwang and F. A. Briggs, Computer Architecture and Parallel
Processing, McGraw-Hill, 1984.
K. Hwang, Advanced Computer Architecture: Parallelism, Scalability,
Programmability, McGraw-Hill, 1993.
K. Hwang and Z. Xu, Scalable Parallel Computing, McGraw-Hill, 1998.
D. E. Lenoski and W.-D. Weber, Scalable Shared-Memory
Multiprocessing, Morgan Kaufmann, 1995.
G. F. Pfister, In Search of Clusters: The Ongoing Battle in Lowly
Parallel Computing, 2nd ed., Prentice Hall, 1998.
D. A. Reed and R. M. Fujimoto, Multicomputer Networks: Message-Based
Parallel Processing, MIT Press, 1987.
I. D. Scherson and A. S. Youssef, eds., Interconnection Networks for
High-Performance Parallel Computers, IEEE Computer Society Press, 1994
H. J. Siegel, Interconnection Networks for Large-Scale Parallel
Processing, D. C. Heath, 1985.
H. S. Stone, High-Performance Computer Architecture, 3rd ed.,
Addison-Wesley, 1993.
A. Varma and C. S. Raghavendra, Interconnection Networks for
Multiprocessors and Multicomputers: Theory and Practice,
IEEE Computer Society, 1994
Parallel Algorithms (theoretical)
S. G. Akl, The Design and Analysis of Parallel Algorithms,
Prentice Hall, 1989.
S. G. Akl, Parallel Computation: Models and Methods, Prentice
Hall, 1997.
K. A. Berman and J. L. Paul, Fundamentals of Sequential and Parallel
Algorithms, PWS Publishing, 1997.
P. Chaudhuri, Parallel Algorithms: Design and Analysis, Prentice
Hall, 1992.
A. Gibbons and W. Rytter, Efficient Parallel Algorithms, Cambridge
University Press, 1988.
A. Gibbons and P. Spirakis, eds., Lectures on Parallel Computation,
Cambridge University Press, 1993.
R. Greenlaw, H. J. Hoover, and W. L. Ruzzo, Limits to Parallel
Computation: P-Completeness Theory, Oxford University Press, 1995.
J. JaJa, An Introduction to Parallel Algorithms, Addison-Wesley, 1992.
L. H. Jamieson, D. B. Gannon, and R. J. Douglass, eds., The
Characteristics of Parallel Algorithms, MIT Press, 1987.
J. Reif, ed., Synthesis of Parallel Algorithms, Morgan Kaufmann, 1993.
J. R. Smith, The Design and Analysis of Parallel Algorithms,
Oxford University Press, 1993.
C. Xavier and S. S. Iyengar, Introduction to Parallel Algorithms,
John Wiley & Sons, 1998.
Parallel Algorithms (practical)
H. Casanova, A. Legrand, and Y. Robert, Parallel Algorithms,
CRC Press, 2009.
M. Cosnard and D. Trystram, Parallel Algorithms and Architectures,
International Thomson, 1995.
A. Grama, A. Gupta, G. Karypis, and V. Kumar, Introduction to Parallel
Computing, 2nd ed., Addison-Wesley, 2003.
S. Lakshmivarahan and S. K. Dhall, Analysis and Design of Parallel
Algorithms: Arithmetic and Matrix Problems, McGraw-Hill, 1990.
F. T. Leighton, Introduction to Parallel Algorithms and Architectures:
Arrays, Trees, Hypercubes, Morgan Kaufmann, 1992.
R. Miller and Q. F. Stout, Parallel Algorithms for Regular
Architectures: Meshes and Pyramids, MIT Press, 1996.
B. Parhami, Introduction to Parallel Processing: Algorithms and
Architectures, Plenum, 1999.
M. J. Quinn, Designing Efficient Algorithms for Parallel Computers,
McGraw-Hill, 1987.
S. Ranka and S. Sahni, Hypercube Algorithms, Springer, 1990.
Parallel Numerical Algorithms and Applications
D. Bader, ed., Petascale Computing: Algorithms and Applications,
Chapman & Hall/CRC, 2007.
J. M. Bahi, S. Contassot-Vivier, and R. Couturier, Parallel Iterative
Algorithms, Chapman & Hall/CRC, 2007.
D. P. Bertsekas and J. N. Tsitsiklis, Parallel and Distributed
Computation: Numerical Methods, Prentice Hall, 1989.
R. H. Bisseling, Parallel Scientific Computation: A Structured Approach
using BSP and MPI, Oxford University Press, 2004.
A. M. Bruaset and A. Tveito, eds., Numerical Solution of Partial
Differential Equations on Parallel Computers, Springer, 2006.
K. Burrage, Parallel and Sequential Methods for Ordinary Differential
Equations, Oxford University Press, 1995.
G. F. Carey, ed.,
Parallel Supercomputing: Methods, Algorithms and Applications,
John Wiley & Sons, 1989.
Y. Censor and S. A. Zenios, Parallel Optimization: Theory, Algorithms,
and Applications, Oxford University Press, 1997.
E. Chu and A. George, Inside the FFT Black Box: Serial and Parallel
Fast Fourier Transform Algorithms, CRC Press, 1999.
C. C. Douglas, G. Haase, and U. Langer, A Tutorial on Elliptic PDE
Solvers and Their Parallelization, SIAM, 2003.
L. D. Fosdick, E. R. Jessup, C. J. C. Schauble, and G. Domik, An
Introduction to High-Performance Scientific Computing, MIT Press, 1996.
G. C. Fox, M. A. Johnson, G. A. Lyzenga, S. W. Otto, J. K. Salmon,
and D. W. Walker, Solving Problems on Concurrent Processors,
Prentice Hall, 1988.
G. C. Fox, R. D. Williams, and P. C. Messina, Parallel Computing
Works!, Morgan Kaufmann, 1994.
Available online
T. L. Freeman and C. Phillips, Parallel Numerical Algorithms,
Prentice Hall, 1992.
G. Golub and J. M. Ortega, Scientific Computing: An Introduction with
Parallel Computing, Academic Press, 1993.
G. E. Karniadakis and R. M. Kirby, Parallel Scientific Computing in
C++ and MPI, Cambridge University Press, 2003.
D. E. Keyes, A. Sameh, and V. Venkatakrishnan, eds., Parallel Numerical
Algorithms, Kluwer, 1997.
A. E. Koniges, ed. Industrial Strength Parallel Computing,
Morgan Kaufmann, 2000.
E. J. Kontoghiorghes,
Parallel Algorithms for Linear Models: Numerical Methods and Estimation
Problems, Kluwer, 2000.
E. J. Kontoghiorghes, editor, Handbook of Parallel Computing and
Statistics Chapman & Hall/CRC, 2006.
J. M. Ortega and R. G. Voigt, Solution of Partial Differential
Equations on Vector and Parallel Computers, SIAM, 1985.
W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery,
Numerical Recipes in Fortran 90, Cambridge University Press, 1996.
A. Quarteroni and A. Valli, Domain Decomposition Methods for Partial
Differential Equations, Oxford University Press, 1999.
U. Schendel, Introduction to Numerical Methods for Parallel
Computers, John Wiley & Sons, 1984.
L. R. Scott, T. W. Clark, and B. Bagheri, Scientific Parallel
Computing, Princeton University Press, 2005.
R. W. Shonkwiler and L. Lefton, An Introduction to Parallel and Vector
Scientific Computing, Cambridge University Press, 2006.
B. F. Smith, P. E. Bjorstad, and W. D. Gropp, Domain Decomposition:
Parallel Multilevel Methods for Elliptic Partial Differential
Equations, Cambridge University Press, 1996.
E. F. Van de Velde, Concurrent Scientific Computing, Springer, 1994.
R. E. White, Computational Mathematics: Models, Methods, and Analysis
with MATLAB and MPI, Chapman & Hall, 2004.
Parallel Matrix Computations
P. Arbenz, M. Paprzycki, A. H. Sameh, and V. Sarin, eds., High
Performance Algorithms for Structured Matrix Problems, Nova Science
Publishers, 1999.
J. W. Demmel, M. T. Heath, and H. A. van der Vorst, “Parallel
Numerical Linear Algebra,” Acta Numerica, 2 (1993), pp. 111-197.
Available online
J. J. Dongarra, I. S. Duff, D. C. Sorenson, and H. A. van der Vorst,
Numerical Linear Algebra for High-Performance Computers, SIAM, 1998.
K. A. Gallivan, M. T. Heath, E. Ng, J. M. Ortega, B. W. Peyton,
R. J. Plemmons, C. H. Romine, A. H. Sameh, and R. G. Voigt, Parallel
Algorithms for Matrix Computations, SIAM, 1990.
G. H. Golub and C. F. Van Loan, Matrix Computations, 4th ed.,
Johns Hopkins University Press, 2013.
J. J. Modi, Parallel Algorithms and Matrix Computation, Oxford
University Press, 1988.
C. Murthy, K. Murthy, and S. Aluru, New Parallel Algorithms for Direct
Solution of Linear Equations, John Wiley & Sons, 2001.
J. M. Ortega, Introduction to Parallel and Vector Solution of Linear
Systems, Plenum Press, 1988.
Y. Robert, The Impact of Vector and Parallel Architectures on the
Gaussian Elimination Algorithm, John Wiley & Sons, 1990.